diff options
author | Thomas Wouters <thomas@python.org> | 2006-04-25 15:29:46 (GMT) |
---|---|---|
committer | Thomas Wouters <thomas@python.org> | 2006-04-25 15:29:46 (GMT) |
commit | 1ddba60e3d084bfca4615bbd77c3c6f4ed34d8ee (patch) | |
tree | 3219543e7fa62037870be242f4aa70c94308d533 /Modules/posixmodule.c | |
parent | 0452049b6f3c8f78193b0f83072b357264dbcb1c (diff) | |
download | cpython-1ddba60e3d084bfca4615bbd77c3c6f4ed34d8ee.zip cpython-1ddba60e3d084bfca4615bbd77c3c6f4ed34d8ee.tar.gz cpython-1ddba60e3d084bfca4615bbd77c3c6f4ed34d8ee.tar.bz2 |
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.
Diffstat (limited to 'Modules/posixmodule.c')
-rw-r--r-- | Modules/posixmodule.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index ac74a67..7f2356c 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -262,7 +262,11 @@ extern int lstat(const char *, struct stat *); #endif /* OS2 */ #ifndef MAXPATHLEN +#if defined(PATH_MAX) && PATH_MAX > 1024 +#define MAXPATHLEN PATH_MAX +#else #define MAXPATHLEN 1024 +#endif #endif /* MAXPATHLEN */ #ifdef UNION_WAIT |