Chromium Code Reviews| Index: Source/devtools/front_end/network/NetworkPanel.js |
| diff --git a/Source/devtools/front_end/network/NetworkPanel.js b/Source/devtools/front_end/network/NetworkPanel.js |
| index f30921a61a9394baf766682aff570aa2576eba71..8651fb24bb9751c9b5c57c3bb7dac75409202802 100644 |
| --- a/Source/devtools/front_end/network/NetworkPanel.js |
| +++ b/Source/devtools/front_end/network/NetworkPanel.js |
| @@ -1012,16 +1012,38 @@ WebInspector.NetworkLogView.prototype = { |
| */ |
| _generateScriptInitiatedPopoverContent: function(request) |
| { |
| - var stackTrace = request.initiator.stackTrace; |
| var framesTable = document.createElement("table"); |
| - for (var i = 0; i < stackTrace.length; ++i) { |
| - var stackFrame = stackTrace[i]; |
| - var row = document.createElement("tr"); |
| - row.createChild("td").textContent = stackFrame.functionName || WebInspector.UIString("(anonymous function)"); |
| - row.createChild("td").textContent = " @ "; |
| - row.createChild("td").appendChild(this._linkifier.linkifyLocation(request.target(), stackFrame.url, stackFrame.lineNumber - 1, stackFrame.columnNumber - 1)); |
| - framesTable.appendChild(row); |
| + |
| + /** |
| + * @param {!Array.<!ConsoleAgent.CallFrame>} stackTrace |
| + * @this {WebInspector.NetworkLogView} |
| + */ |
| + function appendStackTrace(stackTrace) |
| + { |
| + for (var i = 0; i < stackTrace.length; ++i) { |
| + var stackFrame = stackTrace[i]; |
| + var row = document.createElement("tr"); |
| + row.createChild("td").textContent = stackFrame.functionName || WebInspector.UIString("(anonymous function)"); |
| + row.createChild("td").textContent = " @ "; |
| + row.createChild("td").appendChild(this._linkifier.linkifyLocation(request.target(), stackFrame.url, stackFrame.lineNumber - 1, stackFrame.columnNumber - 1)); |
| + framesTable.appendChild(row); |
| + } |
| } |
| + |
| + appendStackTrace.call(this, request.initiator.stackTrace); |
| + |
| + var asyncStackTrace = request.initiator.asyncStackTrace; |
| + for (; asyncStackTrace; asyncStackTrace = asyncStackTrace.asyncStackTrace) { |
|
eustas
2014/07/24 13:47:01
may be use "while"?
aandrey
2014/07/24 13:51:12
Done.
|
| + var callFrames = asyncStackTrace.callFrames; |
| + if (!callFrames || !callFrames.length) |
| + break; |
| + var row = framesTable.createChild("tr"); |
| + row.createChild("td", "network-async-trace-description").textContent = WebInspector.asyncStackTraceLabel(asyncStackTrace.description); |
| + row.createChild("td"); |
| + row.createChild("td"); |
| + appendStackTrace.call(this, callFrames); |
| + } |
| + |
| return framesTable; |
| }, |