user32: Don't call GetModuleFileNameW under the user lock.

This commit is contained in:
Alexandre Julliard 2010-12-14 13:49:14 +01:00
parent 6c94cdc903
commit 2c63cf58ea

View file

@ -1682,6 +1682,7 @@ BOOL WINAPI GetIconInfoExA( HICON icon, ICONINFOEXA *info )
BOOL WINAPI GetIconInfoExW( HICON icon, ICONINFOEXW *info )
{
struct cursoricon_object *ptr;
HMODULE module;
BOOL ret = TRUE;
if (info->cbSize != sizeof(*info))
@ -1707,7 +1708,6 @@ BOOL WINAPI GetIconInfoExW( HICON icon, ICONINFOEXW *info )
info->szResName[0] = 0;
if (ptr->module)
{
GetModuleFileNameW( ptr->module, info->szModName, MAX_PATH );
if (IS_INTRESOURCE( ptr->resname )) info->wResID = LOWORD( ptr->resname );
else lstrcpynW( info->szResName, ptr->resname, MAX_PATH );
}
@ -1717,7 +1717,9 @@ BOOL WINAPI GetIconInfoExW( HICON icon, ICONINFOEXW *info )
DeleteObject( info->hbmColor );
ret = FALSE;
}
module = ptr->module;
release_icon_ptr( icon, ptr );
if (ret && module) GetModuleFileNameW( module, info->szModName, MAX_PATH );
return ret;
}