]> Kevux Git Server - rit/commitdiff
run_command(): help callers distinguish errors
authorJeff King <peff@peff.net>
Wed, 28 Jan 2009 07:36:39 +0000 (02:36 -0500)
committerJunio C Hamano <gitster@pobox.com>
Wed, 28 Jan 2009 22:09:35 +0000 (14:09 -0800)
run_command() returns a single integer specifying either an
error code or the exit status of the spawned program. The
only way to tell the difference is that the error codes are
outside of the allowed range of exit status values.

Rather than make each caller implement the test against a
magic limit, let's provide a macro.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
run-command.h

index a8b0c20..e90d928 100644 (file)
@@ -10,6 +10,7 @@ enum {
        ERR_RUN_COMMAND_WAITPID_SIGNAL,
        ERR_RUN_COMMAND_WAITPID_NOEXIT,
 };
+#define IS_RUN_COMMAND_ERR(x) ((x) <= -ERR_RUN_COMMAND_FORK)
 
 struct child_process {
        const char **argv;