usp10/tests: Fix some test failures on Vista and W2K8 (ScriptPlace).
diff --git a/dlls/usp10/tests/usp10.c b/dlls/usp10/tests/usp10.c
index 6c33b0f..d485fc8 100644
--- a/dlls/usp10/tests/usp10.c
+++ b/dlls/usp10/tests/usp10.c
@@ -44,6 +44,8 @@
     SCRIPT_VISATTR attrs[4];
     SCRIPT_ITEM items[2];
     int nb, widths[4];
+    GOFFSET offset[4];
+    ABC abc[4];
 
     hr = ScriptItemize(NULL, 4, 2, NULL, NULL, items, NULL);
     ok(hr == E_INVALIDARG, "ScriptItemize should return E_INVALIDARG not %08x\n", hr);
@@ -81,9 +83,19 @@
     ok(hr == E_INVALIDARG, "ScriptPlace should return E_INVALIDARG not %08x\n", hr);
 
     hr = ScriptPlace(NULL, &sc, glyphs, 4, attrs, &items[0].a, widths, NULL, NULL);
+    ok(hr == E_PENDING ||
+       hr == E_INVALIDARG, /* Vista, W2K8 */
+       "ScriptPlace should return E_PENDING or E_INVALIDARG, not %08x\n", hr);
+
+    hr = ScriptPlace(NULL, &sc, glyphs, 4, attrs, &items[0].a, widths, offset, NULL);
     ok(hr == E_PENDING, "ScriptPlace should return E_PENDING not %08x\n", hr);
 
-    hr = ScriptPlace(hdc, &sc, glyphs, 4, attrs, &items[0].a, widths, NULL, NULL);
+    hr = ScriptPlace(NULL, &sc, glyphs, 4, attrs, &items[0].a, widths, NULL, abc);
+    ok(hr == E_PENDING ||
+       hr == E_INVALIDARG, /* Vista, W2K8 */
+       "ScriptPlace should return E_PENDING or E_INVALIDARG, not %08x\n", hr);
+
+    hr = ScriptPlace(hdc, &sc, glyphs, 4, attrs, &items[0].a, widths, offset, NULL);
     ok(!hr, "ScriptPlace should return S_OK not %08x\n", hr);
     ok(items[0].a.fNoGlyphIndex == FALSE, "fNoGlyphIndex TRUE\n");