diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2013-05-30 18:41:52 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2013-05-30 18:41:52 -0700 |
commit | fc186a96df6853da2a94b76b40b6f3f8b24e52ac (patch) | |
tree | ddfd14e63fbeb236be46628f69c2ebf57da3a632 | |
parent | 0e64479a3aa321a1a44e2057eebbf5c378b7ad5c (diff) | |
download | emacs-fc186a96df6853da2a94b76b40b6f3f8b24e52ac.tar.gz |
Don't let D-bus autolaunch mess up SIGCHLD handling.
* xterm.c (x_term_init): Inhibit D-Bus autolaunch if D-Bus is
not already configured.
Fixes: debbugs:14474
-rw-r--r-- | src/ChangeLog | 4 | ||||
-rw-r--r-- | src/xterm.c | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index bfc51b8c5ff..5069811f12b 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,9 @@ 2013-05-31 Paul Eggert <eggert@cs.ucla.edu> + Don't let D-bus autolaunch mess up SIGCHLD handling (Bug#14474). + * xterm.c (x_term_init): Inhibit D-Bus autolaunch if D-Bus is + not already configured. + * fileio.c (Finsert_file_contents): Remove unused local (Bug#8447). 2013-05-29 Eli Zaretskii <eliz@gnu.org> diff --git a/src/xterm.c b/src/xterm.c index 7505aa3936b..7038de7039f 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -9897,6 +9897,13 @@ x_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name) XSetLocaleModifiers (""); + /* If D-Bus is not already configured, inhibit D-Bus autolaunch, + as autolaunch can mess up Emacs's SIGCHLD handler. + FIXME: Rewrite subprocess handlers to use glib's child watchers. + See Bug#14474. */ + if (! egetenv ("DBUS_SESSION_BUS_ADDRESS")) + xputenv ("DBUS_SESSION_BUS_ADDRESS=unix:path=/dev/null"); + /* Emacs can only handle core input events, so make sure Gtk doesn't use Xinput or Xinput2 extensions. */ xputenv ("GDK_CORE_DEVICE_EVENTS=1"); |