summaryrefslogtreecommitdiff
path: root/server/red-worker.h
diff options
context:
space:
mode:
authorFrediano Ziglio <fziglio@redhat.com>2016-02-08 19:57:58 +0000
committerFrediano Ziglio <fziglio@redhat.com>2016-02-11 23:51:46 +0000
commitfbdea0fa790ba3f836fe0c6d60441b716c7d0bd3 (patch)
tree94eaed791f1a01280973e08988e864c45c3c60b6 /server/red-worker.h
parent79e50495fe53a34cdbf2e524da2dcac4e11ee811 (diff)
CommonChannel: hold a reference to QXLInstance instead of RedWorker
CommonChannel does not need to know about RedWorker. This reduce a bit dependencies between objects. Signed-off-by: Frediano Ziglio <fziglio@redhat.com> Acked-by: Jonathon Jongsma <jjongsma@redhat.com>
Diffstat (limited to 'server/red-worker.h')
-rw-r--r--server/red-worker.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/server/red-worker.h b/server/red-worker.h
index 005c15f4..12859428 100644
--- a/server/red-worker.h
+++ b/server/red-worker.h
@@ -38,7 +38,7 @@ typedef struct CommonChannelClient {
typedef struct CommonChannel {
RedChannel base; // Must be the first thing
- struct RedWorker *worker;
+ QXLInstance *qxl;
uint8_t recv_buf[CHANNEL_RECEIVE_BUF_SIZE];
uint32_t id_alloc; // bitfield. TODO - use this instead of shift scheme.
int during_target_migrate; /* TRUE when the client that is associated with the channel
@@ -97,7 +97,8 @@ QXLInstance* red_worker_get_qxl(RedWorker *worker);
RedChannel* red_worker_get_cursor_channel(RedWorker *worker);
RedChannel* red_worker_get_display_channel(RedWorker *worker);
-void red_drawable_unref(RedWorker *worker, RedDrawable *red_drawable,
+struct DisplayChannel;
+void red_drawable_unref(struct DisplayChannel *display, RedDrawable *red_drawable,
uint32_t group_id);
CommonChannel *red_worker_new_channel(RedWorker *worker, int size,