Crystal Space 2.0.0: C.4.5 csString::Upcase() and Downcase() Behaviour Change

[ < ] | [ > ] |  | [ << ] | [ Up ] | [ >> ] |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

### C.4.5 `csString::Upcase()` and `Downcase()` Behaviour Change

`csString::Upcase()` and `Downcase()` used to utilize the C runtime casing functions (`toupper()`, `tolower()`) to perform the casing. This has been changed to use Crystal Space's own casing functions (`csUnicodeTransform::MapToLower()`, `MapToUpper()`). This has two effects:

- The data is expected to be encoded in UTF-8 and not a character set depending on the C runtime's current locale. This is more in line with other `csString` functions and consistent across systems.
- The C runtime's current locale is not taken into consideration when doing the casing. This was desired as the casing methods are used in a number of scenarios that really required locale neutrality; however, if proper locale support is required, some other casing functions have to be used.

This document was generated using texi2html 1.76.