Hans, the test does fail on windows but that is becuase it is checking gylphs that are different between the windows and wine (ie. while the unicode is the same the gylphs are different). I don't know how to overcome that issue. What is it is supposed to do is check that there is a consistent translation between unicode and glyphs. It works 19 times out of 20 on my 32 bit system. Obviously there is an inconsisency. Is there any advice on how to achieve the aim of the test?
Jeff
Hans Leidekker wrote:
This test fails on Alexandre's system and also fails on my Windows XP system, so I propose to remove it.
-Hans
Changelog Remove a test that fails on Windows.
001e954162666f1e4de46326c94c7ee357157793 diff --git a/dlls/usp10/tests/usp10.c b/dlls/usp10/tests/usp10.c index 2a3d9c4..14ed56c 100644 --- a/dlls/usp10/tests/usp10.c +++ b/dlls/usp10/tests/usp10.c @@ -222,7 +222,6 @@ void test_ScriptGetCMap(unsigned short p unsigned short pwOutGlyphs3[256]; WCHAR TestItem1[6] = {'T', 'e', 's', 't', 'a', 0}; DWORD dwFlags;
int cnt;
/* We need a valid HDC to drive a lot of Script functions which requires the following *
- to set up for the tests. */
@@ -269,10 +268,7 @@ void test_ScriptGetCMap(unsigned short p hr = ScriptGetCMap(hdc, &psc, TestItem1, cInChars, dwFlags, pwOutGlyphs3); ok (hr == 0, "ScriptGetCMap should return 0 not (%08x)\n", (unsigned int) hr); ok (psc != NULL, "psc should not be null and have SCRIPT_CACHE buffer address\n");
- for (cnt=0; cnt < cChars && pwOutGlyphs[cnt] == pwOutGlyphs3[cnt]; cnt++) {}
- ok (cnt == cInChars, "Translation not correct. WCHAR %d - %04x != %04x\n",
cnt, pwOutGlyphs[cnt], pwOutGlyphs3[cnt]);
- hr = ScriptFreeCache( &psc); ok (!psc, "psc is not null after ScriptFreeCache\n");
}