[Mesa-dev] [Bug 90213] glDrawPixels with GL_COLOR_INDEX never returns.

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri May 1 02:32:52 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=90213

--- Comment #4 from Iago Toral <itoral at igalia.com> ---
(In reply to Jason Ekstrand from comment #3)
> (In reply to Iago Toral from comment #2)
> > Hi Mark, Juha:
> > 
> > Some "special" formats, like GL_COLOR_INDEX, MESA_FORMAT_YCBCR or
> > byte-swapped scenarios need special handling before we can call
> > _mesa_format_convert (see the implementation of texstore_rgba() in
> > texstore.c for example).
> > 
> > The problem in this case is that we are not doing that and it seems that the
> > old _mesa_unpack_color_span_float that was used here before the format
> > conversion overhaul did  handle at least GL_COLOR_INDEX (and byte-swapped
> > scenarios too as far as I can see), so this is a regression.
> > 
> > If the test was asserting before the overhaul that would explain that we did
> > not catch it when we where in development, but it is a regression
> > nonetheless.
> > 
> > The solution is to add the same code we have in texstore.c to handle
> > GL_COLOR_INDEX, which basically converts GL_COLOR_INDEX to GL_RGBA ubyte
> > before calling _mesa_format_convert. We should probably also add the code we
> > have there for byte-swapped formats. I think it could be useful to have a
> > helper function for this so we don't have to replicate the code wherever we
> > need to handle things like GL_COLOR_INDEX.
> > 
> > Also, we should probably return something in
> > _mesa_format_from_format_and_type even when we reach the assertion to make
> > things less confusing in non-debug builds.
> > 
> > Jason, what do you think?
> 
> Seems reasonable to me

Great.

Juha, do you have plans to work on this? If not, I can give it a go next week.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150501/fe1b609d/attachment.html>


More information about the mesa-dev mailing list