[Spice-devel] [PATCH v2 29/40] server/red_channel: add red_channel_send_message_pending

Alon Levy alevy at redhat.com
Wed Mar 2 00:31:52 PST 2011


---
 server/red_channel.c |    5 +++++
 server/red_channel.h |    3 +++
 server/red_worker.c  |    2 +-
 3 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/server/red_channel.c b/server/red_channel.c
index 8476319..f2665a4 100644
--- a/server/red_channel.c
+++ b/server/red_channel.c
@@ -711,6 +711,11 @@ int red_channel_any_blocked(RedChannel *channel)
     return channel->send_data.blocked;
 }
 
+int red_channel_send_message_pending(RedChannel *channel)
+{
+    return channel->send_data.header->type != 0;
+}
+
 /* accessors for RedChannel */
 SpiceMarshaller *red_channel_get_marshaller(RedChannel *channel)
 {
diff --git a/server/red_channel.h b/server/red_channel.h
index 96b6095..ce8ef20 100644
--- a/server/red_channel.h
+++ b/server/red_channel.h
@@ -257,6 +257,9 @@ int red_channel_all_blocked(RedChannel *channel);
 /* return TRUE if any of the connected clients to this channel are blocked */
 int red_channel_any_blocked(RedChannel *channel);
 
+/* helper for channels that have complex logic that can possibly ready a send */
+int red_channel_send_message_pending(RedChannel *channel);
+
 // TODO: unstaticed for display/cursor channels. they do some specific pushes not through
 // adding elements or on events. but not sure if this is actually required (only result
 // should be that they ""try"" a little harder, but if the event system is correct it
diff --git a/server/red_worker.c b/server/red_worker.c
index e0894d9..41c53c4 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -7132,7 +7132,7 @@ static void red_lossy_send_qxl_drawable(RedWorker *worker, DisplayChannel *displ
     }
 
     // a message is pending
-    if (display_channel->common.base.send_data.header->type != 0) {
+    if (red_channel_send_message_pending(&display_channel->common.base)) {
         display_begin_send_message(display_channel);
     }
 }
-- 
1.7.4.1



More information about the Spice-devel mailing list