mirror of
https://github.com/mii443/qemu.git
synced 2025-09-02 15:19:24 +00:00
chardev/tcp: Fix error message double free error
Errors are already freed by error_report_err, so we only need to call
error_free when that function is not called.
Cc: qemu-stable@nongnu.org
Signed-off-by: lichun <lichun@ruijie.com.cn>
Message-Id: <20200621213017.17978-1-lichun@ruijie.com.cn>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
[Commit message improved, cc: qemu-stable]
Signed-off-by: Markus Armbruster <armbru@redhat.com>
(cherry picked from commit ed4e0d2ef1
)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
@ -142,6 +142,8 @@ static void check_report_connect_error(Chardev *chr,
|
|||||||
"Unable to connect character device %s: ",
|
"Unable to connect character device %s: ",
|
||||||
chr->label);
|
chr->label);
|
||||||
s->connect_err_reported = true;
|
s->connect_err_reported = true;
|
||||||
|
} else {
|
||||||
|
error_free(err);
|
||||||
}
|
}
|
||||||
qemu_chr_socket_restart_timer(chr);
|
qemu_chr_socket_restart_timer(chr);
|
||||||
}
|
}
|
||||||
@ -1083,7 +1085,6 @@ static void qemu_chr_socket_connected(QIOTask *task, void *opaque)
|
|||||||
if (qio_task_propagate_error(task, &err)) {
|
if (qio_task_propagate_error(task, &err)) {
|
||||||
tcp_chr_change_state(s, TCP_CHARDEV_STATE_DISCONNECTED);
|
tcp_chr_change_state(s, TCP_CHARDEV_STATE_DISCONNECTED);
|
||||||
check_report_connect_error(chr, err);
|
check_report_connect_error(chr, err);
|
||||||
error_free(err);
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user