diff options
| author | Hans de Goede <hdegoede@redhat.com> | 2012-02-08 10:04:18 +0100 |
|---|---|---|
| committer | Hans de Goede <hdegoede@redhat.com> | 2012-02-20 16:32:31 +0100 |
| commit | f3f8ebe91bb95aa340b49a24e5b945a82cefe7c7 (patch) | |
| tree | 586dee1c614884aeca8602d21d9dd37913eaeb27 /client/tests/controller_test/controller_test.cpp | |
| parent | 7e3fb815ccdfd7ab42ed8b03958ec00e470e1e8f (diff) | |
| download | spice-f3f8ebe91bb95aa340b49a24e5b945a82cefe7c7.tar.gz spice-f3f8ebe91bb95aa340b49a24e5b945a82cefe7c7.tar.xz spice-f3f8ebe91bb95aa340b49a24e5b945a82cefe7c7.zip | |
server/spicevmc: Don't destroy the rcc twice
spicevmc calls red_channel_client_destroy() on the rcc when it disconnects
since we don't want to delay the destroy until the session gets closed as
spicevmc channels can be opened, closed and opened again during a single
session.
This causes red_channel_client_destroy() to get called twice, triggering
an assert, when a connected channel gets destroyed.
This was fixed with commit ffc4de01e6f9ea0676f17b10e45a137d7e15d6ac for
the case where: a spicevmc channel was open on client disconnected, and
the main channel disconnect gets handled first.
But the channel can also be destroyed when the chardev gets unregistered
with the spice-server. This path still triggers the assert.
This patch fixes this by adding a destroying flag to the rcc struct, and
also moves the previous fix over to the same, more clean, method of
detecting this special case.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'client/tests/controller_test/controller_test.cpp')
0 files changed, 0 insertions, 0 deletions
