[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    Re: Consoles (3/3)
From:       Eric Pouech <eric.pouech () wanadoo ! fr>
Date:       2003-02-27 19:57:08
[Download RAW message or body]

> Well in that case you have to use a separate console. It would be nice
> to have the possibility to detect that the Unix tty is not available
> and automatically pop up a console in that case; but unconditionally
> creating a console is wrong, there are many cases where you don't want
> that.

well, if you really want to do that, you have to decide on what you want 
winedbg to use as input / output streams :
1/ the unix stdin / stdout that winedbg will get upon startup => those 
would be inherited from the offending app (of course those streams could 
be redirected to something else than the controlling console)
2/ the current windows-console (if any) of the offending process

note that of course 1/ and 2/ could happen at the same time

the nasty thing, for example, for implementing one would be to do 
something like (whithout error handling):
if in jit mode
{
     if (!isatty(0) || !isatty(1))
     {
	/* restart debugger so that it'll get the right console
	   hooked to 0/1
	 */
	the steps here are:
	    create a new event
	    relaunch dbg with something like *
	    wineconsole -- %argv[0] --pid=<cur_pid> --evt=<new event>
	    wait on <new event>
	    signal old event
	    terminate this process, now that the child has attached
     }
}

which I find particulary ugly

A+
-- 
Eric Pouech


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic