Mail Archives: cygwin/2003/03/12/07:46:30
> Resent-To: Richard DOT Broberg AT mail DOT inficon DOT com
> Resent-From: rhb AT inficon DOT com
> Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
> Sender: cygwin-owner AT cygwin DOT com
> Mail-Followup-To: cygwin AT cygwin DOT com
> X-Injected-Via-Gmane: http://gmane.org/
> From: Thorsten Kampe <thorsten AT thorstenkampe DOT de>
> Date: Tue, 11 Mar 2003 23:43:23 +0100
[snip]
>
> * Francis Litterio (03-03-11 21:03 +0100)
> > Max Bowsher wrote:
> >> Richard H. Broberg wrote:
> >>> In the meantime I'll
> >>> happily use rxvt in place of bash, since it does what I need.
> >>
> >> You are confused.
> >>
> >> rxvt is a terminal.
> >> bash is a shell.
> >
> > Looked at another way:
> >
> > rxvt is a GUI application.
> > bash is a console application.
>
> Not necessarily. Quoting Igor Pechtchanski: "Cygwin rxvt can run
> without X using the W11 library it comes with." - and I think this is
> how most people use it under Cygwin.
>
> Richard H. Broberg was quite confused: rxvt is a terminal runnig a
> shell like bash running applications.
>
No, I wasn't; in this context I was referring to bash as in
"using the 'bash cygwin shell' shortcut, aka 'bash --login -i'",
which results in a window appearing (yes, it happens to be a console
window). Running rxvt also causes a window to appear, either on an X
DISPLAY or as a standalone window. Running programs in the
background in the 'bash --login -i' window results in the behavior
I described.
The end result is that I cannot spawn a bash shell (with --login -i)
which results in a window, put a program nohup in the background, and
exit the window (well, I can, but the window sticks around until
the child process is gone). And I can do just that in rxvt.
Pedantry and semantics aside, I did some investigation with AllocConsole
and FreeConsole. Although it seems as though these may be a necessary
component of fixing the problem, it doesn't seem sufficient. I wrote
a test program which called 'FreeConsole' after it logged something
(so I could be sure it properly ran!), then blocked for 60 seconds.
Running this in a bash window (bash --login -i, aka 'cygwin bash shell')
nohup, input/output redirected, and backgrounded, still didn't let
me exit bash (without blocking). So even providing that some magic
was done at fork/exec in bash, or in exit() in the library (to ensure
'console' releasing) I think it needs more.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -