Bug 32666 - etqw triggers an assert in st_texture.c
Summary: etqw triggers an assert in st_texture.c
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-26 12:44 UTC by almos
Modified: 2011-03-03 02:46 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
zerotexture.diff (741 bytes, patch)
2010-12-26 12:44 UTC, almos
Details | Splinter Review
gdb backtrace (1.70 KB, text/plain)
2011-01-31 15:24 UTC, almos
Details

Description almos 2010-12-26 12:44:36 UTC
Created attachment 41460 [details] [review]
zerotexture.diff

I don't know if it's the game's fault, or mesa's, or mine, but sometimes the following assertion is hit:
state_tracker/st_texture.c:68:st_texture_create: Assertion `width0 > 0' failed.

The most systematic way to reproduce it is to get into the vehicle named 'mobile command post', but it's not the only occurrence.

The attached patch avoids the assert, and seems to render correctly, but I'm sure it's not a good solution.
Comment 1 almos 2011-01-31 14:41:00 UTC
Since 1dd8e2757852682af44b63193c89dff3c09c7703 it asserts at a different position: at line 144 in st_gl_texture_dims_to_pipe_dims() in the GL_TEXTURE_CUBE_MAP branch of the switch conditional. Removing that assert (which seems pointless to me, because depthIn is not actually used in that case) restores the old behavior.
Comment 2 Brian Paul 2011-01-31 15:06:21 UTC
Can you provide a gdb stack trace at the assertion?
Comment 3 almos 2011-01-31 15:24:22 UTC
Created attachment 42784 [details]
gdb backtrace
Comment 4 Marek Olšák 2011-03-02 16:22:45 UTC
I recently closed a similar bug. Could you re-test latest Mesa?
Comment 5 almos 2011-03-03 02:46:19 UTC
With latest mesa master it works perfectly. Closing.


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.