Message176732
| Author |
makegho |
| Recipients |
ezio.melotti, makegho |
| Date |
2012年12月01日.00:23:51 |
| SpamBayes Score |
-1.0 |
| Marked as misclassified |
Yes |
| Message-id |
<1354321432.5.0.798652538273.issue16587@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
In a C application on Windows, at least on MSVC 2010 and Windows 7, do this:
wprintf(L"Test\n");
Py_Initialize();
wprintf(L"Test\n");
Output is:
Test
T e s t
I was able to track the issue to fileio.c to the following code block by searching where wprintf breaks:
if (dircheck(self, nameobj) < 0)
goto error;
#if defined(MS_WINDOWS) || defined(__CYGWIN__)
/* don't translate newlines (\r\n <=> \n) */
_setmode(self->fd, O_BINARY); <----- breaks it
#endif
if (PyObject_SetAttrString((PyObject *)self, "name", nameobj) < 0)
goto error;
This can be easily confirmed by adding wprintfs on both sides of _setmode.
This issue was also raised at http://mail.python.org/pipermail/python-list/2012-February/620528.html but no solution was provided back then. |
|
History
|
|---|
| Date |
User |
Action |
Args |
| 2012年12月01日 00:23:52 | makegho | set | recipients:
+ makegho, ezio.melotti |
| 2012年12月01日 00:23:52 | makegho | set | messageid: <1354321432.5.0.798652538273.issue16587@psf.upfronthosting.co.za> |
| 2012年12月01日 00:23:52 | makegho | link | issue16587 messages |
| 2012年12月01日 00:23:51 | makegho | create |
|