From: Victor Stinner <vstinner@wyplay.com> Date: Mon, 21 Nov 2011 14:41:17 +0000 (+0100) Subject: Another temporary hack to debug the issue #13441 X-Git-Tag: v3.3.0a1~772 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a697b373002b25c643fb898cf95e474446b2ee97;p=python Another temporary hack to debug the issue #13441 Dump the wchar_t that we are going to decode and dump the locale --- diff --git a/Modules/_localemodule.c b/Modules/_localemodule.c index 236442f05b..6a751d6187 100644 --- a/Modules/_localemodule.c +++ b/Modules/_localemodule.c @@ -72,6 +72,20 @@ str2uni(const char* s) assert(res1 != (size_t)-1); #else assert(res1 == needed); +#endif +#ifdef Py_DEBUG + { + size_t i; + printf("Decode wchar_t {"); + for (i=0; i<res1; i++) { + wchar_t ch = dest[i]; + if (i) + printf(" U+%04x", ch); + else + printf("U+%04x", ch); + } + printf("} (len=%u)\n", res1); + } #endif res2 = PyUnicode_FromWideChar(dest, res1); if (dest != smallbuf) @@ -160,12 +174,18 @@ PyLocale_setlocale(PyObject* self, PyObject* args) if (locale) { /* set locale */ +#ifdef Py_DEBUG + printf("SET LOCALE \"%s\"\n", locale); +#endif result = setlocale(category, locale); if (!result) { /* operation failed, no setting was changed */ PyErr_SetString(Error, "unsupported locale setting"); return NULL; } +#ifdef Py_DEBUG + printf("SET LOCALE -> %s\n", result); +#endif result_object = str2uni(result); if (!result_object) return NULL;