diff options
author | Gerd Hoffmann <1087974@bugs.launchpad.net> | 2012-12-14 07:54:24 +0000 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2012-12-14 20:56:19 +0000 |
commit | bc210eb163b162ff2e94e5c8f4307715731257f8 (patch) | |
tree | 7916ccbb2c778a1927ce667ab9efbe22b9fbb205 /hw | |
parent | f27b2e1dfe79f993567652411d1ba16295b99719 (diff) | |
download | qemu-bc210eb163b162ff2e94e5c8f4307715731257f8.zip qemu-bc210eb163b162ff2e94e5c8f4307715731257f8.tar.gz qemu-bc210eb163b162ff2e94e5c8f4307715731257f8.tar.bz2 |
pixman: fix vnc tight png/jpeg support
This patch adds an x argument to qemu_pixman_linebuf_fill so it can
also be used to convert a partial scanline. Then fix tight + png/jpeg
encoding by passing in the x+y offset, so the data is read from the
correct screen location instead of the upper left corner.
Cc: 1087974@bugs.launchpad.net
Cc: qemu-stable@nongnu.org
Reported-by: Tim Hardeneck <thardeck@suse.de>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/vga.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -2413,7 +2413,7 @@ void ppm_save(const char *filename, struct DisplaySurface *ds, Error **errp) } linebuf = qemu_pixman_linebuf_create(PIXMAN_BE_r8g8b8, width); for (y = 0; y < height; y++) { - qemu_pixman_linebuf_fill(linebuf, ds->image, width, y); + qemu_pixman_linebuf_fill(linebuf, ds->image, width, 0, y); clearerr(f); ret = fwrite(pixman_image_get_data(linebuf), 1, pixman_image_get_stride(linebuf), f); |