summaryrefslogtreecommitdiffstats
path: root/server/red_worker.c
diff options
context:
space:
mode:
authorYonit Halperin <yhalperi@redhat.com>2010-06-01 10:30:56 +0300
committerAlexander Larsson <alexl@redhat.com>2010-06-09 11:41:02 +0200
commit1a752e3884cc052a96df1f0e041308b218197a60 (patch)
tree5b3a817ddc39cd79141f64559740d7c178276411 /server/red_worker.c
parent0c199b0886a9deb57f61f4000110d26df36f4bd8 (diff)
downloadspice-1a752e3884cc052a96df1f0e041308b218197a60.tar.gz
spice-1a752e3884cc052a96df1f0e041308b218197a60.tar.xz
spice-1a752e3884cc052a96df1f0e041308b218197a60.zip
not using jpeg when sending a surface to the client (the whole surface)
When a surface is sent to the client using red_send_surface_image, operations were already performed on it. Thus it may combine, especially if it is a primary surface, both "picture-like" areas and areas that are more "artificial". In order to avoid noticeable artifacts, such surface will be sent lossless.
Diffstat (limited to 'server/red_worker.c')
-rw-r--r--server/red_worker.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/server/red_worker.c b/server/red_worker.c
index 91e5a5fd..bdc7ebb2 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -5198,7 +5198,9 @@ static void red_add_surface_image(RedWorker *worker, int surface_id)
area.right = surface->context.width;
area.bottom = surface->context.height;
- item = red_add_surface_area_image(worker, surface_id, &area, NULL, TRUE);
+ /* not allowing lossy compression because probably, especially if it is a primary surface,
+ it combines both "picture-like" areas with areas that are more "artificial"*/
+ item = red_add_surface_area_image(worker, surface_id, &area, NULL, FALSE);
display_channel_push(worker);
}