From: Paolo Bonzini Date: Mon, 12 Nov 2012 13:12:54 +0000 (+0100) Subject: nbd: fix nbd_server_stop crash when no server was running X-Git-Tag: v1.3.0-rc0~39^2~4 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=fc6467eaf22f974620b5dd046afca04e619f9be9;p=users%2Fdwmw2%2Fqemu.git 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 --- 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; + } }