There's a bug in https://trac.webkit.org/changeset/192536 If the call to tryAllocateStorage() in JSPropertyNameEnumerator::finishCreation() ends up having to do a GC, the JSPropertyNameEnumerator will not be in a good-enough state to handle a visitChildren() callback.
Created attachment 265959 [details] Patch
Created attachment 265961 [details] Patch
Comment on attachment 265961 [details] Patch r=me
From mac-debug bot: Regressions: Unexpected timeouts (1) js/property-name-enumerator-gc-151495.html [ Timeout ] I wonder if this test is too slow for debug. I'll check locally.
Comment on attachment 265961 [details] Patch Attachment 265961 [details] did not pass mac-debug-ews (mac): Output: http://webkit-queues.webkit.org/results/455095 New failing tests: js/property-name-enumerator-gc-151495.html
Created attachment 265969 [details] Archive of layout-test-results from ews116 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews116 Port: mac-yosemite Platform: Mac OS X 10.10.5
Created attachment 266027 [details] Patch for landing Take the number of test iterations down to 2000 (from 10000) so it won't timeout on debug. It's still enough to trip the bug, and finishes in a fraction of the time.
Comment on attachment 266027 [details] Patch for landing Clearing flags on attachment: 266027 Committed r192722: <http://trac.webkit.org/changeset/192722>
All reviewed patches have been landed. Closing bug.
<rdar://problem/23626411>
Created attachment 266033 [details] Patch 32-bit testers caught another issue; jsString() can trigger GC, so m_propertyNames must remain null until after all the property names have been stringified.
Comment on attachment 266033 [details] Patch r=me
reopen to let the CQ land the followup fix.
(In reply to comment #13) > reopen to let the CQ land the followup fix. Next time please file new bug report for followup patches.
Comment on attachment 266033 [details] Patch Clearing flags on attachment: 266033 Committed r192743: <http://trac.webkit.org/changeset/192743>
Re-opened since this is blocked by bug 151593