diff options
author | Ronald Oussoren <ronaldoussoren@mac.com> | 2009-01-02 14:10:20 (GMT) |
---|---|---|
committer | Ronald Oussoren <ronaldoussoren@mac.com> | 2009-01-02 14:10:20 (GMT) |
commit | 0238497e931f439ff4e1ebe268f31ce23c15407f (patch) | |
tree | c62c49a7d4905def8e111b8f65d8f1ea67ce9758 /Mac | |
parent | 8c95484cff12e96356f67d31e3fa5e5aa7dbd5ca (diff) | |
download | cpython-0238497e931f439ff4e1ebe268f31ce23c15407f.zip cpython-0238497e931f439ff4e1ebe268f31ce23c15407f.tar.gz cpython-0238497e931f439ff4e1ebe268f31ce23c15407f.tar.bz2 |
Fix for issue1594
Diffstat (limited to 'Mac')
-rw-r--r-- | Mac/Modules/MacOS.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Mac/Modules/MacOS.c b/Mac/Modules/MacOS.c index 272fe8d..bef7f88 100644 --- a/Mac/Modules/MacOS.c +++ b/Mac/Modules/MacOS.c @@ -30,6 +30,9 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #include <Carbon/Carbon.h> #include <ApplicationServices/ApplicationServices.h> +#include <arpa/inet.h> /* for ntohl, htonl */ + + #ifndef HAVE_OSX105_SDK typedef SInt16 FSIORefNum; #endif @@ -310,6 +313,10 @@ MacOS_GetCreatorAndType(PyObject *self, PyObject *args) if ((err = FSpGetFInfo(&fss, &info)) != noErr) { return PyErr_Mac(MacOS_Error, err); } + + info.fdCreator = ntohl(info.fdCreator); + info.fdType = ntohl(info.fdType); + creator = PyString_FromStringAndSize( (char *)&info.fdCreator, 4); type = PyString_FromStringAndSize((char *)&info.fdType, 4); @@ -341,6 +348,8 @@ MacOS_GetCreatorAndType(PyObject *self, PyObject *args) } finfo = (FileInfo*)&(cataloginfo.finderInfo); + finfo->fileCreator = ntohl(finfo->fileCreator); + finfo->fileType = ntohl(finfo->fileType); creator = PyString_FromStringAndSize((char*)&(finfo->fileCreator), 4); type = PyString_FromStringAndSize((char*)&(finfo->fileType), 4); |