Title: [113970] trunk/Source/WebCore
Revision
113970
Author
[email protected]
Date
2012-04-12 06:39:54 -0700 (Thu, 12 Apr 2012)

Log Message

Web Inspector: Node Value should not get corrupt while jump over different matches in search.
https://bugs.webkit.org/show_bug.cgi?id=83758

The order in which updateEntryHide is called for cached
highlightResults is changed in "last changed first corrected" order to preserve the semantic of node.

Patch by Sam D <[email protected]> on 2012-04-12
Reviewed by Pavel Feldman.

No new tests required.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype._updateSearchHighlight):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (113969 => 113970)


--- trunk/Source/WebCore/ChangeLog	2012-04-12 13:33:24 UTC (rev 113969)
+++ trunk/Source/WebCore/ChangeLog	2012-04-12 13:39:54 UTC (rev 113970)
@@ -1,3 +1,18 @@
+2012-04-12  Sam D  <[email protected]>
+
+        Web Inspector: Node Value should not get corrupt while jump over different matches in search.
+        https://bugs.webkit.org/show_bug.cgi?id=83758
+        
+        The order in which updateEntryHide is called for cached
+        highlightResults is changed in "last changed first corrected" order to preserve the semantic of node.
+
+        Reviewed by Pavel Feldman.
+
+        No new tests required.
+
+        * inspector/front-end/ElementsTreeOutline.js:
+        (WebInspector.ElementsTreeElement.prototype._updateSearchHighlight):
+
 2012-03-05  Pierre Rossi  <[email protected]>
 
         [Qt] Use QRawFont when building with Qt 5

Modified: trunk/Source/WebCore/inspector/front-end/ElementsTreeOutline.js (113969 => 113970)


--- trunk/Source/WebCore/inspector/front-end/ElementsTreeOutline.js	2012-04-12 13:33:24 UTC (rev 113969)
+++ trunk/Source/WebCore/inspector/front-end/ElementsTreeOutline.js	2012-04-12 13:39:54 UTC (rev 113970)
@@ -634,10 +634,14 @@
             }
         }
 
-        var updater = show ? updateEntryShow : updateEntryHide;
-
-        for (var i = 0, size = this._highlightResult.length; i < size; ++i)
-            updater(this._highlightResult[i]);
+        // Preserve the semantic of node by following the order of updates for hide and show.
+        if (show) {
+            for (var i = 0, size = this._highlightResult.length; i < size; ++i)
+                updateEntryShow(this._highlightResult[i]);
+        } else {
+            for (var i = (this._highlightResult.length - 1); i >= 0; --i)
+                updateEntryHide(this._highlightResult[i]);
+        }
     },
 
     get hovered()
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to