Bug 65213

Summary: Web Inspector: [Chromium] REGRESSION: Uncaught TypeError: Cannot read property 'isTracingToWindowObjects' of undefined
Product: WebKit Reporter: Mikhail Naganov <mnaganov>
Component: Web Inspector (Deprecated)Assignee: Mikhail Naganov <mnaganov>
Status: RESOLVED FIXED    
Severity: Normal CC: apavlov, bweinstein, dglazkov, joepeck, keishi, loislo, pfeldman, pmuellr, rik, timothy, webkit.review.bot, yurys
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
patch pfeldman: review+, mnaganov: commit-queue-

Description Mikhail Naganov 2011-07-26 15:44:22 PDT
From http://code.google.com/p/chromium/issues/detail?id=90518


Chrome Version       : 14.0.825.0
OS Version: Windows 7
URLs (if applicable) : devtools
Other browsers tested: -

What steps will reproduce the problem?
1. Go to chrome://extensions/
2. Click an extensions background page (I used AdBlock)
3. Click the tab 'audits'
4. Select 'reload page and audit on load' and press Run
5. Wait a few seconds
6. Right mouse click the devtools -> inspect element
7. Notice Uncaught TypeError: Cannot read property 'isTracingToWindowObjects' of undefined in DevTools.js line 46465
"if (this.snapshotView.isTracingToWindowObjects)"

What is the expected result?
No errors

What happens instead?
JS error

Please provide any additional information below. Attach a screenshot if possible.
The audits test never finishes...

UserAgentString: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.825.0 Safari/535.1
Comment 1 Mikhail Naganov 2011-07-26 16:06:02 PDT
Can't repro. See the original bug description.
Comment 2 Pavel Feldman 2011-07-26 21:48:23 PDT
I can see a clear possibility of this happening:

WebInspector.HeapSnapshotRetainingPathsList.prototype.setDataSource has a guard preventing snapshotView from being assigned:

if (this._nodeIndex === nodeIndex)
            return;

subsequent refresh call will hit the problem described.
Comment 3 Mikhail Naganov 2011-07-27 02:11:18 PDT
Yes, it can be reproduced by changing the current value of the "Paths from the selected object" with no heap object previously selected.
Comment 4 Mikhail Naganov 2011-07-27 02:14:31 PDT
Created attachment 102109 [details]
patch
Comment 5 WebKit Review Bot 2011-07-27 02:37:47 PDT
Comment on attachment 102109 [details]
patch

Attachment 102109 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/9249743

New failing tests:
fast/canvas/webgl/framebuffer-test.html
Comment 6 Mikhail Naganov 2011-07-27 03:03:26 PDT
Manually committed http://trac.webkit.org/changeset/91829

        Web Inspector: [Chromium] REGRESSION: Uncaught TypeError: Cannot read property 'isTracingToWindowObjects' of undefined
        https://bugs.webkit.org/show_bug.cgi?id=65213

        Reviewed by Pavel Feldman.

        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.HeapSnapshotRetainingPathsList.prototype.refresh):