Unreviewed, rolling out r154989.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 4 Sep 2013 15:43:34 +0000 (15:43 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 4 Sep 2013 15:43:34 +0000 (15:43 +0000)
http://trac.webkit.org/changeset/154989
https://bugs.webkit.org/show_bug.cgi?id=120678

This patch might broke apps using webkitgtk not from the main
thread (Requested by msanchez on #webkit).

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewRunAsModal):
* UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
(WebKit::WebPopupMenuProxyGtk::showPopupMenu):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155044 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebKit2/ChangeLog
Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp

index fd70c691c6ab14a262172e5931b08f8479a1860e..aeaf52eb55c7602b3ded5b04a68bae0a41760900 100644 (file)
@@ -1,3 +1,17 @@
+2013-09-04  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r154989.
+        http://trac.webkit.org/changeset/154989
+        https://bugs.webkit.org/show_bug.cgi?id=120678
+
+        This patch might broke apps using webkitgtk not from the main
+        thread (Requested by msanchez on #webkit).
+
+        * UIProcess/API/gtk/WebKitWebView.cpp:
+        (webkitWebViewRunAsModal):
+        * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
+        (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
+
 2013-09-04  Zan Dobersek  <zdobersek@igalia.com>
 
         [GTK] Add support for the Wayland build target
 2013-09-04  Zan Dobersek  <zdobersek@igalia.com>
 
         [GTK] Add support for the Wayland build target
index 31871624ae92f9720200f72e66b7a2406b490c78..72fe66a42ead22faf2d9a485a99122532622fed2 100644 (file)
@@ -1560,7 +1560,9 @@ void webkitWebViewRunAsModal(WebKitWebView* webView)
     g_signal_emit(webView, signals[RUN_AS_MODAL], 0, NULL);
 
     webView->priv->modalLoop = adoptGRef(g_main_loop_new(0, FALSE));
     g_signal_emit(webView, signals[RUN_AS_MODAL], 0, NULL);
 
     webView->priv->modalLoop = adoptGRef(g_main_loop_new(0, FALSE));
+    gdk_threads_leave();
     g_main_loop_run(webView->priv->modalLoop.get());
     g_main_loop_run(webView->priv->modalLoop.get());
+    gdk_threads_enter();
 }
 
 void webkitWebViewClosePage(WebKitWebView* webView)
 }
 
 void webkitWebViewClosePage(WebKitWebView* webView)
index 1114a1840572e4b1f210f9858855a3b42f15d2fb..a41839a3eb9764ed4734af2e9768477e90ef3427 100644 (file)
@@ -97,7 +97,9 @@ void WebPopupMenuProxyGtk::showPopupMenu(const IntRect& rect, TextDirection text
     // menu right after calling WebPopupMenuProxy::showPopupMenu().
     m_runLoop = adoptGRef(g_main_loop_new(0, FALSE));
 
     // menu right after calling WebPopupMenuProxy::showPopupMenu().
     m_runLoop = adoptGRef(g_main_loop_new(0, FALSE));
 
+    gdk_threads_leave();
     g_main_loop_run(m_runLoop.get());
     g_main_loop_run(m_runLoop.get());
+    gdk_threads_enter();
 
     m_runLoop.clear();
 
 
     m_runLoop.clear();