Closed
Bug 994755
Opened 10 years ago
Closed 8 years ago
crash in mozilla::GetWebGLTexelFormat(unsigned int, unsigned int)
Categories
(Core :: Graphics: CanvasWebGL, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: jujjyl, Assigned: u480271)
Details
(Keywords: crash)
Crash Data
Attachments
(2 files)
2.28 KB,
patch
|
jgilbert
:
review+
|
Details | Diff | Splinter Review |
11.01 KB,
patch
|
jgilbert
:
feedback+
ehsan.akhgari
:
feedback-
|
Details | Diff | Splinter Review |
This bug was filed from the Socorro interface and is report bp-fc753aec-8950-4cd2-b537-e81232140410. ============================================================= 1. Visit http://alteredqualia.com/xg/examples/animation_physics_terrain.html Observed: Crashes the browser, see today's Nightly: https://crash-stats.mozilla.com/report/index/801b10f7-bfe5-4313-a4f0-fe7162140410 a few days old Nightly: https://crash-stats.mozilla.com/report/index/fc753aec-8950-4cd2-b537-e81232140410 https://crash-stats.mozilla.com/report/index/7aafa8d4-881b-4277-8d4f-2f9702140410 https://crash-stats.mozilla.com/report/index/78f59e66-44f3-472e-b7d0-94c202140410
Jukka, I've fixed the crash on Mac, but everything is really black. I guess there is 0-1 clamping going on. I'm seeing an assert in http://dxr.mozilla.org/mozilla-central/source/js/src/jit/IonAnalysis.cpp#977
Reporter | ||
Comment 3•10 years ago
|
||
Dan, sorry, I don't know at all about what the sample should be doing - it's something I stumbled upon, and just noticed that it was systematically crashing.
Flags: needinfo?(jujjyl)
Missed handling of internal formats with 32F and 16F variant.
Attachment #8407326 -
Flags: review?(jgilbert)
There has to be a better way. Also MOZ_CRASH is nasty in non-nightly builds. I have some ideas.
I've added an "internal error" like ErrorInvalidEnum, etc that logs to the javascript console. In nightly and "default" builds this function then MOZ_CRASH so we get crash reports but it doesn't crash in other builds. Open question is how to handle errors in the don't MOZ_CRASH case.
Attachment #8407330 -
Flags: feedback?(jgilbert)
Updated•10 years ago
|
Attachment #8407326 -
Flags: review?(jgilbert) → review+
https://tbpl.mozilla.org/?tree=Try&rev=d697d50fb452 Android 4.0 debug appears to have issues in an unrelated test.
Keywords: leave-open
Comment 11•10 years ago
|
||
Comment on attachment 8407330 [details] [diff] [review] Part 2. Move GetWebGLTexelFormat() to WebGLContext. Replace MOZ_CRASH with ErrorInternalError() Review of attachment 8407330 [details] [diff] [review]: ----------------------------------------------------------------- ::: content/canvas/src/WebGLContextUtils.cpp @@ +32,5 @@ > +IsNightlyBuild() > +{ > + const char* updateChannel = NS_STRINGIFY(MOZ_UPDATE_CHANNEL); > + return (strcmp(updateChannel, "nightly") == 0 || > + strcmp(updateChannel, "default") == 0); I can't help but think there's a better way to do this. Let's ask :ehsan.
Attachment #8407330 -
Flags: feedback?(jgilbert)
Attachment #8407330 -
Flags: feedback?(ehsan)
Attachment #8407330 -
Flags: feedback+
Updated•10 years ago
|
Flags: needinfo?(jgilbert)
Comment 12•10 years ago
|
||
Comment on attachment 8407330 [details] [diff] [review] Part 2. Move GetWebGLTexelFormat() to WebGLContext. Replace MOZ_CRASH with ErrorInternalError() Review of attachment 8407330 [details] [diff] [review]: ----------------------------------------------------------------- (Just looked at the nightly build part, if you're interested in feedback on other parts, please let me know which ones! Thanks.) ::: content/canvas/src/WebGLContextUtils.cpp @@ +32,5 @@ > +IsNightlyBuild() > +{ > + const char* updateChannel = NS_STRINGIFY(MOZ_UPDATE_CHANNEL); > + return (strcmp(updateChannel, "nightly") == 0 || > + strcmp(updateChannel, "default") == 0); You want #ifdef NIGHTLY_BUILD.
Attachment #8407330 -
Flags: feedback?(ehsan) → feedback-
Assignee | ||
Comment 13•10 years ago
|
||
(In reply to :Ehsan Akhgari (@work week, needinfo? me!) from comment #12) > Comment on attachment 8407330 [details] [diff] [review] > Part 2. Move GetWebGLTexelFormat() to WebGLContext. Replace MOZ_CRASH with > ErrorInternalError() > > Review of attachment 8407330 [details] [diff] [review]: > ----------------------------------------------------------------- > > (Just looked at the nightly build part, if you're interested in feedback on > other parts, please let me know which ones! Thanks.) > > ::: content/canvas/src/WebGLContextUtils.cpp > @@ +32,5 @@ > > +IsNightlyBuild() > > +{ > > + const char* updateChannel = NS_STRINGIFY(MOZ_UPDATE_CHANNEL); > > + return (strcmp(updateChannel, "nightly") == 0 || > > + strcmp(updateChannel, "default") == 0); > > You want #ifdef NIGHTLY_BUILD. Just that part. Thanks, Ehsan. I copied this code from some where else in the code base that I discovered via dxr.
Updated•9 years ago
|
Crash Signature: [@ mozilla::GetWebGLTexelFormat(unsigned int, unsigned int)] → [@ mozilla::GetWebGLTexelFormat(unsigned int, unsigned int)]
[@ mozilla::GetWebGLTexelFormat]
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Comment 14•6 years ago
|
||
Removing leave-open keyword from resolved bugs, per :sylvestre.
Keywords: leave-open
You need to log in
before you can comment on or make changes to this bug.
Description
•