Commit 6ce40061 authored by Ulrich Weigand's avatar Ulrich Weigand Committed by Alexandre Julliard

Bugfix: release Win16Lock in WinExec16, CallProc[Ex]32W_16.

parent b8fa2962
...@@ -434,6 +434,8 @@ static DWORD RELAY_CallProc32W(int Ex) ...@@ -434,6 +434,8 @@ static DWORD RELAY_CallProc32W(int Ex)
int aix; int aix;
dbg_decl_str(relay, 1024); dbg_decl_str(relay, 1024);
SYSLEVEL_ReleaseWin16Lock();
VA_START16( valist ); VA_START16( valist );
nrofargs = VA_ARG16( valist, DWORD ); nrofargs = VA_ARG16( valist, DWORD );
argconvmask = VA_ARG16( valist, DWORD ); argconvmask = VA_ARG16( valist, DWORD );
...@@ -502,6 +504,9 @@ static DWORD RELAY_CallProc32W(int Ex) ...@@ -502,6 +504,9 @@ static DWORD RELAY_CallProc32W(int Ex)
TRACE(relay,"%s - returns %08lx\n",dbg_str(relay),ret); TRACE(relay,"%s - returns %08lx\n",dbg_str(relay),ret);
HeapFree( GetProcessHeap(), 0, args ); HeapFree( GetProcessHeap(), 0, args );
SYSLEVEL_RestoreWin16Lock();
return ret; return ret;
} }
......
...@@ -805,7 +805,13 @@ static BOOL MODULE_CreateUnixProcess( LPCSTR filename, LPCSTR lpCmdLine, ...@@ -805,7 +805,13 @@ static BOOL MODULE_CreateUnixProcess( LPCSTR filename, LPCSTR lpCmdLine,
*/ */
HINSTANCE16 WINAPI WinExec16( LPCSTR lpCmdLine, UINT16 nCmdShow ) HINSTANCE16 WINAPI WinExec16( LPCSTR lpCmdLine, UINT16 nCmdShow )
{ {
return WinExec( lpCmdLine, nCmdShow ); HINSTANCE16 hInst;
SYSLEVEL_ReleaseWin16Lock();
hInst = WinExec( lpCmdLine, nCmdShow );
SYSLEVEL_RestoreWin16Lock();
return hInst;
} }
/*********************************************************************** /***********************************************************************
......
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