using dbus in the platform

Simon McVittie simon.mcvittie at
Tue Oct 9 10:35:14 PDT 2007

On Tue, 09 Oct 2007 at 19:14:48 +0200, Olivier Galibert wrote:
> On Tue, Oct 09, 2007 at 12:51:16PM -0400, Havoc Pennington wrote:
> > In languages with exceptions, there's a way to "give up" and refuse to 
> > continue - throwing the exception. So we want to do that even for app 
> > bugs (checks). But in a C API, the convention - at least my preferred 
> > convention, and the one matching GLib - is the one libdbus uses.
> > The GError docs go into some detail on the convention.
> Except that this convention[1] is crap when you need to use the
> library to write bindings for another language, especially an
> interpreted one.  You kill any hope of having a good interaction with
> a native-language debugger.  "Sorry, the application died in a native
> call, we can not give you a backtrace or variables state".

I had to read that paragraph a couple of times before I worked out what
it meant, so to save everyone else the effort: for "native-language
debugger" read "Python debugger" (or Perl, or .Net, or whatever else
you're interested in writing bindings into).

More information about the dbus mailing list