mesa: 08b288be8e3ac7f2781104bf3ca6557731bcd534 (master) Use softpipe. Open Firefox. Go to WebGL Conformance Tests. https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/webgl-conformance-tests.html Run renderbuffers test. state_tracker/st_cb_fbo.c:149:st_renderbuffer_alloc_storage: Assertion `strb->surface->width == width' failed. (gdb) bt #0 0x0e9b4ea3 in _debug_assert_fail (expr=0xea65a4a "strb->surface->width == width", file=0xea659df "state_tracker/st_cb_fbo.c", line=149, function=0xea65e24 "st_renderbuffer_alloc_storage") at util/u_debug.c:282 #1 0x0e80bbe5 in st_renderbuffer_alloc_storage (ctx=0x6c2ea000, rb=0x69f1e270, internalFormat=32856, width=0, height=0) at state_tracker/st_cb_fbo.c:149 #2 0x0e78a71c in renderbuffer_storage (target=36161, internalFormat=32856, width=0, height=0, samples=0) at main/fbobject.c:1414 #3 0x0e78ac3d in _mesa_RenderbufferStorageEXT (target=36161, internalFormat=32856, width=0, height=0) at main/fbobject.c:1539 #4 0x0153c83e in fRenderbufferStorage (height=0, width=0, internalFormat=32856, target=36161, this=<optimized out>) at ../../../dist/include/GLContext.h:2072 #5 mozilla::WebGLContext::RenderbufferStorage (this=0x68688aa0, target=36161, internalformat=32854, width=0, height=0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/content/canvas/src/WebGLContextGL.cpp:3294 #6 0x018ff0f0 in nsIDOMWebGLRenderingContext_RenderbufferStorage (cx=0xad3274f0, argc=4, vp=0xb24fe058) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/obj-i686-linux-gnu/js/src/xpconnect/src/dom_quickstubs.cpp:32976 #7 0x01f684fd in CallJSNative (args=..., native=<optimized out>, cx=0xad3274f0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/js/src/jscntxtinlines.h:296 #8 js::InvokeKernel (cx=0xad3274f0, argsRef=..., construct=js::NO_CONSTRUCT) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/js/src/jsinterp.cpp:660 #9 0x01f55f7a in js::Interpret (cx=0xad3274f0, entryFrame=0xb24fe020, interpMode=js::JSINTERP_NORMAL) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/js/src/jsinterp.cpp:4036 #10 0x01f691d5 in ExecuteKernel (result=0x0, thisv=..., scopeChain=<optimized out>, script=0xb225f358, cx=0xad3274f0, type=<optimized out>, evalInFrame=<optimized out>) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/js/src/jsinterp.cpp:814 #11 js::Execute (cx=0xad3274f0, script=0xb225f358, scopeChainArg=..., rval=0x0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/js/src/jsinterp.cpp:853 #12 0x01ec3f86 in EvaluateUCScriptForPrincipalsCommon (compileVersion=JSVERSION_DEFAULT, rval=0x0, lineno=19, filename=0x695937d8 "https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/renderbuffers/framebuffer-object-attachment.html", length=18634, chars=0x6b8f6008, principals=0x6868e604, obj=0xa67d0040, cx=0xad3274f0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/js/src/jsapi.cpp:4933 #13 JS_EvaluateUCScriptForPrincipalsVersion (cx=0xad3274f0, obj=0xa67d0040, principals=0x6868e604, chars=0x6b8f6008, length=18634, filename=0x695937d8 "https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/renderbuffers/framebuffer-object-attachment.html", lineno=19, rval=0x0, version=JSVERSION_DEFAULT) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/js/src/jsapi.cpp:4945 #14 0x01658f42 in EvaluateString (aIsUndefined=0xbfc248d4, aRetValue=0x0, aVersion=0, aLineNo=19, aURL=0x695937d8 "https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/renderbuffers/framebuffer-object-attachment.html", aPrincipal=0x6868e600, aScopeObject=0xa67d0040, aScript=..., this=0xa5ed9bc0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/dom/base/nsJSEnvironment.cpp:1476 #15 nsJSContext::EvaluateString (this=0xa5ed9bc0, aScript=..., aScopeObject=0xa67d0040, aPrincipal=0x6868e600, aURL=0x695937d8 "https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/renderbuffers/framebuffer-object-attachment.html", aLineNo=19, aVersion=0, aRetValue=0x0, aIsUndefined=0xbfc248d4) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/dom/base/nsJSEnvironment.cpp:1373 #16 0x01501b15 in nsScriptLoader::EvaluateScript (this=0x6860acc0, aRequest=0x695b0e80, aScript=...) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/content/base/src/nsScriptLoader.cpp:906 #17 0x0150268e in nsScriptLoader::ProcessRequest (this=0x6860acc0, aRequest=0x695b0e80) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/content/base/src/nsScriptLoader.cpp:799 #18 0x015039fb in nsScriptLoader::ProcessScriptElement (this=0x6860acc0, aElement=0x69a6dc20) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/content/base/src/nsScriptLoader.cpp:745 #19 0x01500b47 in nsScriptElement::MaybeProcessScript (this=0x69a6dc20) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/content/base/src/nsScriptElement.cpp:182 #20 0x015b8206 in nsHTMLScriptElement::MaybeProcessScript (this=0x69a6dbe0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/content/html/content/src/nsHTMLScriptElement.cpp:333 #21 0x015b8f00 in nsHTMLScriptElement::DoneAddingChildren (this=0x69a6dbe0, aHaveNotified=1) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/content/html/content/src/nsHTMLScriptElement.cpp:260 #22 0x0173aafb in nsHtml5TreeOpExecutor::RunScript (this=0x6954c8a0, aScriptElement=0x69a6dbe0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/parser/html/nsHtml5TreeOpExecutor.cpp:736 #23 0x0173b8e9 in nsHtml5TreeOpExecutor::RunFlushLoop (this=0x6954c8a0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/parser/html/nsHtml5TreeOpExecutor.cpp:531 #24 0x0173b942 in nsHtml5ExecutorReflusher::Run (this=0x695877f0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/parser/html/nsHtml5TreeOpExecutor.cpp:94 #25 0x01d08fae in nsThread::ProcessNextEvent (this=0xb757f9a0, mayWait=0, result=0xbfc250dc) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/xpcom/threads/nsThread.cpp:631 #26 0x01cd79d4 in NS_ProcessNextEvent_P (thread=<optimized out>, mayWait=0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/obj-i686-linux-gnu/xpcom/build/nsThreadUtils.cpp:245 #27 0x01bf630a in mozilla::ipc::MessagePump::Run (this=0xb7105370, aDelegate=0xb754d900) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/ipc/glue/MessagePump.cpp:110 #28 0x01d2b438 in MessageLoop::RunInternal (this=0xb754d900) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/ipc/chromium/src/base/message_loop.cc:208 #29 0x01d2b560 in RunHandler (this=0xb754d900) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/ipc/chromium/src/base/message_loop.cc:201 #30 MessageLoop::Run (this=0xb754d900) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/ipc/chromium/src/base/message_loop.cc:175 #31 0x01b4596e in nsBaseAppShell::Run (this=0xb53dc0b0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/widget/src/xpwidgets/nsBaseAppShell.cpp:189 #32 0x019f3181 in nsAppStartup::Run (this=0xb53de4f0) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/toolkit/components/startup/nsAppStartup.cpp:228 #33 0x011b6395 in XRE_main (argc=1, argv=0xbfc27974, aAppData=0xb7516800) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/toolkit/xre/nsAppRunner.cpp:3557 #34 0x001e88ff in do_main (argv=0xbfc27974, argc=1, exePath=0xbfc258bc "/usr/lib/firefox-9.0/libxpcom.so") at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/browser/app/nsBrowserApp.cpp:198 #35 main (argc=1, argv=0xbfc27974) at /build/buildd/firefox-9.0~b1+build1/build-tree/mozilla/browser/app/nsBrowserApp.cpp:281 (gdb) frame 1 #1 0x0e80bbe5 in st_renderbuffer_alloc_storage (ctx=0x6c2ea000, rb=0x69f1e270, internalFormat=32856, width=0, height=0) at state_tracker/st_cb_fbo.c:149 149 assert(strb->surface->width == width); (gdb) print strb->surface->width $1 = 1 (gdb) print width $2 = 0
Created attachment 53637 [details] don't try to allocate zero-sized surface in st_renderbuffer_alloc_storage() Can you try this patch, Vinson? It fixed a test program that I hacked up. Haven't tested with WebGL though. BTW, I think bug 43048 is basically the same as this one.
(In reply to comment #1) > Created attachment 53637 [details] > don't try to allocate zero-sized surface in st_renderbuffer_alloc_storage() > > Can you try this patch, Vinson? It fixed a test program that I hacked up. > Haven't tested with WebGL though. > > BTW, I think bug 43048 is basically the same as this one. Patch 53673 fixes the crash for both this bug and bug 43048. Tested-by: Vinson Lee <vlee@vmware.com>
Patch applied in commit 68564726898308c9fd7ac63169bfc2e2012d6fe3.
*** Bug 43048 has been marked as a duplicate of this bug. ***
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.