Web Inspector: exception in console when there are watch expressions
authoryurys@chromium.org <yurys@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 May 2012 10:43:10 +0000 (10:43 +0000)
committeryurys@chromium.org <yurys@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 May 2012 10:43:10 +0000 (10:43 +0000)
https://bugs.webkit.org/show_bug.cgi?id=85351

Check if script execution is still paused before trying to resolve an
object for script popover because execution may be resumed after popover
showing is scheduled but before we start resolving the object under
the cursor in which case there is no selected call frame any more and
we should hide the popover.

Reviewed by Pavel Feldman.

* inspector/front-end/JavaScriptSourceFrame.js:
(WebInspector.JavaScriptSourceFrame.prototype._resolveObjectForPopover):

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

Source/WebCore/ChangeLog
Source/WebCore/inspector/front-end/JavaScriptSourceFrame.js

index 4cfad51..2c0efde 100644 (file)
@@ -1,3 +1,19 @@
+2012-05-02  Yury Semikhatsky  <yurys@chromium.org>
+
+        Web Inspector: exception in console when there are watch expressions
+        https://bugs.webkit.org/show_bug.cgi?id=85351
+
+        Check if script execution is still paused before trying to resolve an
+        object for script popover because execution may be resumed after popover
+        showing is scheduled but before we start resolving the object under
+        the cursor in which case there is no selected call frame any more and
+        we should hide the popover.
+
+        Reviewed by Pavel Feldman.
+
+        * inspector/front-end/JavaScriptSourceFrame.js:
+        (WebInspector.JavaScriptSourceFrame.prototype._resolveObjectForPopover):
+
 2012-05-02  Tommy Widenflycht  <tommyw@google.com>
 
         MediaStream API: Changing webkitGetUserMedia to take an object instead of a string
index 0a86591..f64c0d3 100644 (file)
@@ -279,6 +279,10 @@ WebInspector.JavaScriptSourceFrame.prototype = {
                 this._highlightElement.addStyleClass("source-frame-eval-expression");
         }
 
+        if (!WebInspector.debuggerModel.isPaused()) {
+            this._popoverHelper.hidePopover();
+            return;
+        }
         var selectedCallFrame = WebInspector.debuggerModel.selectedCallFrame();
         selectedCallFrame.evaluate(this._highlightElement.textContent, objectGroupName, false, true, false, showObjectPopover.bind(this));
     },