| Summary: | Crash in GraphicsContext3D::getInternalFramebufferSize | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Dean Jackson <dino> | ||||||
| Component: | New Bugs | Assignee: | Dean Jackson <dino> | ||||||
| Status: | RESOLVED FIXED | ||||||||
| Severity: | Normal | CC: | ap, commit-queue, esprehn+autocc, gyuyoung.kim, kondapallykalyan, roger_fong | ||||||
| Priority: | P2 | ||||||||
| Version: | 528+ (Nightly build) | ||||||||
| Hardware: | Unspecified | ||||||||
| OS: | Unspecified | ||||||||
| Bug Depends on: | 145597 | ||||||||
| Bug Blocks: | |||||||||
| Attachments: |
|
||||||||
|
Description
Dean Jackson
2015-05-29 15:49:33 PDT
Created attachment 253928 [details]
Patch
Comment on attachment 253928 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=253928&action=review > Source/WebCore/ChangeLog:12 > + This can't be easily tested automatically, because it's a specific > + configuration of Safari that uses WebGL in this manner. We should add the necessary infrastructure to make it testable. Created attachment 254103 [details]
Patch
Comment on attachment 254103 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=254103&action=review > LayoutTests/fast/canvas/webgl/useWhilePending.html:18 > + window.internals.settings.setForcePendingWebGLPolicy(false); If you reset the property in InternalSettings::resetToConsistentState this won't be necessary. Committed r185128: <http://trac.webkit.org/changeset/185128> The new test times out on some bots: https://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&tests=fast%2Fcanvas%2Fwebgl%2FuseWhilePending.html That was because the test is not expected to work with WebKit1. However, WebKit2 is broken too, it hits a very scary assertion: <https://build.webkit.org/results/Apple%20Mavericks%20Debug%20WK2%20(Tests)/r185140%20(12167)/fast/canvas/webgl/viewport-unchanged-upon-resize-crash-log.txt>. This may be a pre-existing bug, but given that: 1) it's a very bad assertion to hit, and 2) it essentially forces us to skip the test, and 3) Sam requested this fix to be tested, I'm going to roll out. I suspect that there is an actual issue with uninitialized WebGL contexts when navigating. Re-opened since this is blocked by bug 145597 Re-landed in https://trac.webkit.org/r185172 Alexey was right - it was doing some "bad stuff" with the unitialised context, and hadn't been tested before. This bug has been around for about a year. The fix was pretty clear - to add renderingContext->suspendIfNeeded(); |