[ANNOUNCEMENT] Update: mintty 2.1.2
Corinna Vinschen
corinna-cygwin@cygwin.com
Fri Jul 24 13:34:00 GMT 2015
On Jul 24 15:18, Houder wrote:
> Hi Thomas,
>
> >>> mintty 2.1.2 is an update in response to a number of crash reports under
> >>> unclear circumstances;
> > To resolve this discomforting issue which I still cannot reproduce,
> > could please those who experience a crash report some details about
> > their calling environment?
> > Could the issue be related to the occasional fork() resource problems in
> > cygwin?
>
> ... euh, I do not believe so (in my case) ... I installed v211 using setup, which as
> you know, does a full "rebase" ...
>
> Also using 'setsid mintty' (in case of v113, v203) does not fail ...
>
> > How much free memory do you have?
>
> - my computer has lots of free memory (using less than 2 Gb of 8 Gb)
> - my environment: using Cygwin (only the traditional tools)
> - plus: Explorer (and most of the time: Process Explorer from SysInternals)
>
> I am really surprised, that you (and others?) do not experience crashes (v211, v212
> if -D is specfied). Failure occurs consistent on my side.
>
> > Maybe setsid() should not be called if fork() fails...
> > Could you try this please:
> > if (daemonize && !isatty(0)) {
> > int pid = fork();
> > if (pid > 0) exit(0); // exit parent process
> > if (pid == 0) setsid(); // detach child process
> > if (pid < 0) {
> > error("could not detach from caller");
> > exit(9);
> > }
> > }
>
> Hint: source code of setsid.c -- util-linux package)
>
> >> (... and I ask myself whether or not the condition '!isatty' is the "correct condition" to
> >> go "daemon")
> > I wanted to check ttyname() for "/cons" but surprisingly ttyname() was
> > null when started from cygwin console;
>
> ... I expect ttyname() to return NULL, as mintty is a GUI application ... (and it did, using
> a "small GUI test program"; however it returned /dev/pty0 when executing it from a dos console
> in which mintty had been started). Yes, I am confused).
>
> As I wrote 'and I asked myself', I was wondering about something like: 'getpid() != 1'
Guys, the Cygwin DLL is as much open source as the other stuff we're
talking about here. It's a user space DLL, not a kernel driver or
rocket science. Give debugging a chance. Ideally build your own Cygwin
DLL with CFLAGS=-g to avoid optimization. Please don't let me do this
alone and just give up if I don't.
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/20150724/6756f262/attachment.sig>
More information about the Cygwin
mailing list