Title: [201136] branches/safari-602.1.32-branch/Source/WebInspectorUI
Revision
201136
Author
[email protected]
Date
2016-05-19 01:40:06 -0700 (Thu, 19 May 2016)

Log Message

Merge r200805. rdar://problem/26252938

Modified Paths

Diff

Modified: branches/safari-602.1.32-branch/Source/WebInspectorUI/ChangeLog (201135 => 201136)


--- branches/safari-602.1.32-branch/Source/WebInspectorUI/ChangeLog	2016-05-19 08:40:03 UTC (rev 201135)
+++ branches/safari-602.1.32-branch/Source/WebInspectorUI/ChangeLog	2016-05-19 08:40:06 UTC (rev 201136)
@@ -1,5 +1,22 @@
 2016-05-19  Babak Shafiei  <[email protected]>
 
+        Merge r200805. rdar://problem/26252938
+
+    2016-05-12  Matt Baker  <[email protected]>
+
+            Web Inspector: Uncaught exception when removing selected Timeline instrument
+            https://bugs.webkit.org/show_bug.cgi?id=157639
+            <rdar://problem/26252938>
+
+            Reviewed by Timothy Hatcher.
+
+            * UserInterface/Views/TimelineOverview.js:
+            (WebInspector.TimelineOverview.prototype._instrumentRemoved):
+            Remove timeline tree element before modifying state. Removing the tree
+            element triggers a SelectionDidChange event, which can have side effects.
+
+2016-05-19  Babak Shafiei  <[email protected]>
+
         Merge r200779. rdar://problem/26239051
 
     2016-05-12  Matt Baker  <[email protected]>

Modified: branches/safari-602.1.32-branch/Source/WebInspectorUI/UserInterface/Views/TimelineOverview.js (201135 => 201136)


--- branches/safari-602.1.32-branch/Source/WebInspectorUI/UserInterface/Views/TimelineOverview.js	2016-05-19 08:40:03 UTC (rev 201135)
+++ branches/safari-602.1.32-branch/Source/WebInspectorUI/UserInterface/Views/TimelineOverview.js	2016-05-19 08:40:06 UTC (rev 201136)
@@ -634,16 +634,19 @@
         console.assert(instrument instanceof WebInspector.Instrument, instrument);
 
         let timeline = this._recording.timelineForInstrument(instrument);
-        console.assert(this._overviewGraphsByTypeMap.has(timeline.type), timeline);
+        let overviewGraph = this._overviewGraphsByTypeMap.get(timeline.type);
+        console.assert(overviewGraph, "Missing overview graph for timeline type", timeline.type);
 
-        let overviewGraph = this._overviewGraphsByTypeMap.take(timeline.type);
+        let treeElement = this._treeElementsByTypeMap.get(timeline.type);
+        let shouldSuppressOnDeselect = false;
+        let shouldSuppressSelectSibling = true;
+        this._timelinesTreeOutline.removeChild(treeElement, shouldSuppressOnDeselect, shouldSuppressSelectSibling);
+
         overviewGraph.removeEventListener(WebInspector.TimelineOverviewGraph.Event.RecordSelected, this._recordSelected, this);
         this._graphsContainerView.removeSubview(overviewGraph);
 
-        let treeElement = this._treeElementsByTypeMap.take(timeline.type);
-        let shouldSuppressOnDeselect = false;
-        let shouldSuppressSelectSibling = true;
-        this._timelinesTreeOutline.removeChild(treeElement, shouldSuppressOnDeselect, shouldSuppressSelectSibling);
+        this._overviewGraphsByTypeMap.delete(timeline.type);
+        this._treeElementsByTypeMap.delete(timeline.type);
     }
 
     _markerAdded(event)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to