From: Rémi Bernon rbernon@codeweavers.com
--- dlls/imm32/imm.c | 2 +- dlls/imm32/tests/imm32.c | 2 +- dlls/user32/user_main.c | 2 +- dlls/win32u/imm.c | 2 +- dlls/win32u/message.c | 2 +- dlls/winemac.drv/ime.c | 2 +- dlls/winex11.drv/ime.c | 2 +- include/Makefile.in | 2 +- include/{ddk/imm.h => immdev.h} | 21 +++++++++++++-------- 9 files changed, 21 insertions(+), 16 deletions(-) rename include/{ddk/imm.h => immdev.h} (95%)
diff --git a/dlls/imm32/imm.c b/dlls/imm32/imm.c index 17061ae0034..d7af6d79736 100644 --- a/dlls/imm32/imm.c +++ b/dlls/imm32/imm.c @@ -33,7 +33,7 @@ #include "winerror.h" #include "wine/debug.h" #include "imm.h" -#include "ddk/imm.h" +#include "immdev.h" #include "winnls.h" #include "winreg.h" #include "wine/list.h" diff --git a/dlls/imm32/tests/imm32.c b/dlls/imm32/tests/imm32.c index 496dc284fbc..e6d51a1329e 100644 --- a/dlls/imm32/tests/imm32.c +++ b/dlls/imm32/tests/imm32.c @@ -25,7 +25,7 @@ #include "winuser.h" #include "wingdi.h" #include "imm.h" -#include "ddk/imm.h" +#include "immdev.h"
BOOL WINAPI ImmSetActiveContext(HWND, HIMC, BOOL);
diff --git a/dlls/user32/user_main.c b/dlls/user32/user_main.c index 0ddbd710b6b..56d5849f469 100644 --- a/dlls/user32/user_main.c +++ b/dlls/user32/user_main.c @@ -21,7 +21,7 @@ #include "user_private.h" #include "controls.h" #include "imm.h" -#include "ddk/imm.h" +#include "immdev.h" #include "wine/debug.h"
diff --git a/dlls/win32u/imm.c b/dlls/win32u/imm.c index 513f116f80f..1ccc09c97b2 100644 --- a/dlls/win32u/imm.c +++ b/dlls/win32u/imm.c @@ -27,7 +27,7 @@ #include <pthread.h> #include "win32u_private.h" #include "ntuser_private.h" -#include "ddk/imm.h" +#include "immdev.h" #include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(imm); diff --git a/dlls/win32u/message.c b/dlls/win32u/message.c index 2c320377e34..ed4198991cf 100644 --- a/dlls/win32u/message.c +++ b/dlls/win32u/message.c @@ -33,7 +33,7 @@ #include "hidusage.h" #include "dbt.h" #include "dde.h" -#include "ddk/imm.h" +#include "immdev.h" #include "wine/server.h" #include "wine/debug.h"
diff --git a/dlls/winemac.drv/ime.c b/dlls/winemac.drv/ime.c index 19a974b3c24..ee9db0ca396 100644 --- a/dlls/winemac.drv/ime.c +++ b/dlls/winemac.drv/ime.c @@ -36,7 +36,7 @@
#include "macdrv_dll.h" #include "imm.h" -#include "ddk/imm.h" +#include "immdev.h" #include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(imm); diff --git a/dlls/winex11.drv/ime.c b/dlls/winex11.drv/ime.c index 0599159646f..7fe1e0a0b1e 100644 --- a/dlls/winex11.drv/ime.c +++ b/dlls/winex11.drv/ime.c @@ -43,7 +43,7 @@ #include "x11drv_dll.h" #include "wine/debug.h" #include "imm.h" -#include "ddk/imm.h" +#include "immdev.h"
WINE_DEFAULT_DEBUG_CHANNEL(imm);
diff --git a/include/Makefile.in b/include/Makefile.in index 963fe1a2858..49b5f7c4b01 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -195,7 +195,6 @@ SOURCES = \ ddk/hidport.h \ ddk/hidsdi.h \ ddk/hidtypes.h \ - ddk/imm.h \ ddk/mountmgr.h \ ddk/ndis.h \ ddk/ntddcdvd.h \ @@ -359,6 +358,7 @@ SOURCES = \ imagehlp.h \ ime.h \ imm.h \ + immdev.h \ imnact.idl \ imnxport.idl \ in6addr.h \ diff --git a/include/ddk/imm.h b/include/immdev.h similarity index 95% rename from include/ddk/imm.h rename to include/immdev.h index bbbd70a596f..994bb44d74f 100644 --- a/include/ddk/imm.h +++ b/include/immdev.h @@ -16,14 +16,15 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
-#ifndef _DDKIMM_H_ -#define _DDKIMM_H_ +#ifndef __WINE_IMMDEV_H +#define __WINE_IMMDEV_H
#ifdef __cplusplus extern "C" { #endif
-typedef struct _tagINPUTCONTEXT { +typedef struct tagINPUTCONTEXT +{ HWND hWnd; BOOL fOpen; POINT ptStatusWndPos; @@ -46,7 +47,8 @@ typedef struct _tagINPUTCONTEXT { DWORD dwReserve[3]; } INPUTCONTEXT, *LPINPUTCONTEXT;
-typedef struct _tagIMEINFO { +typedef struct tagIMEINFO +{ DWORD dwPrivateDataSize; DWORD fdwProperty; DWORD fdwConversionCaps; @@ -56,7 +58,8 @@ typedef struct _tagIMEINFO { DWORD fdwSelectCaps; } IMEINFO, *LPIMEINFO;
-typedef struct tagCOMPOSITIONSTRING { +typedef struct tagCOMPOSITIONSTRING +{ DWORD dwSize; DWORD dwCompReadAttrLen; DWORD dwCompReadAttrOffset; @@ -84,7 +87,8 @@ typedef struct tagCOMPOSITIONSTRING { DWORD dwPrivateOffset; } COMPOSITIONSTRING, *LPCOMPOSITIONSTRING;
-typedef struct tagGUIDELINE { +typedef struct tagGUIDELINE +{ DWORD dwSize; DWORD dwLevel; DWORD dwIndex; @@ -94,7 +98,8 @@ typedef struct tagGUIDELINE { DWORD dwPrivateOffset; } GUIDELINE, *LPGUIDELINE;
-typedef struct tagCANDIDATEINFO { +typedef struct tagCANDIDATEINFO +{ DWORD dwSize; DWORD dwCount; DWORD dwOffset[32]; @@ -170,4 +175,4 @@ DWORD WINAPI ImeGetImeMenuItems(HIMC, DWORD, DWORD, LPIMEMENUITEMINFOW, LPIMEMEN } /* extern "C" */ #endif
-#endif /* _DDKIMM_H_ */ +#endif /* __WINE_IMMDEV_H */
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/imm32/imm.c | 4 ++-- dlls/winemac.drv/ime.c | 2 +- dlls/winex11.drv/ime.c | 3 +-- include/immdev.h | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/dlls/imm32/imm.c b/dlls/imm32/imm.c index d7af6d79736..c4c495e86a5 100644 --- a/dlls/imm32/imm.c +++ b/dlls/imm32/imm.c @@ -62,7 +62,7 @@ typedef struct _tagImmHkl{ HWND UIWnd;
/* Function Pointers */ - BOOL (WINAPI *pImeInquire)(IMEINFO *, WCHAR *, const WCHAR *); + BOOL (WINAPI *pImeInquire)(IMEINFO *, WCHAR *, DWORD); BOOL (WINAPI *pImeConfigure)(HKL, HWND, DWORD, void *); BOOL (WINAPI *pImeDestroy)(UINT); LRESULT (WINAPI *pImeEscape)(HIMC, UINT, void *); @@ -508,7 +508,7 @@ static ImmHkl *IMM_GetImmHkl(HKL hkl) if (ptr->hIME) { LOAD_FUNCPTR(ImeInquire); - if (!ptr->pImeInquire || !ptr->pImeInquire(&ptr->imeInfo, ptr->imeClassName, NULL)) + if (!ptr->pImeInquire || !ptr->pImeInquire(&ptr->imeInfo, ptr->imeClassName, 0)) { FreeLibrary(ptr->hIME); ptr->hIME = NULL; diff --git a/dlls/winemac.drv/ime.c b/dlls/winemac.drv/ime.c index ee9db0ca396..7c0495a6fd5 100644 --- a/dlls/winemac.drv/ime.c +++ b/dlls/winemac.drv/ime.c @@ -1367,7 +1367,7 @@ static BOOL WINAPI register_classes( INIT_ONCE *once, void *param, void **contex return TRUE; }
-BOOL WINAPI ImeInquire(LPIMEINFO lpIMEInfo, LPWSTR lpszUIClass, LPCWSTR lpszOption) +BOOL WINAPI ImeInquire(LPIMEINFO lpIMEInfo, LPWSTR lpszUIClass, DWORD flags) { static INIT_ONCE init_once = INIT_ONCE_STATIC_INIT;
diff --git a/dlls/winex11.drv/ime.c b/dlls/winex11.drv/ime.c index 7fe1e0a0b1e..ef498760a60 100644 --- a/dlls/winex11.drv/ime.c +++ b/dlls/winex11.drv/ime.c @@ -511,8 +511,7 @@ static void IME_AddToSelected(HIMC hIMC) hSelectedFrom[hSelectedCount-1] = hIMC; }
-BOOL WINAPI ImeInquire(LPIMEINFO lpIMEInfo, LPWSTR lpszUIClass, - LPCWSTR lpszOption) +BOOL WINAPI ImeInquire(LPIMEINFO lpIMEInfo, LPWSTR lpszUIClass, DWORD flags) { static INIT_ONCE init_once = INIT_ONCE_STATIC_INIT;
diff --git a/include/immdev.h b/include/immdev.h index 994bb44d74f..eb6591d1e74 100644 --- a/include/immdev.h +++ b/include/immdev.h @@ -154,7 +154,7 @@ HWND WINAPI ImmCreateSoftKeyboard(UINT, UINT, int, int); BOOL WINAPI ImmDestroySoftKeyboard(HWND); BOOL WINAPI ImmShowSoftKeyboard(HWND, int);
-BOOL WINAPI ImeInquire(LPIMEINFO, LPWSTR, LPCWSTR lpszOptions); +BOOL WINAPI ImeInquire(LPIMEINFO, LPWSTR, DWORD); BOOL WINAPI ImeConfigure (HKL, HWND, DWORD, LPVOID); DWORD WINAPI ImeConversionList(HIMC, LPCWSTR, LPCANDIDATELIST,DWORD,UINT); BOOL WINAPI ImeDestroy(UINT);
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/imm32/imm.c | 14 ++++---------- dlls/imm32/tests/imm32.c | 6 ------ dlls/winemac.drv/ime.c | 14 ++++---------- dlls/winex11.drv/ime.c | 8 +------- include/immdev.h | 15 ++++++++++++++- 5 files changed, 23 insertions(+), 34 deletions(-)
diff --git a/dlls/imm32/imm.c b/dlls/imm32/imm.c index c4c495e86a5..57d00dd4984 100644 --- a/dlls/imm32/imm.c +++ b/dlls/imm32/imm.c @@ -68,7 +68,7 @@ typedef struct _tagImmHkl{ LRESULT (WINAPI *pImeEscape)(HIMC, UINT, void *); BOOL (WINAPI *pImeSelect)(HIMC, BOOL); BOOL (WINAPI *pImeSetActiveContext)(HIMC, BOOL); - UINT (WINAPI *pImeToAsciiEx)(UINT, UINT, const BYTE *, DWORD *, UINT, HIMC); + UINT (WINAPI *pImeToAsciiEx)(UINT, UINT, const BYTE *, TRANSMSGLIST *, UINT, HIMC); BOOL (WINAPI *pNotifyIME)(HIMC, DWORD, DWORD, DWORD); BOOL (WINAPI *pImeRegisterWord)(const WCHAR *, DWORD, const WCHAR *); BOOL (WINAPI *pImeUnregisterWord)(const WCHAR *, DWORD, const WCHAR *); @@ -97,12 +97,6 @@ typedef struct tagInputContextData
#define WINE_IMC_VALID_MAGIC 0x56434D49
-typedef struct _tagTRANSMSG { - UINT message; - WPARAM wParam; - LPARAM lParam; -} TRANSMSG, *LPTRANSMSG; - struct coinit_spy { IInitializeSpy IInitializeSpy_iface; @@ -3004,7 +2998,7 @@ BOOL WINAPI ImmTranslateMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lKeyD HIMC imc = ImmGetContext(hwnd); BYTE state[256]; UINT scancode; - LPVOID list = 0; + TRANSMSGLIST *list = NULL; UINT msg_count; UINT uVirtKey; static const DWORD list_count = 10; @@ -3020,7 +3014,7 @@ BOOL WINAPI ImmTranslateMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lKeyD scancode = lKeyData >> 0x10 & 0xff;
list = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, list_count * sizeof(TRANSMSG) + sizeof(DWORD)); - ((DWORD*)list)[0] = list_count; + list->uMsgCount = list_count;
if (data->immKbd->imeInfo.fdwProperty & IME_PROP_KBD_CHAR_FIRST) { @@ -3040,7 +3034,7 @@ BOOL WINAPI ImmTranslateMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lKeyD if (msg_count && msg_count <= list_count) { UINT i; - LPTRANSMSG msgs = (LPTRANSMSG)((LPBYTE)list + sizeof(DWORD)); + LPTRANSMSG msgs = list->TransMsg;
for (i = 0; i < msg_count; i++) ImmInternalPostIMEMessage(data, msgs[i].message, msgs[i].wParam, msgs[i].lParam); diff --git a/dlls/imm32/tests/imm32.c b/dlls/imm32/tests/imm32.c index e6d51a1329e..a97457320ce 100644 --- a/dlls/imm32/tests/imm32.c +++ b/dlls/imm32/tests/imm32.c @@ -93,12 +93,6 @@ typedef struct } u; } TEST_INPUT;
-typedef struct _tagTRANSMSG { - UINT message; - WPARAM wParam; - LPARAM lParam; -} TRANSMSG, *LPTRANSMSG; - static UINT (WINAPI *pSendInput) (UINT, INPUT*, size_t);
static LRESULT CALLBACK get_msg_filter(int nCode, WPARAM wParam, LPARAM lParam) diff --git a/dlls/winemac.drv/ime.c b/dlls/winemac.drv/ime.c index 7c0495a6fd5..5780c942283 100644 --- a/dlls/winemac.drv/ime.c +++ b/dlls/winemac.drv/ime.c @@ -52,12 +52,6 @@ typedef struct _IMEPRIVATE { UINT repeat; } IMEPRIVATE, *LPIMEPRIVATE;
-typedef struct _tagTRANSMSG { - UINT message; - WPARAM wParam; - LPARAM lParam; -} TRANSMSG, *LPTRANSMSG; - static const WCHAR UI_CLASS_NAME[] = {'W','i','n','e',' ','M','a','c',' ','I','M','E',0};
static HIMC *hSelectedFrom = NULL; @@ -454,15 +448,15 @@ static void GenerateIMEMessage(HIMC hIMC, UINT msg, WPARAM wParam, LPARAM lParam UnlockRealIMC(hIMC); }
-static BOOL GenerateMessageToTransKey(LPDWORD lpTransBuf, UINT *uNumTranMsgs, +static BOOL GenerateMessageToTransKey(TRANSMSGLIST *lpTransBuf, UINT *uNumTranMsgs, UINT msg, WPARAM wParam, LPARAM lParam) { LPTRANSMSG ptr;
- if (*uNumTranMsgs + 1 >= (UINT)*lpTransBuf) + if (*uNumTranMsgs + 1 >= lpTransBuf->uMsgCount) return FALSE;
- ptr = (LPTRANSMSG)(lpTransBuf + 1 + *uNumTranMsgs * 3); + ptr = lpTransBuf->TransMsg + *uNumTranMsgs; ptr->message = msg; ptr->wParam = wParam; ptr->lParam = lParam; @@ -652,7 +646,7 @@ BOOL WINAPI ImeSetActiveContext(HIMC hIMC, BOOL fFlag) }
UINT WINAPI ImeToAsciiEx(UINT uVKey, UINT uScanCode, const LPBYTE lpbKeyState, - LPDWORD lpdwTransKey, UINT fuState, HIMC hIMC) + TRANSMSGLIST *lpdwTransKey, UINT fuState, HIMC hIMC) { struct process_text_input_params params; UINT vkey; diff --git a/dlls/winex11.drv/ime.c b/dlls/winex11.drv/ime.c index ef498760a60..a293daa6ad9 100644 --- a/dlls/winex11.drv/ime.c +++ b/dlls/winex11.drv/ime.c @@ -56,12 +56,6 @@ typedef struct _IMEPRIVATE { HWND hwndDefault; } IMEPRIVATE, *LPIMEPRIVATE;
-typedef struct _tagTRANSMSG { - UINT message; - WPARAM wParam; - LPARAM lParam; -} TRANSMSG, *LPTRANSMSG; - static const WCHAR UI_CLASS_NAME[] = {'W','i','n','e','X','1','1','I','M','E',0};
static HIMC *hSelectedFrom = NULL; @@ -618,7 +612,7 @@ BOOL WINAPI ImeSetActiveContext(HIMC hIMC,BOOL fFlag) }
UINT WINAPI ImeToAsciiEx (UINT uVKey, UINT uScanCode, const LPBYTE lpbKeyState, - LPDWORD lpdwTransKey, UINT fuState, HIMC hIMC) + TRANSMSGLIST *lpdwTransKey, UINT fuState, HIMC hIMC) { /* See the comment at the head of this file */ TRACE("We do no processing via this route\n"); diff --git a/include/immdev.h b/include/immdev.h index eb6591d1e74..350adf00a8b 100644 --- a/include/immdev.h +++ b/include/immdev.h @@ -107,6 +107,19 @@ typedef struct tagCANDIDATEINFO DWORD dwPrivateOffset; } CANDIDATEINFO, *LPCANDIDATEINFO;
+typedef struct tagTRANSMSG +{ + UINT message; + WPARAM wParam; + LPARAM lParam; +} TRANSMSG, *LPTRANSMSG; + +typedef struct tagTRANSMSGLIST +{ + UINT uMsgCount; + TRANSMSG TransMsg[1]; +} TRANSMSGLIST, *LPTRANSMSGLIST; + LPINPUTCONTEXT WINAPI ImmLockIMC(HIMC); BOOL WINAPI ImmUnlockIMC(HIMC); DWORD WINAPI ImmGetIMCLockCount(HIMC); @@ -162,7 +175,7 @@ LRESULT WINAPI ImeEscape(HIMC, UINT, LPVOID); BOOL WINAPI ImeProcessKey(HIMC, UINT, LPARAM, const LPBYTE); BOOL WINAPI ImeSelect(HIMC, BOOL); BOOL WINAPI ImeSetActiveContext(HIMC, BOOL); -UINT WINAPI ImeToAsciiEx(UINT, UINT, const LPBYTE, LPDWORD, UINT, HIMC); +UINT WINAPI ImeToAsciiEx(UINT, UINT, const LPBYTE, LPTRANSMSGLIST, UINT, HIMC); BOOL WINAPI NotifyIME(HIMC, DWORD, DWORD, DWORD); BOOL WINAPI ImeRegisterWord(LPCWSTR, DWORD, LPCWSTR); BOOL WINAPI ImeUnregisterWord(LPCWSTR, DWORD, LPCWSTR);
From: Rémi Bernon rbernon@codeweavers.com
--- dlls/imm32/imm.c | 2 +- include/immdev.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/dlls/imm32/imm.c b/dlls/imm32/imm.c index 57d00dd4984..3d9cbf7e198 100644 --- a/dlls/imm32/imm.c +++ b/dlls/imm32/imm.c @@ -3116,7 +3116,7 @@ BOOL WINAPI ImmEnumInputContext(DWORD idThread, IMCENUMPROC lpfn, LPARAM lParam) * ImmGetHotKey(IMM32.@) */
-BOOL WINAPI ImmGetHotKey(DWORD hotkey, UINT *modifiers, UINT *key, HKL hkl) +BOOL WINAPI ImmGetHotKey(DWORD hotkey, UINT *modifiers, UINT *key, HKL *hkl) { FIXME("%lx, %p, %p, %p: stub\n", hotkey, modifiers, key, hkl); return FALSE; diff --git a/include/immdev.h b/include/immdev.h index 350adf00a8b..92f2a47c167 100644 --- a/include/immdev.h +++ b/include/immdev.h @@ -158,6 +158,8 @@ DWORD WINAPI ImmGetIMCCSize(HIMCC); #define NI_SETCANDIDATE_PAGESIZE 0x0017 #define NI_IMEMENUSELECTED 0x0018
+BOOL WINAPI ImmGetHotKey(DWORD,UINT*,UINT*,HKL*); +BOOL WINAPI ImmSetHotKey(DWORD,UINT,UINT,HKL); BOOL WINAPI ImmGenerateMessage(HIMC); LRESULT WINAPI ImmRequestMessageA(HIMC, WPARAM, LPARAM); LRESULT WINAPI ImmRequestMessageW(HIMC, WPARAM, LPARAM);
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=129447
Your paranoid android.
=== debian11 (32 bit report) ===
d3d11: d3d11.c:25778: Test failed: Got 0, expected 33 (index 1). d3d11.c:25778: Test failed: Got 0, expected 66 (index 2). d3d11.c:25778: Test failed: Got 0, expected 99 (index 3). d3d11.c:25778: Test failed: Got 0, expected 132 (index 4). d3d11.c:25778: Test failed: Got 0, expected 165 (index 5). d3d11.c:25778: Test failed: Got 0, expected 198 (index 6). d3d11.c:25778: Test failed: Got 0, expected 231 (index 7). d3d11.c:25778: Test failed: Got 0, expected 264 (index 8). d3d11.c:25778: Test failed: Got 0, expected 297 (index 9). d3d11.c:25778: Test failed: Got 0, expected 330 (index 10). d3d11.c:25778: Test failed: Got 0, expected 363 (index 11). d3d11.c:25778: Test failed: Got 0, expected 396 (index 12). d3d11.c:25778: Test failed: Got 0, expected 429 (index 13). d3d11.c:25778: Test failed: Got 0, expected 462 (index 14). d3d11.c:25778: Test failed: Got 0, expected 495 (index 15). d3d11.c:25778: Test failed: Got 0, expected 528 (index 16). d3d11.c:25778: Test failed: Got 0, expected 561 (index 17). d3d11.c:25778: Test failed: Got 0, expected 594 (index 18). d3d11.c:25778: Test failed: Got 0, expected 627 (index 19). d3d11.c:25778: Test failed: Got 0, expected 660 (index 20). d3d11.c:25778: Test failed: Got 0, expected 693 (index 21). d3d11.c:25778: Test failed: Got 0, expected 726 (index 22). d3d11.c:25778: Test failed: Got 0, expected 759 (index 23). d3d11.c:25778: Test failed: Got 0, expected 792 (index 24). d3d11.c:25778: Test failed: Got 0, expected 825 (index 25). d3d11.c:25778: Test failed: Got 0, expected 858 (index 26). d3d11.c:25778: Test failed: Got 0, expected 891 (index 27). d3d11.c:25778: Test failed: Got 0, expected 924 (index 28). d3d11.c:25778: Test failed: Got 0, expected 957 (index 29). d3d11.c:25778: Test failed: Got 0, expected 990 (index 30). d3d11.c:25778: Test failed: Got 0, expected 1023 (index 31). d3d11.c:25778: Test failed: Got 0, expected 1056 (index 32). d3d11.c:25778: Test failed: Got 0, expected 1089 (index 33). d3d11.c:25778: Test failed: Got 0, expected 1122 (index 34). d3d11.c:25778: Test failed: Got 0, expected 1155 (index 35). d3d11.c:25778: Test failed: Got 0, expected 1188 (index 36). d3d11.c:25778: Test failed: Got 0, expected 1221 (index 37). d3d11.c:25778: Test failed: Got 0, expected 1254 (index 38). d3d11.c:25778: Test failed: Got 0, expected 1287 (index 39). d3d11.c:25778: Test failed: Got 0, expected 1320 (index 40). d3d11.c:25778: Test failed: Got 0, expected 1353 (index 41). d3d11.c:25778: Test failed: Got 0, expected 1386 (index 42). d3d11.c:25778: Test failed: Got 0, expected 1419 (index 43). d3d11.c:25778: Test failed: Got 0, expected 1452 (index 44). d3d11.c:25778: Test failed: Got 0, expected 1485 (index 45). d3d11.c:25778: Test failed: Got 0, expected 1518 (index 46). d3d11.c:25778: Test failed: Got 0, expected 1551 (index 47). d3d11.c:25778: Test failed: Got 0, expected 1584 (index 48). d3d11.c:25778: Test failed: Got 0, expected 1617 (index 49). d3d11.c:25778: Test failed: Got 0, expected 1650 (index 50). d3d11.c:25778: Test failed: Got 0, expected 1683 (index 51). d3d11.c:25778: Test failed: Got 0, expected 1716 (index 52). d3d11.c:25778: Test failed: Got 0, expected 1749 (index 53). d3d11.c:25778: Test failed: Got 0, expected 1782 (index 54). d3d11.c:25778: Test failed: Got 0, expected 1815 (index 55). d3d11.c:25778: Test failed: Got 0, expected 1848 (index 56). d3d11.c:25778: Test failed: Got 0, expected 1881 (index 57). d3d11.c:25778: Test failed: Got 0, expected 1914 (index 58). d3d11.c:25778: Test failed: Got 0, expected 1947 (index 59). d3d11.c:25778: Test failed: Got 0, expected 1980 (index 60). d3d11.c:25778: Test failed: Got 0, expected 2013 (index 61). d3d11.c:25778: Test failed: Got 0, expected 2046 (index 62). d3d11.c:25778: Test failed: Got 0, expected 2079 (index 63). d3d11.c:25810: Test failed: Got 0, expected 32 (index 0). d3d11.c:25810: Test failed: Got 0, expected 96 (index 1). d3d11.c:25810: Test failed: Got 0, expected 160 (index 2). d3d11.c:25810: Test failed: Got 0, expected 224 (index 3). d3d11.c:25810: Test failed: Got 0, expected 288 (index 4). d3d11.c:25810: Test failed: Got 0, expected 352 (index 5). d3d11.c:25810: Test failed: Got 0, expected 416 (index 6). d3d11.c:25810: Test failed: Got 0, expected 480 (index 7). d3d11.c:25810: Test failed: Got 0, expected 544 (index 8). d3d11.c:25810: Test failed: Got 0, expected 608 (index 9). d3d11.c:25810: Test failed: Got 0, expected 672 (index 10). d3d11.c:25810: Test failed: Got 0, expected 736 (index 11). d3d11.c:25810: Test failed: Got 0, expected 800 (index 12). d3d11.c:25810: Test failed: Got 0, expected 864 (index 13). d3d11.c:25810: Test failed: Got 0, expected 928 (index 14). d3d11.c:25810: Test failed: Got 0, expected 992 (index 15). d3d11.c:25810: Test failed: Got 0, expected 1056 (index 16). d3d11.c:25810: Test failed: Got 0, expected 1120 (index 17). d3d11.c:25810: Test failed: Got 0, expected 1184 (index 18). d3d11.c:25810: Test failed: Got 0, expected 1248 (index 19). d3d11.c:25810: Test failed: Got 0, expected 1312 (index 20). d3d11.c:25810: Test failed: Got 0, expected 1376 (index 21). d3d11.c:25810: Test failed: Got 0, expected 1440 (index 22). d3d11.c:25810: Test failed: Got 0, expected 1504 (index 23). d3d11.c:25810: Test failed: Got 0, expected 1568 (index 24). d3d11.c:25810: Test failed: Got 0, expected 1632 (index 25). d3d11.c:25810: Test failed: Got 0, expected 1696 (index 26). d3d11.c:25810: Test failed: Got 0, expected 1760 (index 27). d3d11.c:25810: Test failed: Got 0, expected 1824 (index 28). d3d11.c:25810: Test failed: Got 0, expected 1888 (index 29). d3d11.c:25810: Test failed: Got 0, expected 1952 (index 30). d3d11.c:25810: Test failed: Got 0, expected 2016 (index 31). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 1 (index 32). d3d11.c:25854: Test failed: Got 0, expected 1 (index 32). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 2 (index 33). d3d11.c:25854: Test failed: Got 0, expected 2 (index 33). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 3 (index 34). d3d11.c:25854: Test failed: Got 0, expected 3 (index 34). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 4 (index 35). d3d11.c:25854: Test failed: Got 0, expected 4 (index 35). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 5 (index 36). d3d11.c:25854: Test failed: Got 0, expected 5 (index 36). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 6 (index 37). d3d11.c:25854: Test failed: Got 0, expected 6 (index 37). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 7 (index 38). d3d11.c:25854: Test failed: Got 0, expected 7 (index 38). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 8 (index 39). d3d11.c:25854: Test failed: Got 0, expected 8 (index 39). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 9 (index 40). d3d11.c:25854: Test failed: Got 0, expected 9 (index 40). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 10 (index 41). d3d11.c:25854: Test failed: Got 0, expected 10 (index 41). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 11 (index 42). d3d11.c:25854: Test failed: Got 0, expected 11 (index 42). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 12 (index 43). d3d11.c:25854: Test failed: Got 0, expected 12 (index 43). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 13 (index 44). d3d11.c:25854: Test failed: Got 0, expected 13 (index 44). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 14 (index 45). d3d11.c:25854: Test failed: Got 0, expected 14 (index 45). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 15 (index 46). d3d11.c:25854: Test failed: Got 0, expected 15 (index 46). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 16 (index 47). d3d11.c:25854: Test failed: Got 0, expected 16 (index 47). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 17 (index 48). d3d11.c:25854: Test failed: Got 0, expected 17 (index 48). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 18 (index 49). d3d11.c:25854: Test failed: Got 0, expected 18 (index 49). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 19 (index 50). d3d11.c:25854: Test failed: Got 0, expected 19 (index 50). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 20 (index 51). d3d11.c:25854: Test failed: Got 0, expected 20 (index 51). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 21 (index 52). d3d11.c:25854: Test failed: Got 0, expected 21 (index 52). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 22 (index 53). d3d11.c:25854: Test failed: Got 0, expected 22 (index 53). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 23 (index 54). d3d11.c:25854: Test failed: Got 0, expected 23 (index 54). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 24 (index 55). d3d11.c:25854: Test failed: Got 0, expected 24 (index 55). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 25 (index 56). d3d11.c:25854: Test failed: Got 0, expected 25 (index 56). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 26 (index 57). d3d11.c:25854: Test failed: Got 0, expected 26 (index 57). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 27 (index 58). d3d11.c:25854: Test failed: Got 0, expected 27 (index 58). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 28 (index 59). d3d11.c:25854: Test failed: Got 0, expected 28 (index 59). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 29 (index 60). d3d11.c:25854: Test failed: Got 0, expected 29 (index 60). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 30 (index 61). d3d11.c:25854: Test failed: Got 0, expected 30 (index 61). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 31 (index 62). d3d11.c:25854: Test failed: Got 0, expected 31 (index 62). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 32 (index 63). d3d11.c:25854: Test failed: Got 0, expected 32 (index 63). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 2 (index 64). d3d11.c:25854: Test failed: Got 0, expected 2 (index 64). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 4 (index 65). d3d11.c:25854: Test failed: Got 0, expected 4 (index 65). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 6 (index 66). d3d11.c:25854: Test failed: Got 0, expected 6 (index 66). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 8 (index 67). d3d11.c:25854: Test failed: Got 0, expected 8 (index 67). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 10 (index 68). d3d11.c:25854: Test failed: Got 0, expected 10 (index 68). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 12 (index 69). d3d11.c:25854: Test failed: Got 0, expected 12 (index 69). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 14 (index 70). d3d11.c:25854: Test failed: Got 0, expected 14 (index 70). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 16 (index 71). d3d11.c:25854: Test failed: Got 0, expected 16 (index 71). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 18 (index 72). d3d11.c:25854: Test failed: Got 0, expected 18 (index 72). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 20 (index 73). d3d11.c:25854: Test failed: Got 0, expected 20 (index 73). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 22 (index 74). d3d11.c:25854: Test failed: Got 0, expected 22 (index 74). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 24 (index 75). d3d11.c:25854: Test failed: Got 0, expected 24 (index 75). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 26 (index 76). d3d11.c:25854: Test failed: Got 0, expected 26 (index 76). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 28 (index 77). d3d11.c:25854: Test failed: Got 0, expected 28 (index 77). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 30 (index 78). d3d11.c:25854: Test failed: Got 0, expected 30 (index 78). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 32 (index 79). d3d11.c:25854: Test failed: Got 0, expected 32 (index 79). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 34 (index 80). d3d11.c:25854: Test failed: Got 0, expected 34 (index 80). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 36 (index 81). d3d11.c:25854: Test failed: Got 0, expected 36 (index 81). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 38 (index 82). d3d11.c:25854: Test failed: Got 0, expected 38 (index 82). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 40 (index 83). d3d11.c:25854: Test failed: Got 0, expected 40 (index 83). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 42 (index 84). d3d11.c:25854: Test failed: Got 0, expected 42 (index 84). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 44 (index 85). d3d11.c:25854: Test failed: Got 0, expected 44 (index 85). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 46 (index 86). d3d11.c:25854: Test failed: Got 0, expected 46 (index 86). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 48 (index 87). d3d11.c:25854: Test failed: Got 0, expected 48 (index 87). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 50 (index 88). d3d11.c:25854: Test failed: Got 0, expected 50 (index 88). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 52 (index 89). d3d11.c:25854: Test failed: Got 0, expected 52 (index 89). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 54 (index 90). d3d11.c:25854: Test failed: Got 0, expected 54 (index 90). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 56 (index 91). d3d11.c:25854: Test failed: Got 0, expected 56 (index 91). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 58 (index 92). d3d11.c:25854: Test failed: Got 0, expected 58 (index 92). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 60 (index 93). d3d11.c:25854: Test failed: Got 0, expected 60 (index 93). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 62 (index 94). d3d11.c:25854: Test failed: Got 0, expected 62 (index 94). d3d11.c:25852: Test failed: Got 0.00000000e+000, expected 64 (index 95). d3d11.c:25854: Test failed: Got 0, expected 64 (index 95).