nouveau: Take into account sx,sy parameters to read from source surface
authorPatrice Mandin <patmandin@gmail.com>
Wed, 22 Jul 2009 19:10:20 +0000 (21:10 +0200)
committerPatrice Mandin <patmandin@gmail.com>
Wed, 22 Jul 2009 19:10:20 +0000 (21:10 +0200)
src/gallium/drivers/nv04/nv04_surface_2d.c

index f315cf54f05a74c4d967dc1906014b84c9d20a48..d794c076f0fa97a1875b0b54f927c88acdf91b03 100644 (file)
@@ -153,8 +153,8 @@ nv04_surface_copy_swizzle(struct nv04_surface_2d *ctx,
            OUT_RING  (chan, src_pitch |
                             NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_ORIGIN_CENTER |
                             NV04_SCALED_IMAGE_FROM_MEMORY_FORMAT_FILTER_POINT_SAMPLE);
-           OUT_RELOCl(chan, src_bo, src->offset + cy * src_pitch +
-                            cx * src->texture->block.size, NOUVEAU_BO_GART |
+           OUT_RELOCl(chan, src_bo, src->offset + (cy+sy) * src_pitch +
+                            (cx+sx) * src->texture->block.size, NOUVEAU_BO_GART |
                             NOUVEAU_BO_VRAM | NOUVEAU_BO_RD);
            OUT_RING  (chan, 0);
          }