Changeset 248094 in webkit


Ignore:
Timestamp:
Jul 31, 2019 9:24:50 PM (5 years ago)
Author:
Devin Rousso
Message:

Web Inspector: Uncaught Exception: TypeError: null is not an object (evaluating 'issueMessage.sourceCodeLocation.sourceCode')
https://bugs.webkit.org/show_bug.cgi?id=200296

Reviewed by Joseph Pecoraro.

When fetching all WI.IssueMessages for a given WI.SourceCode, the WI.IssueMessage may
be associated in a different way (e.g. by url, instead of WI.SourceCodeLocation). As such,
we should pass the WI.SourceCode along, and use it when adding the WI.IssueTreeElement.

  • UserInterface/Views/DebuggerSidebarPanel.js:

(WI.DebuggerSidebarPanel.prototype._addIssuesForSourceCode):
(WI.DebuggerSidebarPanel.prototype._addIssue):

  • UserInterface/Views/SourcesNavigationSidebarPanel.js:

(WI.SourcesNavigationSidebarPanel.prototype._addIssue):
(WI.SourcesNavigationSidebarPanel.prototype._addIssuesForSourceCode):

Location:
trunk/Source/WebInspectorUI
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebInspectorUI/ChangeLog

    r248052 r248094  
     12019-07-31  Devin Rousso  <drousso@apple.com>
     2
     3        Web Inspector: Uncaught Exception: TypeError: null is not an object (evaluating 'issueMessage.sourceCodeLocation.sourceCode')
     4        https://bugs.webkit.org/show_bug.cgi?id=200296
     5
     6        Reviewed by Joseph Pecoraro.
     7
     8        When fetching all `WI.IssueMessage`s for a given `WI.SourceCode`, the `WI.IssueMessage` may
     9        be associated in a different way (e.g. by url, instead of `WI.SourceCodeLocation`). As such,
     10        we should pass the `WI.SourceCode` along, and use it when adding the `WI.IssueTreeElement`.
     11
     12        * UserInterface/Views/DebuggerSidebarPanel.js:
     13        (WI.DebuggerSidebarPanel.prototype._addIssuesForSourceCode):
     14        (WI.DebuggerSidebarPanel.prototype._addIssue):
     15
     16        * UserInterface/Views/SourcesNavigationSidebarPanel.js:
     17        (WI.SourcesNavigationSidebarPanel.prototype._addIssue):
     18        (WI.SourcesNavigationSidebarPanel.prototype._addIssuesForSourceCode):
     19
    1202019-07-31  Devin Rousso  <drousso@apple.com>
    221
  • trunk/Source/WebInspectorUI/UserInterface/Views/DebuggerSidebarPanel.js

    r247803 r248094  
    585585        var issues = WI.consoleManager.issuesForSourceCode(sourceCode);
    586586        for (var issue of issues)
    587             this._addIssue(issue);
     587            this._addIssue(issue, sourceCode);
    588588    }
    589589
     
    13981398    }
    13991399
    1400     _addIssue(issueMessage)
     1400    _addIssue(issueMessage, sourceCode)
    14011401    {
    14021402        let issueTreeElement = this._scriptsContentTreeOutline.findTreeElement(issueMessage);
     
    14041404            return issueTreeElement;
    14051405
    1406         let parentTreeElement = this._addTreeElementForSourceCodeToTreeOutline(issueMessage.sourceCodeLocation.sourceCode, this._scriptsContentTreeOutline);
     1406        console.assert(sourceCode || (issueMessage.sourceCodeLocation && issueMessage.sourceCodeLocation.sourceCode));
     1407        let parentTreeElement = this._addTreeElementForSourceCodeToTreeOutline(sourceCode || issueMessage.sourceCodeLocation.sourceCode, this._scriptsContentTreeOutline);
    14071408        if (!parentTreeElement)
    14081409            return null;
  • trunk/Source/WebInspectorUI/UserInterface/Views/SourcesNavigationSidebarPanel.js

    r247803 r248094  
    10261026    }
    10271027
    1028     _addIssue(issueMessage)
     1028    _addIssue(issueMessage, sourceCode)
    10291029    {
    10301030        let issueTreeElement = this._resourcesTreeOutline.findTreeElement(issueMessage);
    10311031        if (!issueTreeElement) {
    1032             let parentTreeElement = this._resourcesTreeOutline.findTreeElement(issueMessage.sourceCodeLocation.sourceCode);
     1032            console.assert(sourceCode || (issueMessage.sourceCodeLocation && issueMessage.sourceCodeLocation.sourceCode));
     1033            let parentTreeElement = this._resourcesTreeOutline.findTreeElement(sourceCode || issueMessage.sourceCodeLocation.sourceCode);
    10331034            if (!parentTreeElement)
    10341035                return null;
     
    10691070    {
    10701071        for (let issue of WI.consoleManager.issuesForSourceCode(sourceCode))
    1071             this._addIssue(issue);
     1072            this._addIssue(issue, sourceCode);
    10721073    }
    10731074
Note: See TracChangeset for help on using the changeset viewer.