From b009a7ff34cf424a000abaaf37da0cb6d327ee57 Mon Sep 17 00:00:00 2001 From: Frediano Ziglio Date: Tue, 7 Jun 2016 09:47:54 +0100 Subject: [PATCH] Prevent setting invalid image compression values In case of invalid value the original compression is unchanged. Signed-off-by: Frediano Ziglio Acked-by: Pavel Grunt --- server/red-worker.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/server/red-worker.c b/server/red-worker.c index a2cd2e80..b3f6c12b 100644 --- a/server/red-worker.c +++ b/server/red-worker.c @@ -956,9 +956,9 @@ static void handle_dev_set_compression(void *opaque, void *payload) { RedWorkerMessageSetCompression *msg = payload; RedWorker *worker = opaque; + SpiceImageCompression image_compression = msg->image_compression; - worker->image_compression = msg->image_compression; - switch (worker->image_compression) { + switch (image_compression) { case SPICE_IMAGE_COMPRESSION_AUTO_LZ: spice_info("ic auto_lz"); break; @@ -984,7 +984,9 @@ static void handle_dev_set_compression(void *opaque, void *payload) break; default: spice_warning("ic invalid"); + image_compression = worker->image_compression; } + worker->image_compression = image_compression; display_channel_compress_stats_print(worker->display_channel); display_channel_compress_stats_reset(worker->display_channel);