Avoid icon database crash
authorChanghyup Jwa <ch.jwa@samsung.com>
Sun, 7 Apr 2013 13:12:08 +0000 (22:12 +0900)
committerChanghyup Jwa <ch.jwa@samsung.com>
Sun, 7 Apr 2013 14:42:27 +0000 (23:42 +0900)
[Title] Avoid icon database crash
[Issue#] N_SE-32487
[Problem] Crash on icon database
[Cause] Opensource's icon database has conflict
[Solution] Avoid opensource's icon database

Change-Id: I09ba89f884e077e0fdf1f0abf77844511687269b

Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp
Source/WebKit2/UIProcess/API/efl/ewk_context.cpp
Source/WebKit2/UIProcess/API/efl/ewk_view.cpp

index f6430b4..55658c8 100755 (executable)
@@ -891,6 +891,9 @@ void EwkViewImpl::setTouchEventsEnabled(bool enabled)
  */
 void EwkViewImpl::informIconChange()
 {
+#if ENABLE(TIZEN_ICON_DATABASE)
+    return;
+#endif
     Ewk_Favicon_Database* iconDatabase = context->faviconDatabase();
     ASSERT(iconDatabase);
 
index 9dd674e..415ad9b 100755 (executable)
@@ -199,6 +199,9 @@ Ewk_Cookie_Manager* Ewk_Context::cookieManager()
 
 Ewk_Favicon_Database* Ewk_Context::faviconDatabase()
 {
+#if ENABLE(TIZEN_ICON_DATABASE)
+    return 0;
+#endif
     if (!m_faviconDatabase) {
         WKRetainPtr<WKIconDatabaseRef> iconDatabase = WKContextGetIconDatabase(m_context.get());
         // Set the database path if it is not open yet.
index efd814c..9cc054c 100755 (executable)
@@ -757,9 +757,11 @@ static Evas_Smart_Class g_parentSmartClass = EVAS_SMART_CLASS_INIT_NULL;
 
 static void _ewk_view_impl_del(EwkViewImpl* impl)
 {
+#if !ENABLE(TIZEN_ICON_DATABASE)
     /* Unregister icon change callback */
     Ewk_Favicon_Database* iconDatabase = impl->context->faviconDatabase();
     iconDatabase->unwatchChanges(_ewk_view_on_favicon_changed);
+#endif
 
     delete impl;
 }
@@ -1215,11 +1217,11 @@ static void _ewk_view_initialize(Evas_Object* ewkView, PassRefPtr<Ewk_Context> c
     impl->resourceLoadClient = ResourceLoadClientEfl::create(impl);
     impl->findClient = FindClientEfl::create(impl);
     impl->formClient = FormClientEfl::create(impl);
-
+#if !ENABLE(TIZEN_ICON_DATABASE)
     /* Listen for favicon changes */
     Ewk_Favicon_Database* iconDatabase = impl->context->faviconDatabase();
     iconDatabase->watchChanges(IconChangeCallbackData(_ewk_view_on_favicon_changed, ewkView));
-
+#endif
 #if ENABLE(TIZEN_WEBKIT2_THEME_SET_INTERNAL)
     ewk_view_theme_set(ewkView, "/usr/share/edje/webkit.edj");
 #endif