[Python-3000-checkins] r55876 - python/branches/py3k-struni/Python/codecs.c
martin.v.loewis
python-3000-checkins at python.org
Mon Jun 11 06:19:18 CEST 2007
Author: martin.v.loewis
Date: Mon Jun 11 06:19:13 2007
New Revision: 55876
Modified:
python/branches/py3k-struni/Python/codecs.c
Log:
Short-cut lookup of utf-8 codec, to make import work
on OSX.
Modified: python/branches/py3k-struni/Python/codecs.c
==============================================================================
--- python/branches/py3k-struni/Python/codecs.c (original)
+++ python/branches/py3k-struni/Python/codecs.c Mon Jun 11 06:19:13 2007
@@ -319,6 +319,23 @@
PyObject *args = NULL, *result = NULL;
PyObject *v;
+ /* XXX short-cut a few common file system
+ encodings for now, as otherwise the import
+ code can't load the codec registry. */
+ if (strcmp(encoding, "utf-8") == 0 && PyUnicode_Check(object)) {
+ return PyUnicode_EncodeUTF8(PyUnicode_AS_UNICODE(object),
+ PyUnicode_GET_SIZE(object),
+ errors);
+ }
+#if defined(MS_WINDOWS) && defined(HAVE_USABLE_WCHAR_T)
+ if (strcmp(encoding, "mbcs") == 0 && PyUnicode_Check(object)) {
+ return PyUnicode_EncodeMBCS(PyUnicode_AS_UNICODE(object),
+ PyUnicode_GET_SIZE(object),
+ errors);
+ }
+#endif
+
+
encoder = PyCodec_Encoder(encoding);
if (encoder == NULL)
goto onError;
More information about the Python-3000-checkins
mailing list