Closed Bug 698963 Opened 14 years ago Closed 10 years ago

ANGLE crash in TIntermConstantUnion::getUnionArrayPointer with this=null, called from yyparse

Categories

(Core :: Graphics: CanvasWebGL, defect)

x86_64
Linux
defect
Not set
critical

Tracking

()

RESOLVED FIXED

People

(Reporter: decoder, Unassigned)

Details

(Keywords: crash, testcase, Whiteboard: webgl-angle)

Crash Data

Attachments

(3 files)

Attached file Test case for browser
This bug was filed from the Socorro interface and is report bp-7be0b0c7-4025-4d2a-9c1d-7e4682111101 . ============================================================= The attached WebGL testcase crashes Firefox Nightly (tested with mesa llvmpipe software rendering). The test might require MOZ_GL_DEBUG=1. Marking this s-s until triaged and rated. Note: If this is a bug in llvmpipe/mesa rather than in our own code or third party libs, let me know so I can file to Mesa instead.
Attached file callstack
Looks like a null-pointer-dereference on MacOS
Please file ANGLE bugs also at http://code.google.com/p/angleproject/ then they get fixed faster.
Attached file testcase (reduced)
The problem is: uniform mat4 foo; foo[--vec4()[3]];
Indeed, this is a null deref, so not particular security sensitive by itself. I agree with comment 2, this is a ANGLE bug so should be filed there. The crash occurs in glslang_tab.cpp which is Bison-generated code, so it's not clear to me how to fix it.
Crash Signature: [@ libxul.so@0x15c59d2] → [@ libxul.so@0x15c59d2] [@ TIntermConstantUnion::getUnionArrayPointer]
Summary: WebGL crash in libxul with Firefox nightly → WebGL crash, null dereference in ANGLE shader compiler, in TIntermConstantUnion::getUnionArrayPointer
Summary: WebGL crash, null dereference in ANGLE shader compiler, in TIntermConstantUnion::getUnionArrayPointer → ANGLE crash in TIntermConstantUnion::getUnionArrayPointer, after null dereference in yyparse
Please first remove security status on this bug, that will make it much easier to forward and share its attachments.
Removed s-s per comment 4. I'm not yet very familiar with triaging WebGL bugs so I didn't know if this was ANGLE or not.
Group: core-security
It wasn't obvious from your initial report, as crash-stats didn't show a useful stack, but it was clear from comment 1's call stack.
Summary: ANGLE crash in TIntermConstantUnion::getUnionArrayPointer, after null dereference in yyparse → ANGLE crash in TIntermConstantUnion::getUnionArrayPointer with this=null, called from yyparse
This should has been fixed in one of the ANGLE updates. I'll try out the testcase.
Flags: needinfo?(jgilbert)
Flags: needinfo?(jgilbert)
Whiteboard: webgl-angle
Flags: needinfo?(jgilbert)
This must have been fixed by an ANGLE update.
Status: NEW → RESOLVED
Closed: 10 years ago
Flags: needinfo?(jgilbert)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: