From: Marc-André Lureau <marcandre.lur...@redhat.com> During CHR_EVENT_CLOSED, the function could be reentered, make this case safe.
Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> --- qemu-char.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/qemu-char.c b/qemu-char.c index d34bfd1..c37a9f9 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -2833,6 +2833,10 @@ static void tcp_chr_disconnect(CharDriverState *chr) { TCPCharDriver *s = chr->opaque; + if (!s->connected) { + return; + } + s->connected = 0; if (s->listen_chan) { s->listen_tag = g_io_add_watch(s->listen_chan, G_IO_IN, -- 2.4.3