http://bugs.winehq.org/show_bug.cgi?id=18924
Summary: OutputDebugString does not do what it's supposed to do Product: Wine Version: unspecified Platform: All OS/Version: All Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: ewfewfe@wh4f.org
OutputDebugString seems to be "invisible" to other apps in wine, it just prints a message to the terminal. I saw a mailing list discussion about this problem but I got the impression this wasn't going to be changed anytime soon (because it's "good enough"). Well, it isn't.
As wrong as it may be, some programs rely on parsing other programs debug output, and this breaks down in wine. The specific application I'm having trouble with is FF7Music, some hack that uses debug output to replace the music in Final Fantasy VII.
A fix for this would be greatly appreciated.
http://bugs.winehq.org/show_bug.cgi?id=18924
Ken Sharp kennybobs@o2.co.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, source Version|unspecified |1.1.23
http://bugs.winehq.org/show_bug.cgi?id=18924
Ken Sharp kennybobs@o2.co.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- Platform|All |Other OS/Version|All |other
--- Comment #1 from Ken Sharp kennybobs@o2.co.uk 2009-06-13 07:22:40 --- Set platform to your platform.
Feel free to send patches. http://wiki.winehq.org/SubmittingPatches
http://bugs.winehq.org/show_bug.cgi?id=18924
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID
--- Comment #2 from Dmitry Timoshkov dmitry@codeweavers.com 2009-06-13 07:26:23 --- OutputDebugString() in Wine prints nothing unless a debug output is requested.
http://bugs.winehq.org/show_bug.cgi?id=18924
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #3 from Dmitry Timoshkov dmitry@codeweavers.com 2009-06-13 07:26:45 --- Closing.
http://bugs.winehq.org/show_bug.cgi?id=18924
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #4 from Anastasius Focht focht@gmx.net 2009-06-13 08:46:38 --- Hello,
the reporter probably requests OutputDebugString() to be working as Windows does.
There are many articles how the data is passed between application and debuggers/monitors (using 4K shared memory and sync objects).
http://www.codeproject.com/KB/winsdk/OutputDebugString.aspx
Currently OutputDebugString() passes data straight to Wineserver not respecting any debug message monitor that might have created DBWIN_* objects.
Regards
http://bugs.winehq.org/show_bug.cgi?id=18924
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|CLOSED |UNCONFIRMED Component|-unknown |ntdll Resolution|INVALID | Severity|normal |enhancement
--- Comment #5 from Vitaliy Margolen vitaliy@kievinfo.com 2009-06-13 12:13:23 ---
From comment # 4 Sounds to my like a valid enhancement request.
http://bugs.winehq.org/show_bug.cgi?id=18924
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #6 from Austin English austinenglish@gmail.com 2009-06-13 14:02:43 --- Confirming, per Anasatasius.
http://bugs.winehq.org/show_bug.cgi?id=18924
--- Comment #7 from Dmitry Timoshkov dmitry@codeweavers.com 2009-06-14 02:39:17 --- It's not clear at all from the original bug report what the reporter complains about, and what exactly is the functionality is needed, and is that really about OutputDebugString sending info to the debugger.
http://bugs.winehq.org/show_bug.cgi?id=18924
--- Comment #8 from Anastasius Focht focht@gmx.net 2009-06-14 13:19:50 --- Hello,
--- quote --- It's not clear at all from the original bug report what the reporter complains about, and what exactly is the functionality is needed, and is that really about OutputDebugString sending info to the debugger. --- quote ---
I think it was pretty clear as he described the current OutputDebugString() behaviour and apps which act as "debug message monitor" relying on proper implementation to actually "see" the debug messages. A simple string dump on main executable (after unpacking with UPX) reveals:
--- snip --- $ strings FF7Music.exe | grep DBWIN DBWIN_BUFFER_READY DBWIN_DATA_READY DBWIN_BUFFER --- snip ---
So yes, the app relies on proper OutputDebugString() implementation which Wine currently lacks.
The current implementation can be enhanced by keep sending the message buffer to Wineserver - preserving existing interaction with usermode debuggers - _and_ write the message buffer into shared section if present.
Some tools that can be used for testing (in addition to the link from my previous comment):
"DebugView" from infamous sysinternals team (now M$): http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx
"Hoo WinTail": http://www.hootech.com/WinTail/
"DbMon.NET - A simple .NET OutputDebugString capturer": http://www.codeproject.com/KB/trace/DbMonNET.aspx
Regards
http://bugs.winehq.org/show_bug.cgi?id=18924
Andrey Turkin andrey.turkin@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |andrey.turkin@gmail.com
--- Comment #9 from Andrey Turkin andrey.turkin@gmail.com 2009-10-06 10:43:49 --- Please reset, Wine sends debug strings to monitor now.
http://bugs.winehq.org/show_bug.cgi?id=18924
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|ntdll |kernel32
--- Comment #10 from Nikolay Sivov bunglehead@gmail.com 2009-12-28 17:45:46 --- Please retest this with Wine 1.1.35. Commit 02ce96f425642e7863f15350dad2139ab5c040c1 should fix this.
http://bugs.winehq.org/show_bug.cgi?id=18924
Aali ewfewfe@wh4f.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #11 from Aali ewfewfe@wh4f.org 2010-07-03 12:53:32 --- Working just fine now, thanks go out to all people involved :)
http://bugs.winehq.org/show_bug.cgi?id=18924
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #12 from Alexandre Julliard julliard@winehq.org 2010-07-09 11:57:10 --- Closing bugs fixed in 1.2-rc7.
http://bugs.winehq.org/show_bug.cgi?id=18924
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |02ce96f425642e7863f15350dad | |2139ab5c040c1 Hardware|Other |x86 OS|other |Linux