diff options
author | Jack Jansen <jack.jansen@cwi.nl> | 2001-09-10 22:00:39 (GMT) |
---|---|---|
committer | Jack Jansen <jack.jansen@cwi.nl> | 2001-09-10 22:00:39 (GMT) |
commit | 697842f58cfa15e86e92fa1c2733d7d9908a340e (patch) | |
tree | 7f5045964d5946de3f348459fb485a2463eddb69 /Mac/Modules/macfsmodule.c | |
parent | b0e8e9b72fb6eb42ecd4d9ea9e88563d1ca4528a (diff) | |
download | cpython-697842f58cfa15e86e92fa1c2733d7d9908a340e.zip cpython-697842f58cfa15e86e92fa1c2733d7d9908a340e.tar.gz cpython-697842f58cfa15e86e92fa1c2733d7d9908a340e.tar.bz2 |
Replaced PyMac_FullPath by PyMac_FullPathname, which has an extra 'length'
parameter for the return string (as unix pathnames are not limited
by the 255 char pstring limit).
Implemented the function for MachO-Python, where it returns unix pathnames.
Diffstat (limited to 'Mac/Modules/macfsmodule.c')
-rw-r--r-- | Mac/Modules/macfsmodule.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/Mac/Modules/macfsmodule.c b/Mac/Modules/macfsmodule.c index 2c20e89..15d9f30 100644 --- a/Mac/Modules/macfsmodule.c +++ b/Mac/Modules/macfsmodule.c @@ -51,6 +51,12 @@ extern PyObject *_PyMac_BuildFSRef(FSRef *); #endif static PyObject *ErrorObject; +#ifdef TARGET_API_MAC_OSX +#define PATHNAMELEN 1024 +#else +#define PATHNAMELEN 256 +#endif + /* ----------------------------------------------------- */ /* Declarations for objects of type Alias */ @@ -449,22 +455,17 @@ PyMac_SetFileDates(FSSpec *fss, unsigned long crdat, unsigned long mddat, static PyObject * mfss_as_pathname(mfssobject *self, PyObject *args) { -#if TARGET_API_MAC_OSX - PyErr_SetString(PyExc_NotImplementedError, "FSSpec.as_pathname not supported on this platform"); - return 0; -#else - char strbuf[257]; + char strbuf[PATHNAMELEN]; OSErr err; if (!PyArg_ParseTuple(args, "")) return NULL; - err = PyMac_GetFullPath(&self->fsspec, strbuf); + err = PyMac_GetFullPathname(&self->fsspec, strbuf, PATHNAMELEN); if ( err ) { PyErr_Mac(ErrorObject, err); return NULL; } return PyString_FromString(strbuf); -#endif } static PyObject * |