summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPekka Paalanen <pq@iki.fi>2009-02-05 19:45:33 +0200
committerPekka Paalanen <pq@iki.fi>2009-02-05 20:35:24 +0200
commita785a4ae2165c3b58c228f4de4b26b2c0800116c (patch)
treed9603d1fb27b18e9a9a95ca569a82b97da5e5653
parent8569860c3d288ad5cd6558c9560fc9b404b64fb4 (diff)
nv04-nv40: fix nv##_surface_copy() for flipped
If do_flipp is true, it would first do the proper copy, height would wrap around to unsigned maximum, and then it attempts to do another copy. Return after doing the proper copy. Signed-off-by: Pekka Paalanen <pq@iki.fi>
-rw-r--r--src/gallium/drivers/nv04/nv04_surface.c1
-rw-r--r--src/gallium/drivers/nv10/nv10_surface.c1
-rw-r--r--src/gallium/drivers/nv20/nv20_surface.c1
-rw-r--r--src/gallium/drivers/nv30/nv30_surface.c1
-rw-r--r--src/gallium/drivers/nv40/nv40_surface.c1
5 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/drivers/nv04/nv04_surface.c b/src/gallium/drivers/nv04/nv04_surface.c
index 1d11f53f2a..14abf16679 100644
--- a/src/gallium/drivers/nv04/nv04_surface.c
+++ b/src/gallium/drivers/nv04/nv04_surface.c
@@ -47,6 +47,7 @@ nv04_surface_copy(struct pipe_context *pipe, boolean do_flip,
eng2d->copy(eng2d, dest, destx, desty--, src,
srcx, srcy++, width, 1);
}
+ return;
}
eng2d->copy(eng2d, dest, destx, desty, src, srcx, srcy, width, height);
diff --git a/src/gallium/drivers/nv10/nv10_surface.c b/src/gallium/drivers/nv10/nv10_surface.c
index 1093dfd62e..2538151063 100644
--- a/src/gallium/drivers/nv10/nv10_surface.c
+++ b/src/gallium/drivers/nv10/nv10_surface.c
@@ -47,6 +47,7 @@ nv10_surface_copy(struct pipe_context *pipe, boolean do_flip,
eng2d->copy(eng2d, dest, destx, desty--, src,
srcx, srcy++, width, 1);
}
+ return;
}
eng2d->copy(eng2d, dest, destx, desty, src, srcx, srcy, width, height);
diff --git a/src/gallium/drivers/nv20/nv20_surface.c b/src/gallium/drivers/nv20/nv20_surface.c
index a79974ce5e..6cd607583c 100644
--- a/src/gallium/drivers/nv20/nv20_surface.c
+++ b/src/gallium/drivers/nv20/nv20_surface.c
@@ -47,6 +47,7 @@ nv20_surface_copy(struct pipe_context *pipe, boolean do_flip,
eng2d->copy(eng2d, dest, destx, desty--, src,
srcx, srcy++, width, 1);
}
+ return;
}
eng2d->copy(eng2d, dest, destx, desty, src, srcx, srcy, width, height);
diff --git a/src/gallium/drivers/nv30/nv30_surface.c b/src/gallium/drivers/nv30/nv30_surface.c
index b46b6123cf..0f8dc12045 100644
--- a/src/gallium/drivers/nv30/nv30_surface.c
+++ b/src/gallium/drivers/nv30/nv30_surface.c
@@ -47,6 +47,7 @@ nv30_surface_copy(struct pipe_context *pipe, boolean do_flip,
eng2d->copy(eng2d, dest, destx, desty--, src,
srcx, srcy++, width, 1);
}
+ return;
}
eng2d->copy(eng2d, dest, destx, desty, src, srcx, srcy, width, height);
diff --git a/src/gallium/drivers/nv40/nv40_surface.c b/src/gallium/drivers/nv40/nv40_surface.c
index 68bbfce448..c4a5fb20d9 100644
--- a/src/gallium/drivers/nv40/nv40_surface.c
+++ b/src/gallium/drivers/nv40/nv40_surface.c
@@ -47,6 +47,7 @@ nv40_surface_copy(struct pipe_context *pipe, boolean do_flip,
eng2d->copy(eng2d, dest, destx, desty--, src,
srcx, srcy++, width, 1);
}
+ return;
}
eng2d->copy(eng2d, dest, destx, desty, src, srcx, srcy, width, height);