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");
}
On Monday 31 July 2006 13:20, Jeff Latimer wrote:
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?
Hmm, this just a guess, but I see you're running the first test (test_ScriptItemIzeShapePlace) with an HDC that is different from the one you use in the second test (test_ScriptGetCMap) and expect some results to match.
I'm not sure Windows guarantees this since the script properties in the cache are tied to a particular HDC. Maybe you could reuse the HDC from the first test and see what gives?
-Hans
Good call Hans :-D , I made the the HDC global and it seems to work in both windows and wine now. Will format a patch for this one.
Jeff
Hans Leidekker wrote:
On Monday 31 July 2006 13:20, Jeff Latimer wrote:
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?
Maybe you could reuse the HDC from the first test and see what gives?
-Hans