bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#7113: 23.2; Crash on invalid path argument to dbus-introspect-xml


From: Michael Albinus
Subject: bug#7113: 23.2; Crash on invalid path argument to dbus-introspect-xml
Date: Mon, 27 Sep 2010 11:07:20 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Thomas Fitzsimmons <fitzsim@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.





reply via email to

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