Bug 53218
| Summary: | Add a test mode to WebKit2 that exercises reentrancy while waiting for reply to a synchronous message | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Adam Roben (:aroben) <aroben> |
| Component: | WebKit2 | Assignee: | Adam Roben (:aroben) <aroben> |
| Status: | RESOLVED INVALID | ||
| Severity: | Normal | CC: | andersca, sam |
| Priority: | P2 | Keywords: | InRadar, PlatformOnly |
| Version: | 528+ (Nightly build) | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
Adam Roben (:aroben)
As described in bug 51351 comment 4 and in bug 51352, we're going to make WebKit2 spin a run loop while waiting for a reply to all synchronous messages. This will provide many more opportunities for reentrancy into WebKit. To uncover issues this causes, we should add a test mode to WebKit2 that explicitly causes this reentrancy to happen.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Adam Roben (:aroben)
One way to do this is:
Add a message-only window inside WebKit2. Whenever we are about to spin a run loop while waiting for a reply to a synchronous message, post a custom window message to the message-only window. When the message-only window receives the message, make some call into WebKit (e.g., try to close a page, modify the DOM and trigger layout, etc.).
Adam Roben (:aroben)
We could turn this mode on while running the regression tests, e.g.
Anders Carlsson
<rdar://problem/8922495>