emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/xterm.c,v


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/src/xterm.c,v
Date: Sat, 29 Mar 2008 01:46:11 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        08/03/29 01:46:11

Index: src/xterm.c
===================================================================
RCS file: /sources/emacs/emacs/src/xterm.c,v
retrieving revision 1.983
retrieving revision 1.984
diff -u -b -r1.983 -r1.984
--- src/xterm.c 11 Mar 2008 15:54:05 -0000      1.983
+++ src/xterm.c 29 Mar 2008 01:46:06 -0000      1.984
@@ -8144,7 +8144,11 @@
         /* We have just closed all frames on this display. */
         abort ();
 
-      x_delete_display (dpyinfo);
+      {
+       Lisp_Object tmp;
+       XSETTERMINAL (tmp, dpyinfo->terminal);
+       Fdelete_terminal (tmp, Qnoelisp);
+      }
     }
 
   x_uncatch_errors ();
@@ -8165,10 +8169,9 @@
 
   unbind_to (index, Qnil);
   clear_waiting_for_input ();
-  /* FIXME: This is an asynchronous interrupt w.r.t elisp, so signalling an
-     error might not be the best thing to do.  I'd vote for creating an
-     elisp event and stuffing it in the queue so people can bind to it via
-     the global map.  --Stef  */
+  /* Here, we absolutely have to use a non-local exit (e.g. signal, throw,
+     longjmp), because returning from this function would get us back into
+     Xlib's code which will directly call `exit'.  */
   error ("%s", error_msg);
 }
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]