winmm/tests: Fix test failure in multi-byte locale.

Joerg-Cyril.Hoehle at Joerg-Cyril.Hoehle at
Thu Nov 11 11:01:03 CST 2010


this fixes 2 failures.

The surprise was
>Producing non-ASCII multi-byte output, native forgets to zero-terminate a too small buffer
>with SendStringA, while SendStringW works correctly (jap. and chin. locale).
More precisely, when writing mixed ASCII + hiragana into a too short buffer,
the ASCII part will be 0-terminated, but not the hiragana multi-byte characters
with mciSendString(/A).
This fixes wtb-wxprojasp3

Fixing this lead to a surprising discovery: Vista64, w2k8-64, w7-64
map mcisendString to mciSendStringW, at least as far
as MCI_INFO INFO_PRODUCT is concerned, when given a 64 bit exe!
wxp 64 and w2k3-64 are not affected. This is clearly visible in
testbot job #6987, although it took me several hours to realize it :-(
Using a 32 bit .exe does not exhibit this bug either.

Another failure occurred on wine systems without sound.

Testbot job #6988 currently reruns the patch on a variety of machines.

 Jörg Höhle
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-winmm-tests-Fix-test-failure-in-multi-byte-locale.patch
Type: application/octet-stream
Size: 2471 bytes
Desc: 0001-winmm-tests-Fix-test-failure-in-multi-byte-locale.patch
URL: <>

More information about the wine-patches mailing list