diff options
author | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-02-02 15:58:51 +0000 |
---|---|---|
committer | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2009-02-02 15:58:51 +0000 |
commit | d2a0102a4c653b0cbb357445409c2cc1f6653501 (patch) | |
tree | 72c52ecf4c7a32a6210da4f4e12626b42fa11669 /vnc.c | |
parent | 8906428682bf2e4f60ea7d5fa98f75fde9194106 (diff) | |
download | qemu-d2a0102a4c653b0cbb357445409c2cc1f6653501.zip |
Move the framebuffer update package out (Alexander Graf)
Currently the send_framebuffer_update_raw and send_framebuffer_update_hextile
respectively send a send_framebuffer_update packet themselves. We need to reuse
send_framebuffer_update_raw for zlib encoding though, so let's move it out.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6498 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'vnc.c')
-rw-r--r-- | vnc.c | 6 |
1 files changed, 2 insertions, 4 deletions
@@ -417,8 +417,6 @@ static void send_framebuffer_update_raw(VncState *vs, int x, int y, int w, int h int i; uint8_t *row; - vnc_framebuffer_update(vs, x, y, w, h, VNC_ENCODING_RAW); - row = ds_get_data(vs->ds) + y * ds_get_linesize(vs->ds) + x * ds_get_bytes_per_pixel(vs->ds); for (i = 0; i < h; i++) { vs->write_pixels(vs, row, w * ds_get_bytes_per_pixel(vs->ds)); @@ -468,8 +466,6 @@ static void send_framebuffer_update_hextile(VncState *vs, int x, int y, int w, i int has_fg, has_bg; uint8_t *last_fg, *last_bg; - vnc_framebuffer_update(vs, x, y, w, h, VNC_ENCODING_HEXTILE); - last_fg = (uint8_t *) malloc(vs->serverds.pf.bytes_per_pixel); last_bg = (uint8_t *) malloc(vs->serverds.pf.bytes_per_pixel); has_fg = has_bg = 0; @@ -489,9 +485,11 @@ static void send_framebuffer_update(VncState *vs, int x, int y, int w, int h) { switch(vs->vnc_encoding) { case VNC_ENCODING_HEXTILE: + vnc_framebuffer_update(vs, x, y, w, h, VNC_ENCODING_HEXTILE); send_framebuffer_update_hextile(vs, x, y, w, h); break; default: + vnc_framebuffer_update(vs, x, y, w, h, VNC_ENCODING_RAW); send_framebuffer_update_raw(vs, x, y, w, h); break; } |