mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 09:08:10 +02:00
nv50: obey do_flip in surface_copy()
This commit is contained in:
parent
9b0add0be4
commit
7c949fb2a2
1 changed files with 11 additions and 3 deletions
|
|
@ -28,7 +28,7 @@
|
||||||
#include "util/p_tile.h"
|
#include "util/p_tile.h"
|
||||||
|
|
||||||
static void
|
static void
|
||||||
nv50_surface_copy(struct pipe_context *pipe, unsigned flip,
|
nv50_surface_copy(struct pipe_context *pipe, boolean flip,
|
||||||
struct pipe_surface *dest, unsigned destx, unsigned desty,
|
struct pipe_surface *dest, unsigned destx, unsigned desty,
|
||||||
struct pipe_surface *src, unsigned srcx, unsigned srcy,
|
struct pipe_surface *src, unsigned srcx, unsigned srcy,
|
||||||
unsigned width, unsigned height)
|
unsigned width, unsigned height)
|
||||||
|
|
@ -36,8 +36,16 @@ nv50_surface_copy(struct pipe_context *pipe, unsigned flip,
|
||||||
struct nv50_context *nv50 = (struct nv50_context *)pipe;
|
struct nv50_context *nv50 = (struct nv50_context *)pipe;
|
||||||
struct nouveau_winsys *nvws = nv50->screen->nvws;
|
struct nouveau_winsys *nvws = nv50->screen->nvws;
|
||||||
|
|
||||||
nvws->surface_copy(nvws, dest, destx, desty, src, srcx, srcy,
|
if (flip) {
|
||||||
width, height);
|
desty += height;
|
||||||
|
while (height--) {
|
||||||
|
nvws->surface_copy(nvws, dest, destx, desty--, src,
|
||||||
|
srcx, srcy++, width, 1);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
nvws->surface_copy(nvws, dest, destx, desty, src, srcx, srcy,
|
||||||
|
width, height);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue