Commit 4f596c04 authored by Rémi Bernon's avatar Rémi Bernon Committed by Alexandre Julliard

kernelbase: Remove unnecessary handler from LocalUnlock.

parent e358731f
......@@ -918,6 +918,7 @@ HLOCAL WINAPI DECLSPEC_HOTPATCH LocalReAlloc( HLOCAL handle, SIZE_T size, UINT f
*/
BOOL WINAPI DECLSPEC_HOTPATCH LocalUnlock( HLOCAL handle )
{
HANDLE heap = GetProcessHeap();
struct mem_entry *mem;
BOOL ret = FALSE;
......@@ -929,36 +930,28 @@ BOOL WINAPI DECLSPEC_HOTPATCH LocalUnlock( HLOCAL handle )
return FALSE;
}
RtlLockHeap( GetProcessHeap() );
__TRY
RtlLockHeap( heap );
if ((mem = unsafe_mem_from_HLOCAL( handle )))
{
if ((mem = unsafe_mem_from_HLOCAL( handle )))
if (mem->lock)
{
if (mem->lock)
{
mem->lock--;
ret = (mem->lock != 0);
if (!ret) SetLastError( NO_ERROR );
}
else
{
WARN_(globalmem)( "%p not locked\n", handle );
SetLastError( ERROR_NOT_LOCKED );
}
mem->lock--;
ret = (mem->lock != 0);
if (!ret) SetLastError( NO_ERROR );
}
else
{
WARN_(globalmem)( "invalid handle %p\n", handle );
SetLastError( ERROR_INVALID_HANDLE );
WARN_(globalmem)( "%p not locked\n", handle );
SetLastError( ERROR_NOT_LOCKED );
}
}
__EXCEPT_PAGE_FAULT
else
{
WARN_(globalmem)( "(%p): Page fault occurred ! Caused by bug ?\n", handle );
SetLastError( ERROR_INVALID_PARAMETER );
WARN_(globalmem)( "invalid handle %p\n", handle );
SetLastError( ERROR_INVALID_HANDLE );
}
__ENDTRY
RtlUnlockHeap( GetProcessHeap() );
RtlUnlockHeap( heap );
return ret;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment