Jacek Caban : mshtml: Store IActiveScriptParseProcedure in ScriptHost.

Alexandre Julliard julliard at winehq.org
Fri Apr 18 07:27:17 CDT 2008


Module: wine
Branch: master
Commit: dfc84bd9642513558da3d489a1e0e029d3a23187
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=dfc84bd9642513558da3d489a1e0e029d3a23187

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Thu Apr 17 22:53:52 2008 +0200

mshtml: Store IActiveScriptParseProcedure in ScriptHost.

---

 dlls/mshtml/script.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/dlls/mshtml/script.c b/dlls/mshtml/script.c
index 6a6442e..4157296 100644
--- a/dlls/mshtml/script.c
+++ b/dlls/mshtml/script.c
@@ -51,6 +51,7 @@ typedef struct {
 
     IActiveScript *script;
     IActiveScriptParse *parse;
+    IActiveScriptParseProcedure *parse_proc;
 
     SCRIPTSTATE script_state;
 
@@ -147,7 +148,12 @@ static BOOL init_script_engine(ScriptHost *script_host)
     if(FAILED(hres))
        WARN("AddNamedItem failed: %08x\n", hres);
 
-    /* FIXME: QI for IActiveScriptParseProcedure2 and IActiveScriptParseProcedure */
+    hres = IActiveScript_QueryInterface(script_host->script, &IID_IActiveScriptParseProcedure2,
+                                        (void**)&script_host->parse_proc);
+    if(FAILED(hres)) {
+        /* FIXME: QI for IActiveScriptParseProcedure */
+        WARN("Could not get IActiveScriptParseProcedure iface: %08x\n", hres);
+    }
 
     return TRUE;
 }
@@ -167,6 +173,11 @@ static void release_script_engine(ScriptHost *This)
         IActiveScript_Close(This->script);
 
     default:
+        if(This->parse_proc) {
+            IActiveScriptParseProcedure_Release(This->parse_proc);
+            This->parse_proc = NULL;
+        }
+
         if(This->parse) {
             IActiveScriptParse_Release(This->parse);
             This->parse = NULL;




More information about the wine-cvs mailing list