qga: fix uname() return value check in guest-get-osinfo POSIX only specifies that uname() returns a non-negative value on success. Solaris returns 1, so guest-get-osinfo treated every successful call as a failure and reported a stale errno.
Check for a negative return value instead, as linux-user/uname.c already does. Signed-off-by: Brad Smith <[email protected]> --- qga/commands-posix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qga/commands-posix.c b/qga/commands-posix.c index dcc683f6c9..23abaf1956 100644 --- a/qga/commands-posix.c +++ b/qga/commands-posix.c @@ -1322,7 +1322,7 @@ GuestOSInfo *qmp_guest_get_osinfo(Error **errp) info = g_new0(GuestOSInfo, 1); - if (uname(&kinfo) != 0) { + if (uname(&kinfo) < 0) { error_setg_errno(errp, errno, "uname failed"); } else { info->kernel_version = g_strdup(kinfo.version); -- 2.56.0
