[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-trivial] [PATCH 2/5] use qemu_pipe_non_block
From: |
Alon Levy |
Subject: |
[Qemu-trivial] [PATCH 2/5] use qemu_pipe_non_block |
Date: |
Tue, 4 Jun 2013 16:23:36 -0400 |
This fixes six instances of unchecked fcntl return status, spotted by
Coverity.
Signed-off-by: Alon Levy <address@hidden>
---
hw/display/qxl.c | 10 +++-------
hw/usb/ccid-card-emulated.c | 8 +++-----
2 files changed, 6 insertions(+), 12 deletions(-)
diff --git a/hw/display/qxl.c b/hw/display/qxl.c
index 9e5b7ad..25c8c5a 100644
--- a/hw/display/qxl.c
+++ b/hw/display/qxl.c
@@ -1797,15 +1797,11 @@ static void qxl_send_events(PCIQXLDevice *d, uint32_t
events)
static void init_pipe_signaling(PCIQXLDevice *d)
{
- if (pipe(d->pipe) < 0) {
- fprintf(stderr, "%s:%s: qxl pipe creation failed\n",
- __FILE__, __func__);
+ if (qxl_pipe_non_block(d->pipe)) {
+ fprintf(stderr, "%s:%s: qxl pipe creation failed: %s\n",
+ __FILE__, __func__, stderror(errno));
exit(1);
}
- fcntl(d->pipe[0], F_SETFL, O_NONBLOCK);
- fcntl(d->pipe[1], F_SETFL, O_NONBLOCK);
- fcntl(d->pipe[0], F_SETOWN, getpid());
-
qemu_thread_get_self(&d->main);
qemu_set_fd_handler(d->pipe[0], pipe_read, NULL, d);
}
diff --git a/hw/usb/ccid-card-emulated.c b/hw/usb/ccid-card-emulated.c
index deb6d47..2e6942e 100644
--- a/hw/usb/ccid-card-emulated.c
+++ b/hw/usb/ccid-card-emulated.c
@@ -406,13 +406,11 @@ static void pipe_read(void *opaque)
static int init_pipe_signaling(EmulatedState *card)
{
- if (pipe(card->pipe) < 0) {
- DPRINTF(card, 2, "pipe creation failed\n");
+ if (qemu_pipe_non_block(card->pipe) < 0) {
+ DPRINTF(card, 2, "pipe creation failed: %s\n",
+ strerror(errno));
return -1;
}
- fcntl(card->pipe[0], F_SETFL, O_NONBLOCK);
- fcntl(card->pipe[1], F_SETFL, O_NONBLOCK);
- fcntl(card->pipe[0], F_SETOWN, getpid());
qemu_set_fd_handler(card->pipe[0], pipe_read, NULL, card);
return 0;
}
--
1.8.2.1