diff options
Diffstat (limited to 'qga')
-rw-r--r-- | qga/commands-posix.c | 6 |
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) { |