summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--server/red_worker.c8
-rw-r--r--server/spice.h2
2 files changed, 7 insertions, 3 deletions
diff --git a/server/red_worker.c b/server/red_worker.c
index 81fffd74..3e78c632 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -10349,7 +10349,9 @@ static void handle_new_display_channel(RedWorker *worker, RedClient *client, Red
spice_info("jpeg %s", display_channel->enable_jpeg ? "enabled" : "disabled");
spice_info("zlib-over-glz %s", display_channel->enable_zlib_glz_wrap ? "enabled" : "disabled");
- if (worker->qxl->st->qif->set_client_capabilities) {
+ if (worker->qxl->st->qif->base.major_version == 3 &&
+ worker->qxl->st->qif->base.minor_version >= 2 &&
+ worker->qxl->st->qif->set_client_capabilities) {
RedChannelClient *rcc = (RedChannelClient *)dcc;
uint8_t caps[58] = { 0 };
@@ -11227,7 +11229,9 @@ void handle_dev_display_disconnect(void *opaque, void *payload)
spice_info("disconnect display client");
spice_assert(rcc);
- if (worker->qxl->st->qif->set_client_capabilities) {
+ if (worker->qxl->st->qif->base.major_version == 3 &&
+ worker->qxl->st->qif->base.minor_version >= 2 &&
+ worker->qxl->st->qif->set_client_capabilities) {
uint8_t caps[58] = { 0 };
worker->qxl->st->qif->set_client_capabilities(worker->qxl, FALSE, caps);
}
diff --git a/server/spice.h b/server/spice.h
index 3152f8cb..2b2ed36a 100644
--- a/server/spice.h
+++ b/server/spice.h
@@ -96,7 +96,7 @@ struct SpiceCoreInterface {
#define SPICE_INTERFACE_QXL "qxl"
#define SPICE_INTERFACE_QXL_MAJOR 3
-#define SPICE_INTERFACE_QXL_MINOR 1
+#define SPICE_INTERFACE_QXL_MINOR 2
typedef struct QXLInterface QXLInterface;
typedef struct QXLInstance QXLInstance;
typedef struct QXLState QXLState;