[Evolution-hackers] evo / ORBit2 oddness ...
- From: Michael Meeks <michael ximian com>
- To: Dan Winship <danw ximian com>
- Cc: evolution-hackers lists ximian com
- Subject: [Evolution-hackers] evo / ORBit2 oddness ...
- Date: Fri, 03 Oct 2003 12:03:16 +0100
Hi Dan,
On Thu, 2003-10-02 at 19:00, Dan Winship wrote:
> OK, got a new one, CVS ORBit2 from yesterday or so. Looks like the stack
> may be a little trashed...
Ok - so I'll look at this; but I'm still chasing two other bugs: the
strange listener problem that Ettore was having, and also your g_error
on exit bug.
I added a regression test to libbonobo to try and repeat what I assumed
was a trivial bug; however - the servant finalize being run on a
non-destroyed object works perfectly well - since we hold GObject refs
on each facet of the aggregate until destroy time so your case can only
happen in two circumstances:
a) someone calls 'exit' from a BonoboObject finalize override,
and the stock ORB g_atexit cleans the object - this seems
to be slightly unlikely.
b) somewhere, someone is screwing up and doing a g_object_unref
on a BonoboObject.
Situation b) _could_ possibly result in Ettore's problem, although
perhaps it's unlikely; I can only generate the warning:
Bonobo-ERROR **: g_object_unreffing a bonobo_object that still has 1
refs
aborting...
Trace/breakpoint trap (core dumped)
by doing:
/* Deliberately leak */
object = g_object_new (bonobo_moniker_get_type(), NULL);
g_object_unref (object);
/* Deliberately don't do a debug shutdown - we leak */
return 0;
which is clearly broken.
I grokked the source for potential problems here with no luck though;
any ideas ?
Regards,
Michael.
--
michael ximian com <><, Pseudo Engineer, itinerant idiot
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]