diff --git a/ChangeLog b/ChangeLog
index 093bc13a19f1c4139951b93d13045b11424a5abe..a0c95e696be167f5d68b24362ac23a98513f0c7b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -18,6 +18,11 @@ CVS code -
 	- Modify to write only the current selection from a file to the
 	  temporary file used for spell checking when the mark is on,
 	  and add a few miscellaneous cosmetic cleanups. (DLR)
+  signal_init()
+	- Trap SIGQUIT in addition to turning it off via termios in
+	  main().  This is consistent with SIGINT, which we trap here
+	  and turn off via termios in main(), as well as with the
+	  associated comment. (DLR)
   main()
 	- Move the call to raw() on systems that don't define
 	  _POSIX_VDISABLE outside the main input/output loop, as it
diff --git a/src/nano.c b/src/nano.c
index 5e012c85bde32bb21f973ed3d6e1ff7eff0121cb..f602f3b5ae732955f0e3e4cafd623690ab202b92 100644
--- a/src/nano.c
+++ b/src/nano.c
@@ -2825,6 +2825,7 @@ void signal_init(void)
     memset(&act, 0, sizeof(struct sigaction));
     act.sa_handler = SIG_IGN;
     sigaction(SIGINT, &act, NULL);
+    sigaction(SIGQUIT, &act, NULL);
 
     /* Trap SIGHUP and SIGTERM cuz we want to write the file out. */
     act.sa_handler = handle_hupterm;