summaryrefslogtreecommitdiffstats
path: root/Mac
diff options
context:
space:
mode:
authorRonald Oussoren <ronaldoussoren@mac.com>2009-01-02 14:10:20 (GMT)
committerRonald Oussoren <ronaldoussoren@mac.com>2009-01-02 14:10:20 (GMT)
commit0238497e931f439ff4e1ebe268f31ce23c15407f (patch)
treec62c49a7d4905def8e111b8f65d8f1ea67ce9758 /Mac
parent8c95484cff12e96356f67d31e3fa5e5aa7dbd5ca (diff)
downloadcpython-0238497e931f439ff4e1ebe268f31ce23c15407f.zip
cpython-0238497e931f439ff4e1ebe268f31ce23c15407f.tar.gz
cpython-0238497e931f439ff4e1ebe268f31ce23c15407f.tar.bz2
Fix for issue1594
Diffstat (limited to 'Mac')
-rw-r--r--Mac/Modules/MacOS.c9
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);