[Bug 9583] CompareStringW gives incorrect result for some wide strings

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Sep 6 07:13:23 CDT 2007


http://bugs.winehq.org/show_bug.cgi?id=9583





--- Comment #12 from Peter Åstrand <peter at cendio.se>  2007-09-06 07:13:22 ---
Ok, I've extend the test program now, to call LCMapStringW for each character.
Updated source and binary in the usual location. I've also tried running it
both under Wine and Windows, bith both US and Swedish locale. Here's the
result:

Windows
-------

locale is 0x409
CompareStringW: string1 is less
lstrcmpW: string1 is less
LCMapStringW result: 16
0xe 0x2 0xe 0x7e 0xe 0x7e 0xe 0x48 0xe 0x21 0x1 0x13 0x1 0x1 0x1 0x0

char: 0xe4, sortkeys: 0xe 0x2 0x1 0x13 0x1 0x1 0x1 0x0
char: 0x70, sortkeys: 0xe 0x7e 0x1 0x1 0x1 0x1 0x0
char: 0x70, sortkeys: 0xe 0x7e 0x1 0x1 0x1 0x1 0x0
char: 0x6c, sortkeys: 0xe 0x48 0x1 0x1 0x1 0x1 0x0
char: 0x65, sortkeys: 0xe 0x21 0x1 0x1 0x1 0x1 0x0
char: 0x0, sortkeys: 0x1 0x1 0x1 0x1 0x0


locale is 0x41d
CompareStringW: string1 is greater
lstrcmpW: string1 is greater
LCMapStringW result: 15
0xe 0xaf 0xe 0x7e 0xe 0x7e 0xe 0x48 0xe 0x21 0x1 0x1 0x1 0x1 0x0

char: 0xe4, sortkeys: 0xe 0xaf 0x1 0x1 0x1 0x1 0x0
char: 0x70, sortkeys: 0xe 0x7e 0x1 0x1 0x1 0x1 0x0
char: 0x70, sortkeys: 0xe 0x7e 0x1 0x1 0x1 0x1 0x0
char: 0x6c, sortkeys: 0xe 0x48 0x1 0x1 0x1 0x1 0x0
char: 0x65, sortkeys: 0xe 0x21 0x1 0x1 0x1 0x1 0x0
char: 0x0, sortkeys: 0x1 0x1 0x1 0x1 0x0


Wine
----

locale is 0x409
CompareStringW: string1 is less
lstrcmpW: string1 is less
LCMapStringW result: 29
0xa 0x15 0xb 0x67 0xb 0x67 0xb 0x3 0xa 0x65 0x1 0x2 0x2 0x2 0x2 0x2 0x1 0x2 0x2
0x2 0x2 0x2 0x1 0xe4 0x70 0x70 0x6c 0x65 0x1

char: 0xe4, sortkeys: 0xa 0x15 0x1 0x2 0x1 0x2 0x1 0xe4 0x1
char: 0x70, sortkeys: 0xb 0x67 0x1 0x2 0x1 0x2 0x1 0x70 0x1
char: 0x70, sortkeys: 0xb 0x67 0x1 0x2 0x1 0x2 0x1 0x70 0x1
char: 0x6c, sortkeys: 0xb 0x3 0x1 0x2 0x1 0x2 0x1 0x6c 0x1
char: 0x65, sortkeys: 0xa 0x65 0x1 0x2 0x1 0x2 0x1 0x65 0x1
char: 0x0, sortkeys: 0x1 0x1 0x1 0x1


locale is 0x41d
CompareStringW: string1 is less
lstrcmpW: string1 is less
LCMapStringW result: 29
0xa 0x15 0xb 0x67 0xb 0x67 0xb 0x3 0xa 0x65 0x1 0x2 0x2 0x2 0x2 0x2 0x1 0x2 0x2
0x2 0x2 0x2 0x1 0xe4 0x70 0x70 0x6c 0x65 0x1

char: 0xe4, sortkeys: 0xa 0x15 0x1 0x2 0x1 0x2 0x1 0xe4 0x1
char: 0x70, sortkeys: 0xb 0x67 0x1 0x2 0x1 0x2 0x1 0x70 0x1
char: 0x70, sortkeys: 0xb 0x67 0x1 0x2 0x1 0x2 0x1 0x70 0x1
char: 0x6c, sortkeys: 0xb 0x3 0x1 0x2 0x1 0x2 0x1 0x6c 0x1
char: 0x65, sortkeys: 0xa 0x65 0x1 0x2 0x1 0x2 0x1 0x65 0x1
char: 0x0, sortkeys: 0x1 0x1 0x1 0x1


-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.


More information about the wine-bugs mailing list