]> granicus.if.org Git - python/commitdiff
The 'Navigation Toolbox' is not available at all for 64-bit
authorRonald Oussoren <ronaldoussoren@mac.com>
Tue, 22 Sep 2009 14:24:57 +0000 (14:24 +0000)
committerRonald Oussoren <ronaldoussoren@mac.com>
Tue, 22 Sep 2009 14:24:57 +0000 (14:24 +0000)
code, make this explicit in the C code to avoid confusing
error messages during the build.

Mac/Modules/Nav.c

index e03a06ea7309e9bf70080d25fbff3c0aea8ce639..1c1777663c46c4f9bec3943b27d5f133a3b2079c 100644 (file)
@@ -33,6 +33,8 @@ PERFORMANCE OF THIS SOFTWARE.
 #include "pymactoolbox.h"
 #include <Carbon/Carbon.h>
 
+#ifndef __LP64__
+
 static PyObject *ErrorObject;
 
 static NavEventUPP my_eventProcUPP;
@@ -184,22 +186,18 @@ filldialogoptions(PyObject *d,
                } else if( strcmp(keystr, "preferenceKey") == 0 ) {
                        if ( !PyArg_Parse(value, "O&", PyMac_GetOSType, &opt->preferenceKey) )
                                return 0;
-#ifndef __LP64__
                } else if( strcmp(keystr, "popupExtension") == 0 ) {
                        if ( !PyArg_Parse(value, "O&", ResObj_Convert, &opt->popupExtension) )
                                return 0;
-#endif /* !__LP64__ */
                } else if( eventProcP && strcmp(keystr, "eventProc") == 0 ) {
                        *eventProcP = my_eventProcUPP;
                } else if( previewProcP && strcmp(keystr, "previewProc") == 0 ) {
                        *previewProcP = my_previewProcUPP;
                } else if( filterProcP && strcmp(keystr, "filterProc") == 0 ) {
                        *filterProcP = my_filterProcUPP;
-#ifndef __LP64__
                } else if( typeListP && strcmp(keystr, "typeList") == 0 ) {
                        if ( !PyArg_Parse(value, "O&", ResObj_Convert, typeListP) )
                                return 0;
-#endif /* !__LP64__ */
                } else if( fileTypeP && strcmp(keystr, "fileType") == 0 ) {
                        if ( !PyArg_Parse(value, "O&", PyMac_GetOSType, fileTypeP) )
                                return 0;
@@ -306,22 +304,14 @@ static PyObject *
 navrr_getattr(navrrobject *self, char *name)
 {
        FSRef fsr;
-#ifndef __LP64__
        FSSpec fss;
-#endif /* !__LP64__ */
        
        if( strcmp(name, "__members__") == 0 )
                return Py_BuildValue(
-#ifndef __LP64__
-                               "ssssssssss", 
-#else /* __LP64__ */
                                "ssssssssss", 
-#endif /* __LP64__ */
                                "version", "validRecord", "replacing",
                        "isStationery", "translationNeeded", 
-#ifndef __LP64__
                        "selection", 
-#endif /* !__LP64__ */
                        "selection_fsr",
                        "fileTranslation", "keyScript", "saveFileName");
 
@@ -335,7 +325,6 @@ navrr_getattr(navrrobject *self, char *name)
                return Py_BuildValue("l", (long)self->itself.isStationery);
        if( strcmp(name, "translationNeeded") == 0 )
                return Py_BuildValue("l", (long)self->itself.translationNeeded);
-#ifndef __LP64__
        if( strcmp(name, "selection") == 0 ) {
                SInt32 i;
                long count;
@@ -367,7 +356,6 @@ navrr_getattr(navrrobject *self, char *name)
                }
                return rv;
        }
-#endif /* !__LP64__ */
        if( strcmp(name, "selection_fsr") == 0 ) {
                SInt32 i;
                long count;
@@ -399,10 +387,8 @@ navrr_getattr(navrrobject *self, char *name)
                }
                return rv;
        }
-#ifndef __LP64__
        if( strcmp(name, "fileTranslation") == 0 )
                return ResObj_New((Handle)self->itself.fileTranslation);
-#endif
        if( strcmp(name, "keyScript") == 0 )
                return Py_BuildValue("h", (short)self->itself.keyScript);
        if( strcmp(name, "saveFileName") == 0 )
@@ -885,11 +871,7 @@ nav_NavGetDefaultDialogOptions(PyObject *self, PyObject *args)
                return NULL;
        }
        return Py_BuildValue(
-#ifndef __LP64__
                        "{s:h,s:l,s:O&,s:O&,s:O&,s:O&,s:O&,s:O&,s:O&,s:O&,s:O&}",
-#else /* __LP64__ */
-                       "{s:h,s:l,s:O&,s:O&,s:O&,s:O&,s:O&,s:O&,s:O&,s:O&}",
-#endif /* __LP64__ */
                "version", dialogOptions.version,
                "dialogOptionFlags", dialogOptions.dialogOptionFlags,
                "location", PyMac_BuildPoint, dialogOptions.location,
@@ -900,9 +882,7 @@ nav_NavGetDefaultDialogOptions(PyObject *self, PyObject *args)
                "savedFileName", PyMac_BuildStr255, &dialogOptions.savedFileName,
                "message", PyMac_BuildStr255, &dialogOptions.message,
                "preferenceKey", PyMac_BuildOSType, dialogOptions.preferenceKey
-#ifndef __LP64__
                ,"popupExtension", OptResObj_New, dialogOptions.popupExtension
-#endif /* __LP64__ */
                );
 }
 
@@ -943,6 +923,10 @@ static char Nav_module_documentation[] =
 "Pass None as eventProc to get movable-modal dialogs that process updates through the standard Python mechanism."
 ;
 
+
+#endif /* !__LP64__ */
+
+
 void
 initNav(void)
 {
@@ -951,6 +935,12 @@ initNav(void)
        if (PyErr_WarnPy3k("In 3.x, Nav is removed.", 1))
                return;
 
+#ifdef __LP64__
+       PyErr_SetString(PyExc_ImportError, "Navigation Services not available in 64-bit mode");
+       return;
+
+#else  /* !__LP64__ */
+
        /* Test that we have NavServices */
        if ( !NavServicesAvailable() ) {
                PyErr_SetString(PyExc_ImportError, "Navigation Services not available");
@@ -972,6 +962,7 @@ initNav(void)
        my_eventProcUPP = NewNavEventUPP(my_eventProc);
        my_previewProcUPP = NewNavPreviewUPP(my_previewProc);
        my_filterProcUPP = NewNavObjectFilterUPP(my_filterProc);
+#endif /* !__LP64__ */
        
 }