Author: jimtabor Date: Fri Oct 7 13:56:25 2011 New Revision: 54044
URL: http://svn.reactos.org/svn/reactos?rev=54044&view=rev Log: [Win32k] - Implement get atom name for user32.
Modified: trunk/reactos/include/reactos/win32k/ntuser.h trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c trunk/reactos/subsystems/win32/win32k/ntuser/useratom.c
Modified: trunk/reactos/include/reactos/win32k/ntuser.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/win32k/ntus... ============================================================================== --- trunk/reactos/include/reactos/win32k/ntuser.h [iso-8859-1] (original) +++ trunk/reactos/include/reactos/win32k/ntuser.h [iso-8859-1] Fri Oct 7 13:56:25 2011 @@ -1825,7 +1825,7 @@ NTAPI NtUserGetAtomName( ATOM nAtom, - LPWSTR lpBuffer); + PUNICODE_STRING pBuffer);
UINT NTAPI
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntu... ============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/ntstubs.c [iso-8859-1] Fri Oct 7 13:56:25 2011 @@ -623,16 +623,6 @@ APIENTRY NtUserGetAppImeLevel( DWORD dwUnknown1) -{ - STUB; - return 0; -} - -DWORD -APIENTRY -NtUserGetAtomName( - ATOM nAtom, - LPWSTR lpBuffer) { STUB; return 0;
Modified: trunk/reactos/subsystems/win32/win32k/ntuser/useratom.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntu... ============================================================================== --- trunk/reactos/subsystems/win32/win32k/ntuser/useratom.c [iso-8859-1] (original) +++ trunk/reactos/subsystems/win32/win32k/ntuser/useratom.c [iso-8859-1] Fri Oct 7 13:56:25 2011 @@ -78,4 +78,27 @@ return Atom; }
+DWORD +APIENTRY +NtUserGetAtomName( + ATOM nAtom, + PUNICODE_STRING pBuffer) +{ + DWORD Ret; + UNICODE_STRING CapturedName = {0}; + UserEnterShared(); + _SEH2_TRY + { + CapturedName = ProbeForReadUnicodeString(pBuffer); + Ret = IntGetAtomName((RTL_ATOM)nAtom, CapturedName.Buffer, (ULONG)CapturedName.Length); + } + _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) + { + Ret = 0; + } + _SEH2_END + UserLeave(); + return Ret; +} + /* EOF */