summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2003-11-08 20:14:51 +0000
committerTom Lane2003-11-08 20:14:51 +0000
commit153e83027de3ff7497829b4e91476828446e6928 (patch)
tree8d882b3d94fe6c2115926314e777f2fa4667b86e
parent87758314ca2719f20839169cef7e934e1b9a0600 (diff)
Don't need hack copy of system() anymore in OS X 10.3.
-rw-r--r--src/backend/port/darwin/README5
-rw-r--r--src/backend/port/darwin/system.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/backend/port/darwin/README b/src/backend/port/darwin/README
index 1c160654a41..0f0a9166ab1 100644
--- a/src/backend/port/darwin/README
+++ b/src/backend/port/darwin/README
@@ -24,3 +24,8 @@ port/SUBSYS.o definition of _system in section (__TEXT,__text)
/usr/lib/libm.dylib(system.o) unused definition of _system
These are due to overriding system() per the above-described hack.
+
+
+The bug appears to be repaired in OS X 10.2.6 and later (possibly in
+earlier 10.2.* as well, but no systems handy to check). We #ifdef out
+the substitute system() definition on 10.3 and later.
diff --git a/src/backend/port/darwin/system.c b/src/backend/port/darwin/system.c
index a0c0801f2ab..50fa32a2656 100644
--- a/src/backend/port/darwin/system.c
+++ b/src/backend/port/darwin/system.c
@@ -1,3 +1,7 @@
+/* only needed in OS X 10.1 and possibly early 10.2 releases */
+#include <AvailabilityMacros.h>
+#if MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_2 || !defined(MAC_OS_X_VERSION_10_2)
+
/*
* Copyright (c) 1988, 1993
* The Regents of the University of California. All rights reserved.
@@ -97,3 +101,5 @@ system(const char *command)
(void) sigprocmask(SIG_SETMASK, &oldsigblock, NULL);
return (pid == -1 ? -1 : pstat);
}
+
+#endif /* OS X < 10.3 */