Re: critical error in bonobo_object_unref(): assertion `ao != NULL' failed
Michael Meeks <[email protected]> Wed, 27 Aug 2003 10:09:54 +0100
| Newsgroups | gmane.comp.gnome.components |
|---|---|
| Organization | Ximian. |
| Message-ID | <[email protected]> |
Hi Ben, On Tue, 2003-08-26 at 07:34, Ben Liblit wrote: > I need some help tracking down the cause of the following error message, > which appears just before my Bonobo server terminates: ... > Bonobo-CRITICAL **: file bonobo-object.c: line 286 > (bonobo_object_unref): assertion `ao != NULL' failed Something is unreffed twice; to catch this sort of msg; it's best to put a breakpoint in g_logv to see where it's coming from. > bonobo_running_context_auto_exit_unref(BONOBO_OBJECT(server)); This method does two things: a) ignores the reference count of server for lifecycle tracking and b) unref's that object before exiting the server when there are no other refs around. If you bin the auto_exit_unref you should get the behavior you're expecting - although, it's prolly best to have an explicit 'dispose' or somesuch on the server to tell it to shutdown, so the remote client doesn't free something to which you still hold a local pointer (*server). HTH, Michael. -- [email protected] <><, Pseudo Engineer, itinerant idiot