From fc6467eaf22f974620b5dd046afca04e619f9be9 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Mon, 12 Nov 2012 14:12:54 +0100 Subject: nbd: fix nbd_server_stop crash when no server was running This failed on the new assertion of qemu_set_fd_handler2: qemu-system-x86_64: /home/pbonzini/work/upstream/qemu/iohandler.c:60: qemu_set_fd_handler2: Assertion `fd >= 0' failed. Signed-off-by: Paolo Bonzini --- blockdev-nbd.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'blockdev-nbd.c') diff --git a/blockdev-nbd.c b/blockdev-nbd.c index 8031813071..274fba6e46 100644 --- a/blockdev-nbd.c +++ b/blockdev-nbd.c @@ -113,7 +113,9 @@ void qmp_nbd_server_stop(Error **errp) nbd_close_notifier(&cn->n, nbd_export_get_blockdev(cn->exp)); } - qemu_set_fd_handler2(server_fd, NULL, NULL, NULL, NULL); - close(server_fd); - server_fd = -1; + if (server_fd != -1) { + qemu_set_fd_handler2(server_fd, NULL, NULL, NULL, NULL); + close(server_fd); + server_fd = -1; + } } -- cgit v1.2.1