This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ANNOUNCEMENT] Updated: run-1.1.11-1


Corinna Vinschen wrote:
> On Aug 14 17:39, Ken Brown wrote:
>> On 8/14/2009 2:48 PM, Corinna Vinschen wrote:
>>>> Given that the X server shortcut is just a `run /usr/bin/startxwin.bat',
>>>> is it possible that the new incarnation doesn't start cmd correctly?
>>> I built with -DDEBUG and it appears that startxwin.bat runs fine,
>>> but the "run within run" inside of startxwin.bat
>>>
>>>   %RUN% XWin -multiwindow -clipboard -silent-dup-error
>>>
>>> fails silently.
>> I can confirm that the shortcut to start the X server doesn't work on my  
>> XP system with the patched run.  But my shortcut for starting emacs  
>> (http://cygwin.com/ml/cygwin/2009-08/msg00379.html), which has a very  
>> similar run within run, works fine.
> 
> Apparently `run XWin' doesn't work at all anymore, everything else seems
> to work fine.  A shortcut starting XWin directly w/o run works fine as
> well.  Is XWin allergic against the pipe redirection, maybe?

Hmm. I've been testing using the XMing xserver, just to avoid any
possible complications on the client side; that's why I didn't notice
the problem.

It seems that emacs.exe (and even emacs-X11,exe) are both console
programs, while XWin.exe is a GUI program (that is, "objdump -p $prog |
grep ^Subsystem" reports

Subsystem               00000002        (Windows GUI)

rather than

Subsystem               00000003        (Windows CUI)

So...food for thought.



Anyway, I thought about adding a cmdline switch to run, to allow the
user to choose whether stdio handle redirection should happen.  But I'd
really rather it were automatic.  Then I got to thinking, /IF/ the
problem is GUI mode programs, then...maybe run can probe the PE header,
determine if the target is already GUI, and if so...just launch it using
exec (_spawn on MinGW)?

That way, all this mess is avoided -- really, the console-hiding
property of "run" is kinda pointless for GUI progs; the only value it
adds in that case is (a) -p setting the PATH, and (b) -wait.  So...just
skip all the console-hiding stuff.

Do you think this idea is worth pursuing?

--
Chuck

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]