| Summary: | Web Inspector: Crash under WebCore::domWindowFromExecState reloading page with inspector open | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Joseph Pecoraro <joepeck> | ||||
| Component: | Web Inspector | Assignee: | Joseph Pecoraro <joepeck> | ||||
| Status: | RESOLVED FIXED | ||||||
| Severity: | Normal | CC: | ap, commit-queue, graouts, joepeck, jonowells, mark.lam, mattbaker, nvasilyev, timothy, webkit-bug-importer | ||||
| Priority: | P2 | Keywords: | DoNotImportToRadar, InRadar | ||||
| Version: | 528+ (Nightly build) | ||||||
| Hardware: | All | ||||||
| OS: | All | ||||||
| Attachments: |
|
||||||
|
Description
Joseph Pecoraro
2015-05-05 13:35:53 PDT
Here we are in frameWindowDiscarded, trying to remove certain (globalExec) ExecStates from our table, but the JSGlobalObject that ExecState is tied to was already destroyed. Created attachment 252405 [details]
[PATCH] Proposed Fix
I was unable to create a reduction/regression test for this, but seeing as this was caught by running tests in the past I think that is fine.
In general we should cleanup our management of InjectedScript/ExecutionContextIdentifiers instead of always making an InjectedScript like we do here. I'd like to do that cleanup in a separate change and address the crash now.
Comment on attachment 252405 [details]
[PATCH] Proposed Fix
r=me
Comment on attachment 252405 [details] [PATCH] Proposed Fix Clearing flags on attachment: 252405 Committed r183838: <http://trac.webkit.org/changeset/183838> All reviewed patches have been landed. Closing bug. > this was caught by running tests in the past I think that is fine Should any test expectations be updated now? This was seen on tests, but only because the crash was misattributed sometimes. Looking at the fix, I'm puzzled about why this is Yosemite only. # Also, these tests are flaky in Debug/Release builds, <https://bugs.webkit.org/show_bug.cgi?id=138636> # and <https://bugs.webkit.org/show_bug.cgi?id=129817>. [ Yosemite+ ] inspector/css/matched-style-properties.html [ Pass Timeout ] [ Yosemite+ ] inspector/css/pseudo-element-matches.html [ Pass Timeout ] [ Yosemite+ ] inspector/css/selector-specificity.html [ Pass Timeout Crash ] [ Yosemite+ ] inspector/dom/content-flow-content-removal.html [ Skip ] [ Yosemite+ ] inspector/dom/content-flow-list.html [ Skip ] [ Yosemite+ ] inspector/model/parse-script-syntax-tree.html [ Pass Timeout ] [ Yosemite+ ] inspector/test-harness-trivially-works.html [ Skip ] |