From owner-freebsd-hackers@FreeBSD.ORG Fri Oct 23 12:34:03 2009 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E9AF11065679 for ; Fri, 23 Oct 2009 12:34:02 +0000 (UTC) (envelope-from pluknet@gmail.com) Received: from mail-bw0-f213.google.com (mail-bw0-f213.google.com [209.85.218.213]) by mx1.freebsd.org (Postfix) with ESMTP id 779D28FC14 for ; Fri, 23 Oct 2009 12:34:02 +0000 (UTC) Received: by bwz5 with SMTP id 5so880189bwz.3 for ; Fri, 23 Oct 2009 05:34:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=VmgNS8y9+CSUklOZGnk6VGtj3nF4o9lqVFOCOfH7Y74=; b=If2ECV18jc/Iu3L4r1uBFt2EyaACXWdrO5lj+NeZiK8sJmj2WcmxBNBAKE1nQGtNK6 gt2BnwHsXeKmYqwEhBV+ZAqLVuK+nzK6YFjn4QVaYwyovhK3s1+Mk0d9SR21j3wSB50J YsluA1SEXAAU17/O1uT0OiV75vDrvbGUNYu/4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=PpeL6AAAZ4nzhhpuuJ2C29GboBQuvSf7ToBeqf/tq7WbZBO9L842BzUDuKj2E8Pb6b +8xYn4IDklpLxYHc+HLKxJrwipq/kbmFImDeWwTT42ZVekgGS6uILawqdCqwO7EZK4Lz BAYzLiOcKF7e40aSA0eG9fEWgHtLYBexp8F/I= MIME-Version: 1.0 Received: by 10.204.35.12 with SMTP id n12mr11239757bkd.147.1256301241213; Fri, 23 Oct 2009 05:34:01 -0700 (PDT) In-Reply-To: References: <20091023135024.377bcfa6@ernst.jennejohn.org> Date: Fri, 23 Oct 2009 16:34:01 +0400 Message-ID: From: pluknet To: Alexander Best Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: Antony Mawer , freebsd-hackers@freebsd.org Subject: Re: help needed to fix contrib/ee crash/exit when receiving SIGWINCH X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Oct 2009 12:34:03 -0000 2009/10/23 Alexander Best : > Gary Jennejohn schrieb am 2009-10-23: >> On Fri, 23 Oct 2009 12:58:43 +0400 >> pluknet wrote: > >> > 2009/10/23 Antony Mawer : >> > > On Fri, Oct 23, 2009 at 1:35 PM, Alexander Best >> > > 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