[PATCH] [Msvcr90]: fix an integer overflow on 64 bit system for qsort_s tests
Eric Pouech
eric.pouech at orange.fr
Sun Dec 26 11:00:20 CST 2010
A+
---
dlls/msvcr90/tests/msvcr90.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/dlls/msvcr90/tests/msvcr90.c b/dlls/msvcr90/tests/msvcr90.c
index 449c0bc..24a6517 100644
--- a/dlls/msvcr90/tests/msvcr90.c
+++ b/dlls/msvcr90/tests/msvcr90.c
@@ -509,7 +509,7 @@ static void test_qsort_s(void)
/* overflow without side effects, other overflow values crash */
g_qsort_s_context_counter = 0;
- p_qsort_s((void*)arr2, (1 << (8*sizeof(size_t) - 1)) + 1, sizeof(int), intcomparefunc, &g_qsort_s_context_counter);
+ p_qsort_s((void*)arr2, (((size_t)1) << (8*sizeof(size_t) - 1)) + 1, sizeof(int), intcomparefunc, &g_qsort_s_context_counter);
ok(g_qsort_s_context_counter == 0, "callback shouldn't have been called\n");
ok(arr2[0] == 23, "should remain unsorted, arr2[0] is %d\n", arr2[0]);
ok(arr2[1] == 42, "should remain unsorted, arr2[1] is %d\n", arr2[1]);
More information about the wine-patches
mailing list