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 15e870a65eb037cd49d1e01251711915da06d260..e3455028435eab958d5f86a3e86249f1704b9c1b 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;