http://bugs.winehq.org/show_bug.cgi?id=17124
Jason Edmeades us@edmeades.me.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |us@edmeades.me.uk
--- Comment #5 from Jason Edmeades us@edmeades.me.uk 2012-11-20 18:12:17 CST --- I started looking into this. Basically, the installer (a GUI app) calls 0024:Call
KERNEL32.CreateProcessA(00000000,00476110 "c:\msys\1.0\postinstall\pi.bat pi.sh",00000000,00000000,00000000,00000000,00000000,00478644 "c:\msys\1.0\postinstall",0033fa0c,0033f9fc) ret=00437a11
Whats interesting here is the dwCreationFlags dows not include CREATE_NEW_CONSOLE, BUT on windows you get a new console and on wine you dont. I've done some testing with a variety of combinations of cmd/GUI launching cmd/GUI launching cmd/GUI
Overall the bug seems to be that CreateProcess should do something like: - Is the program being launched flagged as a console app - If it is, see if there is a console allocated to the existing process - If there is no existing console, default to CREATE_NEW_CONSOLE for the create
Note I also tested with AllocConsole from a GUI prior to a createprocess for a console app, and as far as I could tell, the CreateProcess does not generate a new console, it uses the one Allocated to the GUI.
Now there is also a 2nd problem this bug shows, which is that when running in bare mode (ie not in wineconsole), the line endings / echoing does not work nicely - Have not looked into that at all, should be a 2nd bug once this is addressed.