Index: third_party/WebKit/Source/devtools/front_end/coverage/CoverageModel.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/coverage/CoverageModel.js b/third_party/WebKit/Source/devtools/front_end/coverage/CoverageModel.js |
index d3617dfaffa010d17ebe5460144fbe8b96491c5a..3f9d743b0ef17de858bb3872b5c46d9973c88f76 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/coverage/CoverageModel.js |
+++ b/third_party/WebKit/Source/devtools/front_end/coverage/CoverageModel.js |
@@ -7,9 +7,9 @@ Coverage.RangeUseCount; |
/** @typedef {{ |
* contentProvider: !Common.ContentProvider, |
- * size: (number|undefined), |
- * unusedSize: (number|undefined), |
- * usedSize: (number|undefined), |
+ * size: number, |
+ * unusedSize: number, |
+ * usedSize: number, |
* type: !Coverage.CoverageType, |
* lineOffset: number, |
* columnOffset: number, |
@@ -99,10 +99,10 @@ Coverage.CoverageModel = class extends SDK.SDKModel { |
/** |
* @param {!SDK.DebuggerModel} debuggerModel |
* @param {!Array<!Protocol.Profiler.ScriptCoverage>} scriptsCoverage |
- * @return {!Promise<!Array<!Coverage.CoverageInfo>>} |
+ * @return {!Array<!Coverage.CoverageInfo>} |
*/ |
- static async _processJSCoverage(debuggerModel, scriptsCoverage) { |
- var promises = []; |
+ static _processJSCoverage(debuggerModel, scriptsCoverage) { |
+ var result = []; |
for (var entry of scriptsCoverage) { |
var script = debuggerModel.scriptForId(entry.scriptId); |
if (!script) |
@@ -112,10 +112,10 @@ Coverage.CoverageModel = class extends SDK.SDKModel { |
for (var range of func.ranges) |
ranges.push({startOffset: range.startOffset, endOffset: range.endOffset, count: range.count}); |
} |
- promises.push( |
- Coverage.CoverageModel._coverageInfoForText(script, script.lineOffset, script.columnOffset, ranges)); |
+ result.push(Coverage.CoverageModel._buildCoverageInfo( |
+ script, script.contentLength, script.lineOffset, script.columnOffset, ranges)); |
} |
- return Promise.all(promises); |
+ return result; |
} |
/** |
@@ -133,9 +133,9 @@ Coverage.CoverageModel = class extends SDK.SDKModel { |
/** |
* @param {!SDK.CSSModel} cssModel |
* @param {!Array<!Protocol.CSS.RuleUsage>} ruleUsageList |
- * @return {!Promise<!Array<!Coverage.CoverageInfo>>} |
+ * @return {!Array<!Coverage.CoverageInfo>} |
*/ |
- static async _processCSSCoverage(cssModel, ruleUsageList) { |
+ static _processCSSCoverage(cssModel, ruleUsageList) { |
/** @type {!Map<?SDK.CSSStyleSheetHeader, !Array<!Coverage.RangeUseCount>>} */ |
var rulesByStyleSheet = new Map(); |
for (var rule of ruleUsageList) { |
@@ -147,20 +147,22 @@ Coverage.CoverageModel = class extends SDK.SDKModel { |
} |
ranges.push({startOffset: rule.startOffset, endOffset: rule.endOffset, count: Number(rule.used)}); |
} |
- return Promise.all(Array.from( |
+ return Array.from( |
rulesByStyleSheet.entries(), |
- entry => |
- Coverage.CoverageModel._coverageInfoForText(entry[0], entry[0].startLine, entry[0].startColumn, entry[1]))); |
+ entry => Coverage.CoverageModel._buildCoverageInfo( |
+ entry[0], entry[0].contentLength, entry[0].startLine, entry[0].startColumn, entry[1])); |
} |
/** |
* @param {!Common.ContentProvider} contentProvider |
+ * @param {number} contentLength |
* @param {number} startLine |
* @param {number} startColumn |
* @param {!Array<!Coverage.RangeUseCount>} ranges |
- * @return {!Promise<?Coverage.CoverageInfo>} |
+ * @return {!Coverage.CoverageInfo} |
*/ |
- static async _coverageInfoForText(contentProvider, startLine, startColumn, ranges) { |
+ static _buildCoverageInfo(contentProvider, contentLength, startLine, startColumn, ranges) { |
+ /** @type Coverage.CoverageType */ |
var coverageType; |
var url = contentProvider.contentURL(); |
if (contentProvider.contentType().isScript()) |
@@ -197,16 +199,11 @@ Coverage.CoverageModel = class extends SDK.SDKModel { |
unusedSize += entry.ownSize; |
} |
- // FIXME: get rid of this when we get the size upfront. |
- var content = await contentProvider.requestContent(); |
- if (typeof content !== 'string') |
- return null; |
- |
var coverageInfo = { |
contentProvider: contentProvider, |
ranges: ranges, |
type: coverageType, |
- size: content.length, |
+ size: contentLength, |
usedSize: usedSize, |
unusedSize: unusedSize, |
lineOffset: startLine, |