[Mesa-dev] [Bug 90264] [Regression, bisected] Tooltip corruption in Chrome

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Jul 11 07:43:05 PDT 2015


--- Comment #34 from Heiko <lil_tux at web.de> ---
I'm also in for the tooltip corruption. I'd say it started around the time when
chromium added/enabled aura/ash or what that custom OpenGL-based frontend is
called. Though, I thought it's something specific to my machine. So it's not.

Anyway, encountering the issue on Mesa 10.7.0-devel (git-ad2c390). Most often
if the height of the tooltip changes whilst the width keeps the same.

Reverting the commit mentioned in #1
(95073a2dca03a48f4c77bc846a4a6d1f0eb81ae6), the problem is gone (or at least
seems to).

About the way chromium seems to do it's tooltips: The tooltip view seems to get
re-used all the time, just being resized/viewport adjusted. With apitrace one
can find something like this
44579 glDisable(cap = GL_SCISSOR_TEST)
44580 glScissor(x = 0, y = 0, width = 364, height = 38)
44581 glViewport(x = 0, y = 0, width = 370, height = 72)
While the real tooltip is 364x38, the viewport image is 370x72. Thus the actual
tooltip is in the lower left corner of the texture. Not quite sure about the
precedence of scissor vs. viewport, but if the scissor test wouldn't get
disabled, the texture should be clipped to the smaller size?

Anyway, reverting that particular commit results in ctx.Driver.Viewport being
called on every glViewport call. For radeon that's going to be something like
..radeon_draw_buffer(ctx, radeon->glCtx.DrawBuffer);
...radeonUpdateScissor(ctx); << unconditionallly sets the correct texture size
from glScissor call
...radeon->NewGLState |= _NEW_SCISSOR; << unconditionally requests scissor
And then somewhere the draw with the correctly scissored texture happens and
the tooltip gets properly displayed. I'm even not quite sure if
radeon_draw_buffer() should unconditionally update the scissor?

Looks like an application error?

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/20150711/95750644/attachment.html>

More information about the mesa-dev mailing list