vnc: adjust compression zstream level

Adjust zlib compression level if needed by calling deflateParams.

Signed-off-by: Corentin Chary <corentincj@iksaif.net>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Corentin Chary 2010-05-19 09:24:05 +02:00 committed by Anthony Liguori
parent b05ad290e2
commit 9f643ec0f8
2 changed files with 9 additions and 1 deletions

View File

@ -83,10 +83,17 @@ static int vnc_zlib_stop(VncState *vs)
return -1;
}
vs->zlib_level = vs->tight_compression;
zstream->opaque = vs;
}
// XXX what to do if tight_compression changed in between?
if (vs->tight_compression != vs->zlib_level) {
if (deflateParams(zstream, vs->tight_compression,
Z_DEFAULT_STRATEGY) != Z_OK) {
return -1;
}
vs->zlib_level = vs->tight_compression;
}
// reserve memory in output buffer
buffer_reserve(&vs->output, vs->zlib.offset + 64);

1
vnc.h
View File

@ -178,6 +178,7 @@ struct VncState
Buffer zlib;
Buffer zlib_tmp;
z_stream zlib_stream;
int zlib_level;
Notifier mouse_mode_notifier;