summaryrefslogtreecommitdiffstats
path: root/server/red_dispatcher.c
diff options
context:
space:
mode:
authorYonit Halperin <yhalperi@redhat.com>2011-12-28 14:10:27 +0200
committerYonit Halperin <yhalperi@redhat.com>2012-01-12 16:17:01 +0200
commita54f26d04e9a391977a8030d609b52e50243ba52 (patch)
tree43b61bce6d74a78a685844dc65d087907e562855 /server/red_dispatcher.c
parentb689abe576c382ab1107e50f7b24de116a622dab (diff)
downloadspice-a54f26d04e9a391977a8030d609b52e50243ba52.tar.gz
spice-a54f26d04e9a391977a8030d609b52e50243ba52.tar.xz
spice-a54f26d04e9a391977a8030d609b52e50243ba52.zip
server/red_worker: pass remote caps to display/cursor red_channel_client's
Diffstat (limited to 'server/red_dispatcher.c')
-rw-r--r--server/red_dispatcher.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/server/red_dispatcher.c b/server/red_dispatcher.c
index 17b469e1..321232b2 100644
--- a/server/red_dispatcher.c
+++ b/server/red_dispatcher.c
@@ -102,6 +102,14 @@ static void red_dispatcher_set_display_peer(RedChannel *channel, RedClient *clie
payload.client = client;
payload.stream = stream;
payload.migration = migration;
+ payload.num_common_caps = num_common_caps;
+ payload.common_caps = spice_malloc(sizeof(uint32_t)*num_common_caps);
+ payload.num_caps = num_caps;
+ payload.caps = spice_malloc(sizeof(uint32_t)*num_caps);
+
+ memcpy(payload.common_caps, common_caps, sizeof(uint32_t)*num_common_caps);
+ memcpy(payload.caps, caps, sizeof(uint32_t)*num_caps);
+
dispatcher_send_message(&dispatcher->dispatcher,
RED_WORKER_MESSAGE_DISPLAY_CONNECT,
&payload);
@@ -154,6 +162,14 @@ static void red_dispatcher_set_cursor_peer(RedChannel *channel, RedClient *clien
payload.client = client;
payload.stream = stream;
payload.migration = migration;
+ payload.num_common_caps = num_common_caps;
+ payload.common_caps = spice_malloc(sizeof(uint32_t)*num_common_caps);
+ payload.num_caps = num_caps;
+ payload.caps = spice_malloc(sizeof(uint32_t)*num_caps);
+
+ memcpy(payload.common_caps, common_caps, sizeof(uint32_t)*num_common_caps);
+ memcpy(payload.caps, caps, sizeof(uint32_t)*num_caps);
+
dispatcher_send_message(&dispatcher->dispatcher,
RED_WORKER_MESSAGE_CURSOR_CONNECT,
&payload);