Date: Fri, 23 Oct 2009 16:34:01 +0400 From: pluknet <pluknet@gmail.com> To: Alexander Best <alexbestms@math.uni-muenster.de> Cc: Antony Mawer <lists@mawer.org>, freebsd-hackers@freebsd.org Subject: Re: help needed to fix contrib/ee crash/exit when receiving SIGWINCH Message-ID: <a31046fc0910230534h3420e57aw6b855219361f9dd7@mail.gmail.com> In-Reply-To: <permail-2009102312085080e26a0b00003a96-a_best01@message-id.uni-muenster.de> References: <20091023135024.377bcfa6@ernst.jennejohn.org> <permail-2009102312085080e26a0b00003a96-a_best01@message-id.uni-muenster.de>
next in thread | previous in thread | raw e-mail | index | archive | help
2009/10/23 Alexander Best <alexbestms@math.uni-muenster.de>: > Gary Jennejohn schrieb am 2009-10-23: >> On Fri, 23 Oct 2009 12:58:43 +0400 >> pluknet <pluknet@gmail.com> wrote: > >> > 2009/10/23 Antony Mawer <lists@mawer.org>: >> > > On Fri, Oct 23, 2009 at 1:35 PM, Alexander Best >> > > <alexbestms@math.uni-muenster.de> wrote: >> > >> hi everyone, > >> > >> together with hugh mahon (the author of ee) i've been trying to >> > >> fix a nasty >> > >> bug in ee. for some reason ee exits (not crashes) and leaves the >> > >> console >> > >> corrupted when receiving SIGWINCH (`killall -SIGWINCH ee` should >> > >> exit all >> > >> running ee instances). > >> > > I noticed this the other day when working on a new 8.0-RC1 >> > > system... >> > > in my case I was using putty (Windows ssh client) to access the >> > > system >> > > and maximised the window I had ee running in, and noticed ee just >> > > dumped me straight to the prompt. > >> > > I am wondering if this has anything to do with the new tty >> > > subsystem >> > > in 8.0, as this wasn't a problem I've experienced before under >> > > 7.x... > > >> > No, that's a regression appeared in (FreeBSD'ish? version of) ee >> > 1.5.0. > > >> SIGWINCH is handled in new_curse.c, but it's not being >> compiled/linked. > >> --- >> Gary Jennejohn > > i think that file is only used on systems which have termio.h/sgtty.h and= ee > doesn't get linked against ncurses. on those systems (linux e.g.) new_cur= se.c > is used to handle certain things which ncurses takes care under freebsd. > > this is under freebsd: > > `make`: > Neither termio.h or sgtty.h are on this system! > Relying on local curses implementation. > Generating make.local > make -f make.local > cc ee.c -o ee -ggdb -DDIAG -DHAS_UNISTD -DHAS_STDARG -DHAS_STDLIB -DHAS_C= TYPE > -DHAS_SYS_IOCTL -DHAS_SYS_WAIT =A0 -DSLCT_HDR > -DTERMCAP=3D"\"/usr/share/misc/termcap\"" -lcursesw > > `ldd ee`: > libncursesw.so.8 =3D> /lib/libncursesw.so.8 (0x2809b000) > libc.so.7 =3D> /lib/libc.so.7 (0x280e9000) > [Probably already mentioned.] btw, ee compiled under fbsd with new_curse.c (and not linked with curses/cursesw) goes fine with SIGWINCH. --- Makefile.old 2009-10-23 16:13:45.000000000 +0400 +++ Makefile 2009-10-23 16:30:03.000000000 +0400 @@ -3,15 +3,14 @@ .PATH: ${.CURDIR}/../../contrib/ee CFLAGS+=3D -DHAS_NCURSES -DHAS_UNISTD -DHAS_STDARG -DHAS_STDLIB \ - -DHAS_SYS_WAIT + -DHAS_SYS_WAIT -DCAP -DNCURSE PROG=3D ee +SRCS=3D ee.c new_curse.c LINKS=3D ${BINDIR}/ee ${BINDIR}/ree ${BINDIR}/ee ${BINDIR}/edit MLINKS=3D ee.1 ree.1 ee.1 edit.1 -DPADD=3D ${LIBNCURSES} -LDADD=3D -lncurses -WARNS?=3D 2 +WARNS?=3D 0 NLS=3D en_US.US-ASCII fr_FR.ISO8859-1 de_DE.ISO8859-1 pl_PL.ISO8859-2 \ uk_UA.KOI8-U ru_RU.KOI8-R hu_HU.ISO8859-2 $ ldd ./ee ./ee: libc.so.6 =3D> /lib/libc.so.6 (0x2808a000) (yes, it's FreeBSD 6.x). --=20 wbr, pluknet
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?a31046fc0910230534h3420e57aw6b855219361f9dd7>