From 1a0f1f5db824c91ab10c45ddf1dc7e813a280abc Mon Sep 17 00:00:00 2001 From: Detlef Riekenberg Date: Tue, 23 Dec 2008 11:24:31 +0100 Subject: [PATCH] shdocvw/tests: Fix a test on IE 5.x. --- dlls/shdocvw/tests/shdocvw.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/dlls/shdocvw/tests/shdocvw.c b/dlls/shdocvw/tests/shdocvw.c index f3a75d45906..a2d9e9e0bed 100644 --- a/dlls/shdocvw/tests/shdocvw.c +++ b/dlls/shdocvw/tests/shdocvw.c @@ -112,12 +112,16 @@ static void test_URLSubRegQueryA(void) ok((hr == S_OK) && !used, "got 0x%x and %d (expected S_OK and 0)\n", hr, used); - /* size of buffer is 0, but the function still succeed */ + /* size of buffer is 0, but the function still succeed. + buffer[0] is cleared in IE 5.01 and IE 5.5 (Buffer Overflow) */ memset(buffer, '#', sizeof(buffer)-1); buffer[sizeof(buffer)-1] = '\0'; hr = pURLSubRegQueryA(regpath_iemain, start_page, REG_SZ, buffer, 0, -1); used = lstrlenA(buffer); - ok((hr == S_OK) && (used == INTERNET_MAX_URL_LENGTH - 1), "got 0x%x and %d\n", hr, used); + ok( (hr == S_OK) && + ((used == INTERNET_MAX_URL_LENGTH - 1) || broken(used == 0)) , + "got 0x%x and %d (expected S_OK and INTERNET_MAX_URL_LENGTH - 1)\n", + hr, used); /* still succeed without a buffer for the result */ hr = pURLSubRegQueryA(regpath_iemain, start_page, REG_SZ, NULL, 0, -1); -- 2.11.4.GIT