Hi,
While running your changed tests on Windows, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check? Full results can be found at http://testbot.winehq.org/JobDetails.pl?Key=9229
Your paranoid android.
=== W7PROX64 (64 bit tab) === tab.c:1330: Test failed: got 69cc80, expected dededede
On Sun, 13 Feb 2011, Marvin wrote:
While running your changed tests on Windows, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check? Full results can be found at http://testbot.winehq.org/JobDetails.pl?Key=9229
Your paranoid android.
=== W7PROX64 (64 bit tab) === tab.c:1330: Test failed: got 69cc80, expected dededede
Hmm, looking at this my patch changes
ok(*(ULONG_PTR*)g_drawitem.itemData == lparam, "got %lx, expected %lx\n", gdrawitem.itemData, lparam);
to
ok(*(ULONG_PTR*)g_drawitem.itemData == (ULONG)lparam, "got %lx, expected %lx\n", g_drawitem.itemData, lparam);
That is, the only difference is the (ULONG) cast. Given the output above, my patch did not trigger this failure since based on the printing of the two values they are different.
Gerald
Hmm, looking at this my patch changes
ok(*(ULONG_PTR*)g_drawitem.itemData == lparam, "got %lx, expected %lx\n", gdrawitem.itemData, lparam);
to
ok(*(ULONG_PTR*)g_drawitem.itemData == (ULONG)lparam, "got %lx, expected %lx\n", g_drawitem.itemData, lparam);
That is, the only difference is the (ULONG) cast. Given the output above, my patch did not trigger this failure since based on the printing of the two values they are different.
Actually, now with your change you are comparing ULONG_PTR to ULONG. With 64 bit binary the left side of comparison is a 64 bit pointer and right side is 32 bit value.
Best Regards, Janne Hakonen
On Sun, 13 Feb 2011, Janne Hakonen wrote:
Actually, now with your change you are comparing ULONG_PTR to ULONG. With 64 bit binary the left side of comparison is a 64 bit pointer and right side is 32 bit value.
Thanks, Janne. I have adjusted, tested and resubmitted the first hunk of the patch now.
And this is now the second hunk, also approved by Marvin: https://testbot.winehq.org/JobDetails.pl?Key=9292
Gerald
ChangeLog: comctl32/tests: Add another cast to avoid comparison of different int types.
diff --git a/dlls/comctl32/tests/tab.c b/dlls/comctl32/tests/tab.c index 4c464e6..14c7b59 100644 --- a/dlls/comctl32/tests/tab.c +++ b/dlls/comctl32/tests/tab.c @@ -1327,7 +1327,7 @@ static void test_TCS_OWNERDRAWFIXED(HWND parent_wnd) ShowWindow(hTab, SW_SHOW); RedrawWindow(hTab, NULL, 0, RDW_UPDATENOW);
- ok(*(ULONG_PTR*)g_drawitem.itemData == lparam, "got %lx, expected %lx\n", g_drawitem.itemData, lparam); + ok(*(ULONG_PTR*)g_drawitem.itemData == (ULONG_PTR)lparam, "got %lx, expected %lx\n", g_drawitem.itemData, lparam);
DestroyWindow(hTab);