fix portability problem with IS_RUN_COMMAND_ERR
authorJeff King <peff@peff.net>
Tue, 31 Mar 2009 12:29:23 +0000 (08:29 -0400)
committerJunio C Hamano <gitster@pobox.com>
Wed, 1 Apr 2009 18:05:54 +0000 (11:05 -0700)
Some old versions of gcc don't seem to like us negating an
enum constant. Let's work around it by negating the other
half of the comparison instead.

Reported by Pierre Poissinger on gcc 2.9.

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

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