From: Victor Toso <[email protected]> Although spice_channel_connect() works in idle, if it returns false it'll not emit any signal further and we would be counting a 'connected' channel that wouldn't be emitting anything.
As other callbacks take this in consideration, we should only increment the counter if we reached spice-channel::connect_delayed() callback. Signed-off-by: Victor Toso <[email protected]> --- src/channel-main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/channel-main.c b/src/channel-main.c index a1e5498..3d1b1b5 100644 --- a/src/channel-main.c +++ b/src/channel-main.c @@ -2174,8 +2174,9 @@ migrate_channel_connect(spice_migrate *mig, int type, int id) SPICE_DEBUG("migrate_channel_connect %d:%d", type, id); SpiceChannel *newc = spice_channel_new(mig->session, type, id); - spice_channel_connect(newc); - mig->nchannels++; + if (newc != NULL && spice_channel_connect(newc)) { + mig->nchannels++; + } } /* coroutine context */ -- 2.21.0 _______________________________________________ Spice-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/spice-devel
