Closed Bug 1167176 Opened 6 years ago Closed 6 years ago

Fatal assertion: Assertion failure: false (Only operate on BGRA8 surfs.), at gfx/thebes/gfxUtils.cpp:188 -- Opening Inspector on some WebGL containing pages causes the browser to crash

Categories

(Core :: Canvas: WebGL, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla41
Tracking Status
firefox41 --- fixed

People

(Reporter: mahdi, Assigned: lsalzman)

Details

(Whiteboard: [gfx-noted])

Attachments

(2 files)

Attached file webgl-crash.log
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:41.0) Gecko/20100101 Firefox/41.0
Build ID: 20150521020354

Steps to reproduce:

This will cause your browser to crash:

Open http://104.131.12.163:3000/
Open inspector

The page uses these libraries: Phaser.js, System.js (to load modules), Nunjucks, Sprint.js, es6-module-loader.js, EventEmitter.js.

And the source is compiled from es6 to es5 using Babel.

I tested on Phaser.js and WebGL demos, neither caused my browser to crash.

If the source code is needed, ask, I hope the team agrees.
Jeff, can you help here? The assertion line seems to have been introduced by you. :-)
Flags: needinfo?(jgilbert)
Summary: Opening Inspector on some WebGL containing pages causes the browser to crash → Fatal assertion: Assertion failure: false (Only operate on BGRA8 surfs.), at gfx/thebes/gfxUtils.cpp:188 -- Opening Inspector on some WebGL containing pages causes the browser to crash
Whiteboard: [gfx-noted]
I couldn't manage to run the testcase, but just eyeballing the code is enough to see how/why this is occurring.

There's no point in premultiplying the snapshot if the context is not using alpha. In that case, it creates a surface of B8G8R8X8, which triggers the assertion. The sane thing to do here, thus, is not to premultiply when that is the case...
Assignee: nobody → lsalzman
Status: UNCONFIRMED → NEW
Ever confirmed: true
Attachment #8613169 - Flags: review?(jgilbert)
Attachment #8613169 - Flags: review?(jgilbert) → review+
Keywords: checkin-needed
can we get a try run, thanks!
Flags: needinfo?(lsalzman)
Keywords: checkin-needed
(In reply to Carsten Book [:Tomcat] from comment #3)
> can we get a try run, thanks!

https://treeherder.mozilla.org/#/jobs?repo=try&revision=2c39507c45ec
Flags: needinfo?(lsalzman)
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/d216678de399
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla41
Flags: needinfo?(jgilbert)
You need to log in before you can comment on or make changes to this bug.