http://bugs.winehq.org/show_bug.cgi?id=27229
Summary: printf() newline missing with multibyte strings Product: Wine Version: 1.3.20 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: itakingiteasy@gmail.com
Created an attachment (id=34797) --> (http://bugs.winehq.org/attachment.cgi?id=34797) Code example making case for missing newline in wine printf when multibyte string is printed
Wine's printf is missing newline when "Multibyte string пукпукпук\n" is supplied to printf(). Attached code is a test-case reproducing the bug. When same binary exectued on windows, or same code compiled for- and executed on- linux - all goes fine. Only when executed under wine newline is missing. It results in that printed string shares same line with next PS1 prompt here is screenshot illusrating the problem (FIG1):
(FIG1) ftp://neverb.net/images/special/screenshot/wine_issue/linux_wine_cmd_exe.png
Note that extra newline in wine cmd.exe is missing.
Here is refference windows screenshot (FIG2) showing where this extra newline should be:
(FIG2) ftp://neverb.net/images/special/screenshot/wine_issue/native_windows.png
Known possible workarounds for this problem:
* add '\r' before '\n' * use only ascii (non-multibyte) characters in printing string * use WCHAR instead of wchar_t * use wprintf(L"%ls\n"~ instead of printf("%s"~
But all this workarounds are just a sideways. I hope that there is some real solution.
Thanks.