summaryrefslogtreecommitdiff
path: root/pixman/pixman-bits-image.c
diff options
context:
space:
mode:
Diffstat (limited to 'pixman/pixman-bits-image.c')
-rw-r--r--pixman/pixman-bits-image.c25
1 files changed, 15 insertions, 10 deletions
diff --git a/pixman/pixman-bits-image.c b/pixman/pixman-bits-image.c
index 6c43b97..376753f 100644
--- a/pixman/pixman-bits-image.c
+++ b/pixman/pixman-bits-image.c
@@ -1347,24 +1347,24 @@ bits_image_property_changed (pixman_image_t *image)
}
static uint32_t *
-src_get_scanline_narrow (pixman_iter_t *iter, const uint32_t *mask)
+src_get_scanline_narrow (pixman_iter_t *iter, uint32_t *buffer, const uint32_t *mask)
{
iter->image->bits.get_scanline_32 (
- iter->image, iter->x, iter->y++, iter->width, iter->buffer, mask);
+ iter->image, iter->x, iter->y++, iter->width, buffer, mask);
- return iter->buffer;
+ return buffer;
}
static uint32_t *
-src_get_scanline_wide (pixman_iter_t *iter, const uint32_t *mask)
+src_get_scanline_wide (pixman_iter_t *iter, uint32_t *buffer, const uint32_t *mask)
{
iter->image->bits.get_scanline_64 (
- iter->image, iter->x, iter->y++, iter->width, iter->buffer, mask);
+ iter->image, iter->x, iter->y++, iter->width, buffer, mask);
- return iter->buffer;
+ return buffer;
}
-void
+iter_flags_t
_pixman_bits_image_src_iter_init (pixman_image_t *image,
pixman_iter_t *iter,
int x, int y, int width, int height,
@@ -1374,10 +1374,12 @@ _pixman_bits_image_src_iter_init (pixman_image_t *image,
iter->get_scanline = src_get_scanline_narrow;
else
iter->get_scanline = src_get_scanline_wide;
+
+ return flags;
}
static uint32_t *
-dest_get_scanline_narrow (pixman_iter_t *iter, const uint32_t *mask)
+dest_get_scanline_narrow (pixman_iter_t *iter, uint32_t *unused, const uint32_t *mask)
{
pixman_image_t *image = iter->image;
int x = iter->x;
@@ -1400,7 +1402,7 @@ dest_get_scanline_narrow (pixman_iter_t *iter, const uint32_t *mask)
}
static uint32_t *
-dest_get_scanline_wide (pixman_iter_t *iter, const uint32_t *mask)
+dest_get_scanline_wide (pixman_iter_t *iter, uint32_t *unused, const uint32_t *mask)
{
bits_image_t * image = &iter->image->bits;
int x = iter->x;
@@ -1474,7 +1476,7 @@ dest_write_back_direct (pixman_iter_t *iter)
iter->buffer += iter->image->bits.rowstride;
}
-void
+iter_flags_t
_pixman_bits_image_dest_iter_init (pixman_image_t *image,
pixman_iter_t *iter,
int x, int y, int width, int height,
@@ -1514,6 +1516,9 @@ _pixman_bits_image_dest_iter_init (pixman_image_t *image,
iter->get_scanline = dest_get_scanline_wide;
iter->write_back = dest_write_back_wide;
}
+
+ /* What would ITER_ON_DEST mean for dest iterators? */
+ return flags & ~ITER_ON_DEST;
}
static uint32_t *