webengine/osswebengine/WebCore/bindings/js/kjs_proxy.cpp
changeset 13 10e98eab6f85
parent 0 dd21522fd290
--- a/webengine/osswebengine/WebCore/bindings/js/kjs_proxy.cpp	Fri May 08 08:25:06 2009 +0300
+++ b/webengine/osswebengine/WebCore/bindings/js/kjs_proxy.cpp	Fri Jul 03 15:54:40 2009 +0100
@@ -54,6 +54,7 @@
     ASSERT(!m_script || !m_script->context());
     
     if (m_script) {
+        ((JSDOMWindow*)m_globalObject)->clear();
         m_script = 0;
     
         // It's likely that destroying the interpreter has created a lot of garbage.
@@ -151,10 +152,10 @@
 
   // Build the global object - which is a Window instance
   JSLock lock;
-  JSObject* globalObject = new JSDOMWindow(m_frame->domWindow());
-
+  m_globalObject = new JSDOMWindow(m_frame->domWindow());
+  
   // Create a KJS interpreter for this frame
-  m_script = new ScriptInterpreter(globalObject, m_frame);
+  m_script = new ScriptInterpreter(m_globalObject, m_frame);
 
   String userAgent = m_frame->loader()->userAgent(m_frame->document() ? m_frame->document()->URL() : KURL());
   if (userAgent.find("Microsoft") >= 0 || userAgent.find("MSIE") >= 0)