summaryrefslogtreecommitdiffstats
path: root/server/display-channel.c
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@gmail.com>2015-11-13 15:16:26 +0100
committerFrediano Ziglio <fziglio@redhat.com>2015-11-18 15:32:50 +0000
commit960e0321b61ae615e05b7b809c99b079906a7008 (patch)
tree3e46d9aca52aadad0da980d0f369b53df188d455 /server/display-channel.c
parent9b36936a31d28a285e0d9c74a0fe05aaf28051c9 (diff)
downloadspice-960e0321b61ae615e05b7b809c99b079906a7008.tar.gz
spice-960e0321b61ae615e05b7b809c99b079906a7008.tar.xz
spice-960e0321b61ae615e05b7b809c99b079906a7008.zip
worker: add compression parameters to dcc
This allow different dcc to have different settings from default one. The parameters are copied initially from default settings but then they can change independently for each client. Even having a single client a future client is not affected by a previous setting on the old dcc. Signed-off-by: Marc-André Lureau <marcandre.lureau@gmail.com> [updated for the preferred compression] Signed-off-by: Pavel Grunt <pgrunt@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>
Diffstat (limited to 'server/display-channel.c')
-rw-r--r--server/display-channel.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/server/display-channel.c b/server/display-channel.c
index 222b2e30..04667e88 100644
--- a/server/display-channel.c
+++ b/server/display-channel.c
@@ -124,7 +124,11 @@ DisplayChannelClient *dcc_new(DisplayChannel *display,
RedClient *client, RedsStream *stream,
int mig_target,
uint32_t *common_caps, int num_common_caps,
- uint32_t *caps, int num_caps)
+ uint32_t *caps, int num_caps,
+ SpiceImageCompression image_compression,
+ spice_wan_compression_t jpeg_state,
+ spice_wan_compression_t zlib_glz_state)
+
{
DisplayChannelClient *dcc;
@@ -137,6 +141,9 @@ DisplayChannelClient *dcc_new(DisplayChannel *display,
ring_init(&dcc->palette_cache_lru);
dcc->palette_cache_available = CLIENT_PALETTE_CACHE_SIZE;
+ dcc->image_compression = image_compression;
+ dcc->jpeg_state = jpeg_state;
+ dcc->zlib_glz_state = zlib_glz_state;
return dcc;
}