Merge "Fix deadlock of WebViewCoreThread"
diff --git a/core/java/android/webkit/CallbackProxy.java b/core/java/android/webkit/CallbackProxy.java
index a326da2..c3c5103 100644
--- a/core/java/android/webkit/CallbackProxy.java
+++ b/core/java/android/webkit/CallbackProxy.java
@@ -305,7 +305,12 @@
         // in the UI thread. The WebViewClient and WebChromeClient functions
         // that check for a non-null callback are ok because java ensures atomic
         // 32-bit reads and writes.
-        if (messagesBlocked()) return;
+        if (messagesBlocked()) {
+            synchronized (this) {
+                notify();
+            }
+            return;
+        }
         switch (msg.what) {
             case PAGE_STARTED:
                 String startedUrl = msg.getData().getString("url");