Jacek Caban : mshtml: Moved script mode out of get_script_host to allow exec_script calls in Gecko script mode .

Alexandre Julliard julliard at winehq.org
Mon Jul 25 11:43:07 CDT 2011


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Sat Jul 23 12:51:06 2011 +0200

mshtml: Moved script mode out of get_script_host to allow exec_script calls in Gecko script mode.

---

 dlls/mshtml/script.c |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/dlls/mshtml/script.c b/dlls/mshtml/script.c
index 01a849c..003413e 100644
--- a/dlls/mshtml/script.c
+++ b/dlls/mshtml/script.c
@@ -795,11 +795,6 @@ static ScriptHost *get_script_host(HTMLWindow *window, const GUID *guid)
 {
     ScriptHost *iter;
 
-    if(IsEqualGUID(&CLSID_JScript, guid) && window->scriptmode != SCRIPTMODE_ACTIVESCRIPT) {
-        TRACE("Ignoring JScript\n");
-        return NULL;
-    }
-
     LIST_FOR_EACH_ENTRY(iter, &window->script_hosts, ScriptHost, entry) {
         if(IsEqualGUID(guid, &iter->guid))
             return iter;
@@ -818,6 +813,11 @@ void doc_insert_script(HTMLWindow *window, nsIDOMHTMLScriptElement *nsscript)
         return;
     }
 
+    if(IsEqualGUID(&CLSID_JScript, &guid) && window->scriptmode != SCRIPTMODE_ACTIVESCRIPT) {
+        TRACE("Ignoring JScript\n");
+        return;
+    }
+
     script_host = get_script_host(window, &guid);
     if(!script_host)
         return;
@@ -859,6 +859,11 @@ IDispatch *script_parse_event(HTMLWindow *window, LPCWSTR text)
         ptr = text;
     }
 
+    if(IsEqualGUID(&CLSID_JScript, &guid) && window->scriptmode != SCRIPTMODE_ACTIVESCRIPT) {
+        TRACE("Ignoring JScript\n");
+        return NULL;
+    }
+
     script_host = get_script_host(window, &guid);
     if(!script_host || !script_host->parse_proc)
         return NULL;




More information about the wine-cvs mailing list