diff Python/getcwd.c @ 37980:b535c191a44b legacy-trunk

Define MAXPATHLEN to be at least PATH_MAX, if that's defined. Python uses MAXPATHLEN-sized buffers for various output-buffers (like to realpath()), and that's correct on BSD platforms, but not Linux (which uses PATH_MAX, and does not define MAXPATHLEN.) Cursory googling suggests Linux is following a newer standard than BSD, but in cases like this, who knows. Using the greater of PATH_MAX and 1024 as a fallback for MAXPATHLEN seems to be the most portable solution.
author Thomas Wouters <thomas@python.org>
date Tue, 25 Apr 2006 15:29:46 +0000
parents 6f6f965c5e2d
children e38335d4df91 5cea27275af1
line wrap: on
line diff
--- a/Python/getcwd.c	Tue Apr 25 15:08:10 2006 +0000
+++ b/Python/getcwd.c	Tue Apr 25 15:29:46 2006 +0000
@@ -14,8 +14,12 @@
 #endif
 
 #ifndef MAXPATHLEN
+#if defined(PATH_MAX) && PATH_MAX > 1024
+#define MAXPATHLEN PATH_MAX
+#else
 #define MAXPATHLEN 1024
 #endif
+#endif
 
 extern char *getwd(char *);