"Francois Gouget" fgouget@free.fr wrote:
Wine cannot use Unicode strings literals. When you write L"YES" this is a 32bit Unicode string, not a 16bit unicode string. This means that when you pass it to lstrcmpiW, which expects 16bit Unicode strings like all the APIs in Wine, what it sees is this: "Y\0E\0S\0\0\0". And this is obviously different from "YES".
I guess it pays to check the warnings form time to time!
Sure. Why not to change L'\0' to a simple 0 in your patch then?
@@ -447,10 +451,10 @@ switch (type) { case REG_SZ: data[9] = L'\0'; /* set end of string */ ^^^^^^^^^^^^^^^
-- Dmitry.