]> git.wh0rd.org Git - nano.git/commitdiff
- nano.c:do_suspend() - Call tcsetattr() to restore the old terminal settings, so...
authorChris Allegretta <chrisa@asty.org>
Thu, 10 Jan 2002 12:44:21 +0000 (12:44 +0000)
committerChris Allegretta <chrisa@asty.org>
Thu, 10 Jan 2002 12:44:21 +0000 (12:44 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@992 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

BUGS
ChangeLog
nano.c

diff --git a/BUGS b/BUGS
index d4a1fabeb1682aadd520dfda9f33c984b5a0238c..517878a5d1592e436ba66c1cd1e9fc288ef7b082 100644 (file)
--- a/BUGS
+++ b/BUGS
 - When cutting marked text including the bottom of the file, a new   
   "magic line" is not created" (reported by David Lawrence
   Ramsey, fixed by David Lawrence Ramsey & Chris) (66) [FIXED].
+- ^C does not work after a suspend in tcsh (discovered by
+  Trevor Cordes) (67) [FIXED].
 
 ** Open BUGS **
 
index 3f7254a4bdb421ea0b98d9c9d1c9d9a1b31fb789..6008b8c1a29d52bd6dfe031bb53d897efca4ffab 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -13,6 +13,9 @@ CVS code -
   main()
        - Check that alt value is an alpha char before comparing to 
          val - 32, fixes Alt-R calling doprev instead of replace.
+  do_suspend()
+       - Call tcsetattr() to restore the old terminal settings, so
+         tcsh can use ^C after suspend for example (fixes BUG #67).
 - global.c:
   shorcut_init()
        - Replace hard coded ALT_G and ALT_H values in the replace
diff --git a/nano.c b/nano.c
index 3468e77c8ef391ebdbf8cd02c34a6e36e23f5030..1dfe6f2e4299d2b931a509ded795594e3cce44da 100644 (file)
--- a/nano.c
+++ b/nano.c
@@ -1938,6 +1938,9 @@ RETSIGTYPE do_suspend(int signal)
     printf("\n\n\n\n\nUse \"fg\" to return to nano\n");
     fflush(stdout);
 
+    /* Restore the terminal settings for the disabled keys */
+    tcsetattr(0, TCSANOW, &oldterm);
+
     /* We used to re-enable the default SIG_DFL and raise SIGTSTP, but 
        then we could be (and were) interrupted in the middle of the call.
        So we do it the mutt way instead */