diff options
Diffstat (limited to 'nbd')
-rw-r--r-- | nbd/server.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/nbd/server.c b/nbd/server.c index 895cd7f132..8ceac89a23 100644 --- a/nbd/server.c +++ b/nbd/server.c @@ -972,7 +972,7 @@ void nbd_export_close_all(void) static int nbd_co_send_reply(NBDRequestData *req, NBDReply *reply, int len) { NBDClient *client = req->client; - int rc, ret; + int rc; g_assert(qemu_in_coroutine()); qemu_co_mutex_lock(&client->send_lock); @@ -983,9 +983,9 @@ static int nbd_co_send_reply(NBDRequestData *req, NBDReply *reply, int len) } else { qio_channel_set_cork(client->ioc, true); rc = nbd_send_reply(client->ioc, reply); - if (rc >= 0) { - ret = nbd_write(client->ioc, req->data, len, NULL); - if (ret < 0) { + if (rc == 0) { + rc = nbd_write(client->ioc, req->data, len, NULL); + if (rc < 0) { rc = -EIO; } } |