Module: wine Branch: master Commit: c50d922ef6470c9ca4be7f13f163c5ffa91631b2 URL: http://source.winehq.org/git/wine.git/?a=commit;h=c50d922ef6470c9ca4be7f13f1...
Author: Paul Vriens paul.vriens.wine@gmail.com Date: Wed Sep 10 17:47:49 2008 +0200
gdi32/tests: Prevent a crash on win95.
---
dlls/gdi32/tests/icm.c | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/dlls/gdi32/tests/icm.c b/dlls/gdi32/tests/icm.c index 9d89828..b36165c 100644 --- a/dlls/gdi32/tests/icm.c +++ b/dlls/gdi32/tests/icm.c @@ -51,20 +51,28 @@ static void test_GetICMProfileA( HDC dc ) ret = GetICMProfileA( dc, &size, NULL ); ok( !ret, "GetICMProfileA succeeded\n" );
- ret = GetICMProfileA( dc, NULL, filename ); - ok( !ret, "GetICMProfileA succeeded\n" ); - size = MAX_PATH; ret = GetICMProfileA( NULL, &size, filename ); ok( !ret, "GetICMProfileA succeeded\n" );
size = 0; + filename[0] = 0; SetLastError(0xdeadbeef); ret = GetICMProfileA( dc, &size, filename ); error = GetLastError(); ok( !ret, "GetICMProfileA succeeded\n" ); ok( size, "expected size > 0\n" ); - ok( error == ERROR_INSUFFICIENT_BUFFER, "got %d, expected ERROR_INSUFFICIENT_BUFFER\n", error ); + ok( filename[0] == 0, "Expected filename to be empty\n" ); + ok( error == ERROR_INSUFFICIENT_BUFFER || + error == ERROR_SUCCESS, /* Win95 */ + "got %d, expected ERROR_INSUFFICIENT_BUFFER or ERROR_SUCCESS(Win95)\n", error ); + + /* Next test will crash on Win95 */ + if ( error == ERROR_INSUFFICIENT_BUFFER ) + { + ret = GetICMProfileA( dc, NULL, filename ); + ok( !ret, "GetICMProfileA succeeded\n" ); + }
size = MAX_PATH; ret = GetICMProfileA( dc, &size, filename );