From ee477c63ed2ddad8b09abea20b90a4cbde3b45ff Mon Sep 17 00:00:00 2001 From: James Tabor Date: Tue, 25 Oct 2011 02:14:38 +0000 Subject: [PATCH] - Fix crash in cursoricon test. svn path=/trunk/; revision=54253 --- reactos/dll/win32/user32/misc/stubs.c | 10 ++++++---- reactos/dll/win32/user32/user32.pspec | 2 +- reactos/include/reactos/win32k/ntuser.h | 10 +++++----- reactos/subsystems/win32/win32k/ntuser/ntstubs.c | 12 ++++++------ 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/reactos/dll/win32/user32/misc/stubs.c b/reactos/dll/win32/user32/misc/stubs.c index 475e6fe05b4..76c5295fc44 100644 --- a/reactos/dll/win32/user32/misc/stubs.c +++ b/reactos/dll/win32/user32/misc/stubs.c @@ -554,6 +554,7 @@ WINAPI CreateSystemThreads(DWORD dwUnknown) { NtUserxCreateSystemThreads(dwUnknown); + ExitThread(0); } BOOL @@ -572,12 +573,13 @@ DeviceEventWorker(DWORD dw1, DWORD dw2, DWORD dw3, DWORD dw4, DWORD dw5) return FALSE; } -BOOL +HCURSOR WINAPI -GetCursorFrameInfo(DWORD dw1, DWORD dw2, DWORD dw3, DWORD dw4, DWORD dw5) +GetCursorFrameInfo(HCURSOR hCursor, LPCWSTR name, DWORD istep, PDWORD rate_jiffies, INT *num_steps) { - UNIMPLEMENTED; - return FALSE; + if (hCursor) return NtUserGetCursorFrameInfo(hCursor, istep, rate_jiffies, num_steps); + + return LoadImageW( NULL, name, IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE ); } BOOL diff --git a/reactos/dll/win32/user32/user32.pspec b/reactos/dll/win32/user32/user32.pspec index 85c9e194ba9..c1c45bf3333 100644 --- a/reactos/dll/win32/user32/user32.pspec +++ b/reactos/dll/win32/user32/user32.pspec @@ -268,7 +268,7 @@ @ stdcall GetClipboardViewer() NtUserGetClipboardViewer @ stdcall GetComboBoxInfo(long ptr) ; Direct call NtUserGetComboBoxInfo @ stdcall GetCursor() -@ stub GetCursorFrameInfo +@ stdcall GetCursorFrameInfo(long long long ptr ptr) @ stdcall GetCursorInfo(ptr) NtUserGetCursorInfo @ stdcall GetCursorPos(ptr) @ stdcall GetDC(long) NtUserGetDC diff --git a/reactos/include/reactos/win32k/ntuser.h b/reactos/include/reactos/win32k/ntuser.h index dc11a256c33..5725aa27890 100644 --- a/reactos/include/reactos/win32k/ntuser.h +++ b/reactos/include/reactos/win32k/ntuser.h @@ -1907,13 +1907,13 @@ NtUserGetCPD( GETCPD Flags, ULONG_PTR Proc); -DWORD +HCURSOR NTAPI NtUserGetCursorFrameInfo( - DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2, - DWORD Unknown3); + HCURSOR hCursor, + DWORD istep, + PDWORD rate_jiffies, + INT *num_steps); BOOL NTAPI diff --git a/reactos/subsystems/win32/win32k/ntuser/ntstubs.c b/reactos/subsystems/win32/win32k/ntuser/ntstubs.c index 2d88789c99d..d0cd8e92056 100644 --- a/reactos/subsystems/win32/win32k/ntuser/ntstubs.c +++ b/reactos/subsystems/win32/win32k/ntuser/ntstubs.c @@ -1242,13 +1242,13 @@ BOOL APIENTRY NtUserGetUpdatedClipboardFormats( /* * @unimplemented */ -DWORD -APIENTRY +HCURSOR +NTAPI NtUserGetCursorFrameInfo( - DWORD Unknown0, - DWORD Unknown1, - DWORD Unknown2, - DWORD Unknown3) + HCURSOR hCursor, + DWORD istep, + PDWORD rate_jiffies, + INT *num_steps) { STUB