mirror of
https://github.com/python/cpython.git
synced 2024-11-29 12:54:02 +08:00
Moved PyMac_GetScript() to _localemodule, which is the only place where
it is used, and made it private. Should fix #978662.
This commit is contained in:
parent
75694501ca
commit
59f072ad7c
@ -13,7 +13,6 @@
|
||||
/*
|
||||
** 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 */
|
||||
|
@ -30,7 +30,7 @@ This software comes with no warranty. Use at your own risk.
|
||||
#endif
|
||||
|
||||
#if defined(__APPLE__)
|
||||
#include "pymactoolbox.h"
|
||||
#include <CoreFoundation/CoreFoundation.h>
|
||||
#endif
|
||||
|
||||
#if defined(MS_WINDOWS)
|
||||
@ -406,10 +406,34 @@ PyLocale_getdefaultlocale(PyObject* self)
|
||||
#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
|
||||
|
||||
|
@ -27,30 +27,6 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
#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)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user