remove session' objects from context when frame is unloaded
authorGrzegorz Krawczyk <g.krawczyk@samsung.com>
Mon, 26 Nov 2012 16:28:06 +0000 (17:28 +0100)
committerGrzegorz Krawczyk <g.krawczyk@samsung.com>
Mon, 26 Nov 2012 18:10:21 +0000 (19:10 +0100)
[Issue#] TWEB-427
[Problem] JavaScipt objects are not released when iframe src is changed.
[Cause] N/A
[Solution] Remove objects from context.
[SCMRequest] N/A

Change-Id: Ifc9d661b12f43f4c8d66d783fbda1d4343a35ef1

src/plugin-loading/plugin_logic.cpp
src/standards/W3C/Widget/plugin_initializer.cpp

index df34bc1..315bb74 100644 (file)
@@ -327,6 +327,7 @@ void PluginLogic::Impl::unloadFrame(JSGlobalContextRef context)
     }
 
     sessionIt->second->unloadFrame(context);
+    m_sessions.erase(sessionIt);
 }
 
 void PluginLogic::Impl::setCustomProperties(JSGlobalContextRef context,
index 05d385b..6042af9 100644 (file)
@@ -121,10 +121,6 @@ PLUGIN_CLASS_MAP_ADD_INTERFACE_PRODUCT(
         INTERFACE_WIDGET_NAME,
         &Options::WidgetOptions)
 
-PLUGIN_CLASS_MAP_ADD_CLASS(WRT_JS_EXTENSION_OBJECT_GLOBAL,
-        OBJECT_WIDGET,
-        (js_class_template_getter)WrtPlugins::W3C::JSWidget::getClassRef,
-        &Options::WidgetOptions)
 PLUGIN_CLASS_MAP_END
 
 #undef OBJECT_WIDGET