diff options
author | Alex Chen <alex.chen@huawei.com> | 2020-11-26 06:57:02 +0000 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2021-01-15 11:22:43 +0100 |
commit | 5f8679fe46d78acfa5fc43a3fd6b3fe95525d9bd (patch) | |
tree | 0192a1011a204260e6cddaafcb47ba96834ac176 /ui/vnc.c | |
parent | 7b5fa0b583c8d54f4bc3be796c4086de39ea09d3 (diff) | |
download | qemu-5f8679fe46d78acfa5fc43a3fd6b3fe95525d9bd.zip qemu-5f8679fe46d78acfa5fc43a3fd6b3fe95525d9bd.tar.gz qemu-5f8679fe46d78acfa5fc43a3fd6b3fe95525d9bd.tar.bz2 |
vnc: Fix a memleak in vnc_display_connect()
Free the 'sioc' when the qio_channel_socket_connect_sync() fails.
Reported-by: Euler Robot <euler.robot@huawei.com>
Signed-off-by: Alex Chen <alex.chen@huawei.com>
Reviewed-by: Li Qiang <liq3ea@gmail.com>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20201126065702.35095-1-alex.chen@huawei.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'ui/vnc.c')
-rw-r--r-- | ui/vnc.c | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -3805,6 +3805,7 @@ static int vnc_display_connect(VncDisplay *vd, sioc = qio_channel_socket_new(); qio_channel_set_name(QIO_CHANNEL(sioc), "vnc-reverse"); if (qio_channel_socket_connect_sync(sioc, saddr[0], errp) < 0) { + object_unref(OBJECT(sioc)); return -1; } vnc_connect(vd, sioc, false, false); |