diff options
Diffstat (limited to 'src/service/util/serviceutil.c')
-rw-r--r-- | src/service/util/serviceutil.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/service/util/serviceutil.c b/src/service/util/serviceutil.c index e2a041e..121360d 100644 --- a/src/service/util/serviceutil.c +++ b/src/service/util/serviceutil.c @@ -219,13 +219,12 @@ Service_Operation(const char *service, const char *method, char *result, int res snprintf(cmd, cmd_size, "%s%ul", proc_path, tfd); snprintf(cmdbuffer, OPERATION_BUFSIZE, "%s %s %s > %s", suscript, method, service, cmd); - if (system(cmdbuffer) != 0) { - return -1; - } + + res = system(cmdbuffer); /* we got some output? */ read(tfd, result, resultlen); close(tfd); - res = 0; - return res; + + return WEXITSTATUS(res); } |