Title: [111003] trunk/Source/WebCore
- Revision
- 111003
- Author
- [email protected]
- Date
- 2012-03-16 06:50:33 -0700 (Fri, 16 Mar 2012)
Log Message
Web Inspector: HeapSnapshot: merge two long operations into one.
https://bugs.webkit.org/show_bug.cgi?id=81347
Reviewed by Yury Semikhatsky.
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype.aggregates):
(WebInspector.HeapSnapshot.prototype._buildAggregates):
(WebInspector.HeapSnapshot.prototype._buildAggregates.forDominatedNodes):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (111002 => 111003)
--- trunk/Source/WebCore/ChangeLog 2012-03-16 13:45:40 UTC (rev 111002)
+++ trunk/Source/WebCore/ChangeLog 2012-03-16 13:50:33 UTC (rev 111003)
@@ -1,3 +1,15 @@
+2012-03-16 Ilya Tikhonovsky <[email protected]>
+
+ Web Inspector: HeapSnapshot: merge two long operations into one.
+ https://bugs.webkit.org/show_bug.cgi?id=81347
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/front-end/HeapSnapshot.js:
+ (WebInspector.HeapSnapshot.prototype.aggregates):
+ (WebInspector.HeapSnapshot.prototype._buildAggregates):
+ (WebInspector.HeapSnapshot.prototype._buildAggregates.forDominatedNodes):
+
2012-03-16 Gavin Peters <[email protected]>
Add asserts and improve logging in PageCache.
Modified: trunk/Source/WebCore/inspector/front-end/HeapSnapshot.js (111002 => 111003)
--- trunk/Source/WebCore/inspector/front-end/HeapSnapshot.js 2012-03-16 13:45:40 UTC (rev 111002)
+++ trunk/Source/WebCore/inspector/front-end/HeapSnapshot.js 2012-03-16 13:50:33 UTC (rev 111003)
@@ -893,6 +893,9 @@
aggregates: function(sortedIndexes, key, filterString)
{
+ if (!this._retainers)
+ this._buildRetainers();
+
if (!this._aggregates) {
this._aggregates = {};
this._aggregatesSortedFlags = {};
@@ -1025,7 +1028,7 @@
_buildAggregates: function(filter)
{
- function shouldSkip(node, classIndex)
+ function shouldSkip(node)
{
if (filter && !filter(node))
return true;
@@ -1039,9 +1042,9 @@
var node = new WebInspector.HeapSnapshotNode(this, this.nodeIndexes[0]);
for (var i = 0, l = this.nodeCount; i < l; ++i) {
node.nodeIndex = this.nodeIndexes[i];
+ if (shouldSkip(node))
+ continue;
var classIndex = node.classIndex;
- if (shouldSkip(node, classIndex))
- continue;
if (!(classIndex in aggregates)) {
var nodeType = node.type;
var nameMatters = nodeType === "object" || nodeType === "native";
@@ -1065,7 +1068,7 @@
var node = new WebInspector.HeapSnapshotNode(snapshot, nodeIndex);
var classIndex = node.classIndex;
var seen = !!seenClassNameIndexes[classIndex];
- if (!seen && classIndex in aggregates && !shouldSkip(node, classIndex)) {
+ if (!seen && classIndex in aggregates && !shouldSkip(node)) {
aggregates[classIndex].maxRet += node.retainedSize;
seenClassNameIndexes[classIndex] = true;
}
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes