Using old versions of the module information structure.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54465
Signed-off-by: Eric Pouech eric.pouech@gmail.com
From: Eric Pouech eric.pouech@gmail.com
Using old versions of the module information structure.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54465
Signed-off-by: Eric Pouech eric.pouech@gmail.com --- dlls/dbghelp/tests/dbghelp.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/dlls/dbghelp/tests/dbghelp.c b/dlls/dbghelp/tests/dbghelp.c index 713c93b0a02..24e0b87ba6f 100644 --- a/dlls/dbghelp/tests/dbghelp.c +++ b/dlls/dbghelp/tests/dbghelp.c @@ -223,8 +223,6 @@ static void test_modules(void) const DWORD64 base2 = 0x08010000; IMAGEHLP_MODULEW64 im;
- im.SizeOfStruct = sizeof(im); - /* can sym load an exec of different bitness even if 32Bit flag not set */
SymSetOptions(SymGetOptions() & ~SYMOPT_INCLUDE_32BIT_MODULES); @@ -237,6 +235,8 @@ static void test_modules(void) { ret = SymLoadModule(GetCurrentProcess(), NULL, "C:\windows\syswow64\notepad.exe", NULL, base2, 0); ok(ret, "SymLoadModule failed: %lu\n", GetLastError()); + /* use old version of module info (Win7 doesn't support more recent versions) */ + im.SizeOfStruct = sizeof(IMAGEHLP_MODULEW); ret = SymGetModuleInfoW64(GetCurrentProcess(), base2, &im); ok(ret, "SymGetModuleInfoW64 failed: %lu\n", GetLastError()); ok(im.BaseOfImage == base2, "Wrong base address\n"); @@ -246,14 +246,16 @@ static void test_modules(void)
ret = SymLoadModule(GetCurrentProcess(), NULL, "C:\windows\system32\notepad.exe", NULL, base1, 0); ok(ret, "SymLoadModule failed: %lu\n", GetLastError()); + im.SizeOfStruct = sizeof(im); ret = SymGetModuleInfoW64(GetCurrentProcess(), base1, &im); /* we want to access IMAGEHLP_MODULE.MachineType, so ensure that error stems from a too old * dbghelp (on Windows), not supporting new enlarged IMAGEHLP_MODULE structures. */ if (broken(!ret && GetLastError() == ERROR_INVALID_PARAMETER)) { - IMAGEHLP_MODULE im0 = {sizeof(im0)}; - ret = SymGetModuleInfo(GetCurrentProcess(), base1, &im0); + /* use old version of module info (Win7 doesn't support more recent versions) */ + im.SizeOfStruct = sizeof(IMAGEHLP_MODULEW); + ret = SymGetModuleInfoW64(GetCurrentProcess(), base1, &im); ok(ret, "Unexpected error: %lu\n", GetLastError()); skip("Too old dbghelp. Skipping module tests\n"); ret = SymCleanup(GetCurrentProcess());
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 full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=129260
Your paranoid android.
=== w7u_2qxl (32 bit report) ===
dbghelp: dbghelp.c:259: Test failed: Unexpected error: 87
=== w7u_adm (32 bit report) ===
dbghelp: dbghelp.c:259: Test failed: Unexpected error: 87
=== w7u_el (32 bit report) ===
dbghelp: dbghelp.c:259: Test failed: Unexpected error: 87
=== w864 (32 bit report) ===
dbghelp: dbghelp.c:212: Test failed: Wrong machine 2f
=== w1064v1507 (32 bit report) ===
dbghelp: dbghelp.c:212: Test failed: Wrong machine 2f
=== w1064v1809 (32 bit report) ===
dbghelp: dbghelp.c:212: Test failed: Wrong machine 2f
=== w1064_tsign (32 bit report) ===
dbghelp: dbghelp.c:212: Test failed: Wrong machine 2f
=== w10pro64 (32 bit report) ===
dbghelp: dbghelp.c:212: Test failed: Wrong machine 2f
=== debian11b (32 bit WoW report) ===
dbghelp: dbghelp.c:212: Test failed: Wrong machine 5c656d6f