View Issue Details

IDProjectCategoryView StatusLast Update
0006329F3SF3Spublic2024-07-22 15:50
Reporterzutter Assigned To 
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product VersionV2.11 
Target VersionV2.19Fixed in VersionV2.19 
Summary0006329: Trouble while use characters from extended ASCII table for file names
DescriptionTrouble while use characters from extended ASCII table for file names
Additional Information"toupper" is used for calculate the file hash.

WEC2013
"toupper" does not work when it is called very early in boot process.
Impact, you can create and work a file "ä" for example, but you can never access it after reboot (hash table entry is calculated with "ä", search hash is calculated with "Ä").

WCE6/WEC7
"toupper" does not work at all ascii characters > 0x7F.
Impact, you can create files "Ä" and "ä" for example at the same time.

Use following instaed ot "toupper":
inline UINT AsciiExCharToUpper(UINT u)
{
    BYTE distance = 0;
    BYTE* pBytes = (BYTE*)&u;

    if (pBytes[0] >= 97 && pBytes[0] <= 122)
    {
        distance = 32;
    }
    else if (pBytes[0] >= 224 && pBytes[0] <= 254)
    {
        distance = 32;
    }
    else if (pBytes[0] == 154 || pBytes[0] == 156 || pBytes[0] == 158)
    {
        distance = 16;
    }

    return pBytes[0] - distance;
}

Activities

There are no notes attached to this issue.