summaryrefslogtreecommitdiffstats
path: root/qga
diff options
context:
space:
mode:
Diffstat (limited to 'qga')
-rw-r--r--qga/commands-posix.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/qga/commands-posix.c b/qga/commands-posix.c
index 094487c2c3..78f2f21001 100644
--- a/qga/commands-posix.c
+++ b/qga/commands-posix.c
@@ -404,7 +404,11 @@ int64_t qmp_guest_file_open(const char *path, bool has_mode, const char *mode,
/* set fd non-blocking to avoid common use cases (like reading from a
* named pipe) from hanging the agent
*/
- qemu_set_nonblock(fileno(fh));
+ if (!g_unix_set_fd_nonblocking(fileno(fh), true, NULL)) {
+ fclose(fh);
+ error_setg_errno(errp, errno, "Failed to set FD nonblocking");
+ return -1;
+ }
handle = guest_file_handle_add(fh, errp);
if (handle < 0) {