diff options
author | Ralf Habacker <ralf.habacker@freenet.de> | 2015-11-02 21:56:32 +0100 |
---|---|---|
committer | Ralf Habacker <ralf.habacker@freenet.de> | 2015-11-03 14:23:22 +0100 |
commit | 04b8a7a772cfa9ae8ea6ce452d1fb7f23e25fd3f (patch) | |
tree | 7064886e2313d22ba7f996649311ad3b6f31aaf5 | |
parent | 34d0c73f998281467ead1b3e185f5b53df6d221f (diff) | |
download | dbus-04b8a7a772cfa9ae8ea6ce452d1fb7f23e25fd3f.tar.gz |
Fix warning: variable 'ret' set but not used [-Wunused-but-set-variable].
Only set valid child status in case exit code has been gotten from
child process, otherwise signal failure through thread return value.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=92721
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
-rw-r--r-- | dbus/dbus-spawn-win.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/dbus/dbus-spawn-win.c b/dbus/dbus-spawn-win.c index 7f68f14e..faf1ab4d 100644 --- a/dbus/dbus-spawn-win.c +++ b/dbus/dbus-spawn-win.c @@ -616,13 +616,16 @@ babysitter (void *parameter) DWORD status; PING(); + // wait until process finished WaitForSingleObject (sitter->child_handle, INFINITE); PING(); ret = GetExitCodeProcess (sitter->child_handle, &status); - - sitter->child_status = status; - sitter->have_child_status = TRUE; + if (ret) + { + sitter->child_status = status; + sitter->have_child_status = TRUE; + } CloseHandle (sitter->child_handle); sitter->child_handle = NULL; @@ -637,7 +640,7 @@ babysitter (void *parameter) _dbus_babysitter_unref (sitter); - return 0; + return ret ? 0 : 1; } dbus_bool_t |