winhttp: Use platform-specific versions of IActiveScriptParse methods.

Hans Leidekker hans at codeweavers.com
Fri Jul 27 07:46:13 CDT 2012


---
 dlls/winhttp/Makefile.in |    1 +
 dlls/winhttp/session.c   |   16 +++++++++++++---
 2 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/dlls/winhttp/Makefile.in b/dlls/winhttp/Makefile.in
index 53b5b97..130971e 100644
--- a/dlls/winhttp/Makefile.in
+++ b/dlls/winhttp/Makefile.in
@@ -3,6 +3,7 @@ IMPORTLIB = winhttp
 IMPORTS   = uuid user32 advapi32
 DELAYIMPORTS = oleaut32 ole32 crypt32
 EXTRALIBS = @SOCKETLIBS@
+EXTRADEFS = -DWIDL_C_INLINE_WRAPPERS
 
 C_SRCS = \
 	cookie.c \
diff --git a/dlls/winhttp/session.c b/dlls/winhttp/session.c
index e3e5e2b..0349ba7 100644
--- a/dlls/winhttp/session.c
+++ b/dlls/winhttp/session.c
@@ -1828,6 +1828,16 @@ static BSTR include_pac_utils( BSTR script )
     return ret;
 }
 
+#ifdef _WIN64
+#define IActiveScriptParse_Release IActiveScriptParse64_Release
+#define IActiveScriptParse_InitNew IActiveScriptParse64_InitNew
+#define IActiveScriptParse_ParseScriptText IActiveScriptParse64_ParseScriptText
+#else
+#define IActiveScriptParse_Release IActiveScriptParse32_Release
+#define IActiveScriptParse_InitNew IActiveScriptParse32_InitNew
+#define IActiveScriptParse_ParseScriptText IActiveScriptParse32_ParseScriptText
+#endif
+
 static BOOL run_script( const BSTR script, const WCHAR *url, WINHTTP_PROXY_INFO *info )
 {
     static const WCHAR jscriptW[] = {'J','S','c','r','i','p','t',0};
@@ -1862,7 +1872,7 @@ static BOOL run_script( const BSTR script, const WCHAR *url, WINHTTP_PROXY_INFO
     hr = IActiveScript_QueryInterface( engine, &IID_IActiveScriptParse, (void **)&parser );
     if (hr != S_OK) goto done;
 
-    hr = IActiveScriptParse64_InitNew( parser );
+    hr = IActiveScriptParse_InitNew( parser );
     if (hr != S_OK) goto done;
 
     hr = IActiveScript_SetScriptSite( engine, &script_site );
@@ -1873,7 +1883,7 @@ static BOOL run_script( const BSTR script, const WCHAR *url, WINHTTP_PROXY_INFO
 
     if (!(full_script = include_pac_utils( script ))) goto done;
 
-    hr = IActiveScriptParse64_ParseScriptText( parser, full_script, NULL, NULL, NULL, 0, 0, 0, NULL, NULL );
+    hr = IActiveScriptParse_ParseScriptText( parser, full_script, NULL, NULL, NULL, 0, 0, 0, NULL, NULL );
     if (hr != S_OK) goto done;
 
     hr = IActiveScript_SetScriptState( engine, SCRIPTSTATE_STARTED );
@@ -1910,7 +1920,7 @@ done:
     SysFreeString( hostname );
     SysFreeString( func );
     if (dispatch) IDispatch_Release( dispatch );
-    if (parser) IUnknown_Release( parser );
+    if (parser) IActiveScriptParse_Release( parser );
     if (engine) IActiveScript_Release( engine );
     if (SUCCEEDED( init )) CoUninitialize();
     if (!ret) set_last_error( ERROR_WINHTTP_BAD_AUTO_PROXY_SCRIPT );
-- 
1.7.10.4






More information about the wine-patches mailing list