summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Gilmore <dougjgilmore@gmail.com>2020-08-19 14:04:46 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2020-08-19 14:05:19 +0200
commita7291a9fb979e117c3286d3cfa6d0d15557edace (patch)
treeb2ece34ef5f714dfe176fa2c5524bf174de645a5
parent1aacdf5aab09c7d0f7de648e55df7305ac1b87eb (diff)
downloademacs-a7291a9fb979e117c3286d3cfa6d0d15557edace.tar.gz
Fix a segfault in daemon mode Emacs when detaching an X session
* src/xterm.c (x_uncatch_errors): Add a sanity check for x_error_message (bug#23939).
-rw-r--r--src/xterm.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 2a99c469276..2e0407aff40 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -9921,6 +9921,13 @@ x_uncatch_errors (void)
{
struct x_error_message_stack *tmp;
+ /* In rare situations when running Emacs run in daemon mode,
+ shutting down an emacsclient via delete-frame can cause
+ x_uncatch_errors to be called when x_error_message is set to
+ NULL. */
+ if (x_error_message == NULL)
+ return;
+
block_input ();
/* The display may have been closed before this function is called.