On 23 Nov 2016, at 12:46, Dmitry Timoshkov <dmitry(a)baikal.ru> wrote:
Huw Davies <huw(a)codeweavers.com> wrote:
+ SendMessageW(hwnd, WM_GETTEXT, sizeof(buf) / sizeof(buf[0]), (LPARAM)buf); + if (IsWindowUnicode(hwnd)) + ok(memcmp(buf, unistring, sizeof(unistring)) == 0, "WM_GETTEXT invalid return\n"); + else + ok(memcmp(buf, unistring, sizeof(unistring)) != 0, "WM_GETTEXT invalid return\n");
This doesn't look right. SendMessageW(WM_GETTEXT) is supposed to always return a unicode string regardless of wheather IsWindowUnicode() is broken or not, otherwise a lot of applications would misbehave in weird ways. This needs further investigation.
Exactly, the reason I added that bit was to show that this behaviour is truly broken. Huw.