summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@gmail.com>2015-10-30 11:08:25 -0500
committerFrediano Ziglio <fziglio@redhat.com>2015-10-30 16:56:13 +0000
commit2d934ed82e22d3317186e5f63e28c5105b5ea2d2 (patch)
tree804c9bd74b2586fcefd85a2db1f057308fa79c36
parentf2c8609985beffd4dcbfcf0aa61cd2e468113fe1 (diff)
downloadspice-2d934ed82e22d3317186e5f63e28c5105b5ea2d2.tar.gz
spice-2d934ed82e22d3317186e5f63e28c5105b5ea2d2.tar.xz
spice-2d934ed82e22d3317186e5f63e28c5105b5ea2d2.zip
Make cursor_channel_disconnect a CursorChannel method
The first argument should be CursorChannel* rather than RedChannel* since it's essentially a CursorChannel method. Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>
-rw-r--r--server/cursor-channel.c4
-rw-r--r--server/cursor-channel.h2
-rw-r--r--server/red_worker.c2
3 files changed, 5 insertions, 3 deletions
diff --git a/server/cursor-channel.c b/server/cursor-channel.c
index 7ab92857..b9842259 100644
--- a/server/cursor-channel.c
+++ b/server/cursor-channel.c
@@ -135,8 +135,10 @@ static void red_reset_cursor_cache(RedChannelClient *rcc)
red_cursor_cache_reset(RCC_TO_CCC(rcc), CLIENT_CURSOR_CACHE_SIZE);
}
-void cursor_channel_disconnect(RedChannel *channel)
+void cursor_channel_disconnect(CursorChannel *cursor_channel)
{
+ RedChannel *channel = (RedChannel *)cursor_channel;
+
if (!channel || !red_channel_is_connected(channel)) {
return;
}
diff --git a/server/cursor-channel.h b/server/cursor-channel.h
index 19142269..293cfc18 100644
--- a/server/cursor-channel.h
+++ b/server/cursor-channel.h
@@ -78,7 +78,7 @@ typedef struct CursorChannel {
G_STATIC_ASSERT(sizeof(CursorItem) <= QXL_CURSUR_DEVICE_DATA_SIZE);
CursorChannel* cursor_channel_new (RedWorker *worker);
-void cursor_channel_disconnect (RedChannel *channel);
+void cursor_channel_disconnect (CursorChannel *cursor_channel);
void cursor_channel_reset (CursorChannel *cursor);
void cursor_channel_process_cmd (CursorChannel *cursor, RedCursorCmd *cursor_cmd,
uint32_t group_id);
diff --git a/server/red_worker.c b/server/red_worker.c
index 2edfef50..574414c1 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -8828,7 +8828,7 @@ static inline void flush_cursor_commands(RedWorker *worker)
red_channel_send(channel);
if (red_get_monotonic_time() >= end_time) {
spice_warning("flush cursor timeout");
- cursor_channel_disconnect(channel);
+ cursor_channel_disconnect(worker->cursor_channel);
worker->cursor_channel = NULL;
} else {
sleep_count++;