On Fri, Apr 01, 2011 at 05:13:02PM +0200, Hans de Goede wrote: > write_to_vdi_port() was checking for reds->agent_state.connected to determine > wether it could write queued data. But agent_state.connected reflects if > *both* ends are connected. If the client has disconnected, but the guest agent > is still connected and some data is still pending (like a final clipboard > release from the client), then this data should be written to the guest agent.
I guess we should also rename the agent_state.connected then? not sure to what exactly (client_connected / agent_connected?) ACK. > --- > server/reds.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/server/reds.c b/server/reds.c > index 1521bc5..b286809 100644 > --- a/server/reds.c > +++ b/server/reds.c > @@ -1170,12 +1170,12 @@ static int write_to_vdi_port() > int total = 0; > int n; > > - if (!reds->agent_state.connected || reds->mig_target) { > + if (!vdagent || reds->mig_target) { > return 0; > } > > sif = SPICE_CONTAINEROF(vdagent->base.sif, SpiceCharDeviceInterface, > base); > - while (reds->agent_state.connected) { > + while (vdagent) { > if (!(ring_item = ring_get_tail(&state->write_queue))) { > break; > } > -- > 1.7.4.2 > > _______________________________________________ > Spice-devel mailing list > Spice-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/spice-devel _______________________________________________ Spice-devel mailing list Spice-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/spice-devel