Le 20/11/2012 13:31, Alexandre Julliard a écrit :
Eric Pouech eric.pouech@orange.fr writes:
That doesn't look right. There's no guarantee that the handle is for the current process console.
in fact, it's guaranted, because we check before (in the function calling this helper) that the handle is really a console handler and that it's in bare mode one could make it clearer by adding a comment to the helper function saying that those two conditions are met
That doesn't guarantee that it's the process console, console handles can be passed across processes.
yes, but the base console code is already broken wrt this point (we use the current process' console wait object instead of the wait object of the passed console)
potential solutions ? - extending the server calls to support this behavior would break rights enforcement. not good IMO. - seperate the process to read input from fd(0) and the current running process (hence ensuring that we get the correct rights for writing) this is what we do with wineconsole (for other backends). moving bare console to wineconsole could also other benefits, as ensuring that the process controling the unix console doesn't die until the last wine process using it dies (and resetting the terminal control at exit) - any other ideas ?
A+