user32: Add a test showing WM_GETTEXT doesn't crash with bad pointers.

This commit is contained in:
Mike McCormack 2007-01-17 19:52:08 +09:00 committed by Alexandre Julliard
parent ce21d918d8
commit 95fdf165cd
1 changed files with 34 additions and 0 deletions

View File

@ -4084,6 +4084,39 @@ static void test_ShowWindow(void)
ok(!IsWindow(hwnd), "window should not exist\n");
}
void test_gettext(void)
{
WNDCLASS cls;
LPCSTR clsname = "gettexttest";
HWND hwnd;
LRESULT r;
memset( &cls, 0, sizeof cls );
cls.lpfnWndProc = DefWindowProc;
cls.lpszClassName = clsname;
cls.hInstance = GetModuleHandle(NULL);
if (!RegisterClass( &cls )) return;
hwnd = CreateWindow( clsname, "test text", WS_OVERLAPPED, 0, 0, 10, 10, 0, NULL, NULL, NULL);
ok( hwnd != NULL, "window was null\n");
r = SendMessage( hwnd, WM_GETTEXT, 0x10, 0x1000);
ok( r == 0, "settext should return zero\n");
r = SendMessage( hwnd, WM_GETTEXT, 0x10000, 0);
ok( r == 0, "settext should return zero (%ld)\n", r);
r = SendMessage( hwnd, WM_GETTEXT, 0xff000000, 0x1000);
ok( r == 0, "settext should return zero (%ld)\n", r);
r = SendMessage( hwnd, WM_GETTEXT, 0x1000, 0xff000000);
ok( r == 0, "settext should return zero (%ld)\n", r);
DestroyWindow(hwnd);
UnregisterClass( clsname, NULL );
}
START_TEST(win)
{
pGetAncestor = (void *)GetProcAddress( GetModuleHandleA("user32.dll"), "GetAncestor" );
@ -4161,6 +4194,7 @@ START_TEST(win)
test_csparentdc();
test_SetWindowLong();
test_ShowWindow();
test_gettext();
/* add the tests above this line */
UnhookWindowsHookEx(hhook);