GNU bug report logs -
#7113
23.2; Crash on invalid path argument to dbus-introspect-xml
Previous Next
Reported by: Thomas Fitzsimmons <fitzsim <at> fitzsim.org>
Date: Mon, 27 Sep 2010 05:49:02 UTC
Severity: normal
Found in version 23.2
Done: Chong Yidong <cyd <at> stupidchicken.com>
Bug is archived. No further changes may be made.
Full log
Message #14 received at 7113 <at> debbugs.gnu.org (full text, mbox):
Thomas Fitzsimmons <fitzsim <at> fitzsim.org> writes:
>> The crash happens because DBUS uses fatal warnings. Setting the
>> environment variable DBUS_FATAL_WARNINGS to 0 helps:
>>
>> DBUS_FATAL_WARNINGS=0 emacs -Q --eval "(require 'dbus)" --eval
>> '(dbus-introspect-xml :session "org.freedesktop.DBus" "")'
>>
>> This way the warning message is still printed but Emacs doesn't crash.
>
> OK, that does improve the situation for me but it doesn't solve the
> problem in general. By default an unsuspecting user developing D-Bus
> Lisp code (e.g. in ielm) can easily crash their Emacs session. Is there
> a way for the Emacs D-Bus bindings to disable fatal warnings and/or to
> intercept their causes and report the errors?
I've committed a patch to the emacs-23 branch, unsetting
$DBUS_FATAL_WARNINGS during initialization:
--8<---------------cut here---------------start------------->8---
*** /home/albinus/src/emacs-23/src/dbusbind.c.~100061~ 2010-09-27 10:41:33.251159798 +0200
--- /home/albinus/src/emacs-23/src/dbusbind.c 2010-09-27 10:41:33.315137500 +0200
***************
*** 2132,2137 ****
--- 2132,2139 ----
Vdbus_debug = Qt;
#else
Vdbus_debug = Qnil;
+ /* We do not want to abort. */
+ unsetenv ("DBUS_FATAL_WARNINGS");
#endif
Fprovide (intern_c_string ("dbusbind"), Qnil);
--8<---------------cut here---------------end--------------->8---
> Thomas
Best regards, Michael.
This bug report was last modified 14 years and 294 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.