fixed StandardGetFile argument handling
diff --git a/Mac/Modules/macfsmodule.c b/Mac/Modules/macfsmodule.c
index 2183685..09c7883 100644
--- a/Mac/Modules/macfsmodule.c
+++ b/Mac/Modules/macfsmodule.c
@@ -405,27 +405,20 @@
object *self; /* Not used */
object *args;
{
- char *list[4];
- SFTypeList typelist;
+ SFTypeList list;
short numtypes;
StandardFileReply reply;
list[0] = list[1] = list[2] = list[3] = 0;
numtypes = 0;
-#if 0
- /* XXXX Why doesn't this work? */
- if (!newgetargs(args, "|O&|O&|O&|O&", PyMac_GetOSType, &list[0],
+ if (!newgetargs(args, "|O&O&O&O&", PyMac_GetOSType, &list[0],
PyMac_GetOSType, &list[1], PyMac_GetOSType, &list[2],
PyMac_GetOSType, &list[3]) )
return NULL;
-#else
- if (!newgetargs(args, "|O&", PyMac_GetOSType, &list[0]) )
- return NULL;
-#endif
- while ( list[numtypes] && numtypes < 4 ) {
+ while ( numtypes < 4 && list[numtypes] ) {
numtypes++;
}
- StandardGetFile((FileFilterUPP)0, numtypes, typelist, &reply);
+ StandardGetFile((FileFilterUPP)0, numtypes, list, &reply);
return mkvalue("(Oi)", newmfssobject(&reply.sfFile), reply.sfGood);
}