diff options
author | Alon Levy <alevy@redhat.com> | 2011-04-10 20:02:50 +0300 |
---|---|---|
committer | Alon Levy <alevy@redhat.com> | 2011-08-23 17:45:24 +0300 |
commit | cd2c87da3eda0df76be2f8e5863b374ad5a8d314 (patch) | |
tree | 9d025560c1d7d4c4dc5affc0acda4e3976899cbb /server/red_channel.c | |
parent | 6be2c77dd9a902bb4910f6a39fa3cd58b1651d3f (diff) | |
download | spice-cd2c87da3eda0df76be2f8e5863b374ad5a8d314.tar.gz spice-cd2c87da3eda0df76be2f8e5863b374ad5a8d314.tar.xz spice-cd2c87da3eda0df76be2f8e5863b374ad5a8d314.zip |
server/red_channel: workaround for fast client disconnect bug (TODO - real fix)
Diffstat (limited to 'server/red_channel.c')
-rw-r--r-- | server/red_channel.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/server/red_channel.c b/server/red_channel.c index 529bd4e8..172dedd1 100644 --- a/server/red_channel.c +++ b/server/red_channel.c @@ -581,6 +581,11 @@ void red_channel_client_push(RedChannelClient *rcc) red_channel_client_send(rcc); } + if (rcc->send_data.item && !rcc->send_data.blocked) { + rcc->send_data.blocked = TRUE; + red_printf("ERROR: an item waiting to be sent and not blocked"); + } + while ((pipe_item = red_channel_client_pipe_item_get(rcc))) { red_channel_client_send_item(rcc, pipe_item); } |