/*
** Helper routines for error codes and such.
*/
-char *PyMac_getscript(void); /* Get the default encoding for our 8bit character set */
char *PyMac_StrError(int); /* strerror with mac errors */
extern PyObject *PyMac_OSErrException; /* Exception for OSErr */
PyObject *PyMac_GetOSErrException(void); /* Initialize & return it */
#endif
#if defined(__APPLE__)
-#include "pymactoolbox.h"
+#include <CoreFoundation/CoreFoundation.h>
#endif
#if defined(MS_WINDOWS)
#endif
#if defined(__APPLE__)
+/*
+** Find out what the current script is.
+** Donated by Fredrik Lund.
+*/
+static char *mac_getscript(void)
+{
+ CFStringEncoding enc = CFStringGetSystemEncoding();
+ static CFStringRef name = NULL;
+ /* Return the code name for the encodings for which we have codecs. */
+ switch(enc) {
+ case kCFStringEncodingMacRoman: return "mac-roman";
+ case kCFStringEncodingMacGreek: return "mac-greek";
+ case kCFStringEncodingMacCyrillic: return "mac-cyrillic";
+ case kCFStringEncodingMacTurkish: return "mac-turkish";
+ case kCFStringEncodingMacIcelandic: return "mac-icelandic";
+ /* XXX which one is mac-latin2? */
+ }
+ if (!name) {
+ /* This leaks a an object. */
+ name = CFStringConvertEncodingToIANACharSetName(enc);
+ }
+ return (char *)CFStringGetCStringPtr(name, 0);
+}
+
static PyObject*
PyLocale_getdefaultlocale(PyObject* self)
{
- return Py_BuildValue("Os", Py_None, PyMac_getscript());
+ return Py_BuildValue("Os", Py_None, mac_getscript());
}
#endif
#include "pymactoolbox.h"
-/*
-** Find out what the current script is.
-** Donated by Fredrik Lund.
-*/
-char *PyMac_getscript()
-{
- CFStringEncoding enc = CFStringGetSystemEncoding();
- static CFStringRef name = NULL;
- /* Return the code name for the encodings for which we have codecs. */
- switch(enc) {
- case kCFStringEncodingMacRoman: return "mac-roman";
- case kCFStringEncodingMacGreek: return "mac-greek";
- case kCFStringEncodingMacCyrillic: return "mac-cyrillic";
- case kCFStringEncodingMacTurkish: return "mac-turkish";
- case kCFStringEncodingMacIcelandic: return "mac-icelandic";
- /* XXX which one is mac-latin2? */
- }
- if (!name) {
- /* This leaks a an object. */
- name = CFStringConvertEncodingToIANACharSetName(enc);
- }
- return (char *)CFStringGetCStringPtr(name, 0);
-}
-
/* Like strerror() but for Mac OS error numbers */
char *PyMac_StrError(int err)
{