[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Nano-devel] nano not exiting cleanly bug
From: |
David Benbennick |
Subject: |
Re: [Nano-devel] nano not exiting cleanly bug |
Date: |
Tue, 23 Sep 2003 18:39:57 -0400 |
User-agent: |
Mutt/1.2.5.1i |
On Fri, Sep 5, 2003 at 14:17:11 +0200, Jordi Mallach wrote:
> > sometimes when the terminal exits unexpectedly (or expectedly for the user,
> > just not for nano), nano will utilize 100% of the cpu and sit there until
> > killed
> I got this report once, I couldn't reproduce.
Here's a way to reproduce it, and a fix. In an xterm, ssh somewhere, run
nano. Suspend with ^Z. Logout. (The shell should warn that there are
stopped jobs.) The Nano window becomes visible, but it can't hear input.
Now close the xterm.
Nano is looping around in winio.c:get_ignored_kbinput, with wgetch just
returning errors. The problem is a line in nano.c:do_cont I added a while
ago. Nano checks for the window being resized, so ends up ignoring the
SIGHUP.
Here's a patch that takes out that line.
Generally, using SIGWINCH and siglongjmp to deal with window resizes is
bad, since Nano's data could be left in an invalid state. (Try resizing
while loading a big file.) Perhaps eventually Nano could start checking
for KEY_RESIZE from ncurses instead. But that would be a big job.
DB
P.S. The autogen.sh script doesn't work for me, and I don't know why. I
have
autoconf (GNU Autoconf) 2.53
automake (GNU automake) 1.6.3
gettext (GNU gettext-runtime) 0.12.1
on a Redhat 8 machine, and autogen.sh fails with the message
aclocal: configure.ac: 276: macro `AM_PATH_GLIB' not found in library
autoreconf: aclocal failed with exit status: 1
at /usr/bin/autoreconf line 263
foo.patch
Description: Text document
pgpZ16iMJYS9b.pgp
Description: PGP signature