[1/4] jsproxy: Allow multiple calls to InternetInitializeAutoProxyDll.

Hans Leidekker hans at codeweavers.com
Wed Apr 20 03:14:47 CDT 2016


Signed-off-by: Hans Leidekker <hans at codeweavers.com>
---
 dlls/jsproxy/main.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/dlls/jsproxy/main.c b/dlls/jsproxy/main.c
index 0399173..e277a0b 100644
--- a/dlls/jsproxy/main.c
+++ b/dlls/jsproxy/main.c
@@ -186,14 +186,16 @@ BOOL WINAPI JSPROXY_InternetInitializeAutoProxyDll( DWORD version, LPSTR tmpfile
 
     EnterCriticalSection( &cs_jsproxy );
 
-    if (global_script->text)
+    if (buffer && buffer->dwStructSize == sizeof(*buffer) && buffer->lpszScriptBuffer)
     {
-        LeaveCriticalSection( &cs_jsproxy );
-        return FALSE;
+        heap_free( global_script->text );
+        if( (global_script->text = strdupAW( buffer->lpszScriptBuffer, buffer->dwScriptBufferSize ))) ret = TRUE;
+    }
+    else
+    {
+        heap_free( global_script->text );
+        if ((global_script->text = load_script( tmpfile ))) ret = TRUE;
     }
-    if (buffer && buffer->dwStructSize == sizeof(*buffer) && buffer->lpszScriptBuffer &&
-        (global_script->text = strdupAW( buffer->lpszScriptBuffer, buffer->dwScriptBufferSize ))) ret = TRUE;
-    else if ((global_script->text = load_script( tmpfile ))) ret = TRUE;
 
     LeaveCriticalSection( &cs_jsproxy );
     return ret;
-- 
2.1.4




More information about the wine-patches mailing list