mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 02:38:04 +02:00
st/mesa: invert scissor rect depending on FB orientation
Fixes fd.o bug 27715
This commit is contained in:
parent
cf7d08b443
commit
c060265bdb
1 changed files with 8 additions and 5 deletions
|
|
@ -72,12 +72,15 @@ update_scissor( struct st_context *st )
|
|||
scissor.minx = scissor.miny = scissor.maxx = scissor.maxy = 0;
|
||||
}
|
||||
|
||||
/* Now invert Y. Pipe drivers use the convention Y=0=top for surfaces
|
||||
/* Now invert Y if needed.
|
||||
* Gallium drivers use the convention Y=0=top for surfaces.
|
||||
*/
|
||||
miny = fb->Height - scissor.maxy;
|
||||
maxy = fb->Height - scissor.miny;
|
||||
scissor.miny = miny;
|
||||
scissor.maxy = maxy;
|
||||
if (st_fb_orientation(fb) == Y_0_TOP) {
|
||||
miny = fb->Height - scissor.maxy;
|
||||
maxy = fb->Height - scissor.miny;
|
||||
scissor.miny = miny;
|
||||
scissor.maxy = maxy;
|
||||
}
|
||||
|
||||
if (memcmp(&scissor, &st->state.scissor, sizeof(scissor)) != 0) {
|
||||
/* state has changed */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue