Re: Abort at program end
- From: Bowie Owens <bowie owens csiro au>
- To: Marc Siegel <mlsiegel ll mit edu>
- Cc: orbitcpp-list gnome org
- Subject: Re: Abort at program end
- Date: Tue, 25 May 2004 08:51:46 +1000
Marc Siegel wrote:
Here is a backtrace from a crash of a client talking to a server on
the same PC (the client is the one that crashes).
** ERROR **: file orbit-object.c: line 147 (do_unref): assertion
failed: (robj->refs < ORBIT_REFCOUNT_MAX && robj->refs > 0)
aborting...
This error indicates that there were too many unref's on a stub object.
This error only occurs with ORBit-cpp, things work fine on MICO and TAO.
I found them to be a bit more forgiving too. To fix the problem you need
to track down where the extra unref's are occuring. The abort at the end
of the program is too far after the fact. Valgrind is also useful for
tracking problems down. The C++ stubs are new'ed and then deleted in
_duplicate and release. So if you have a leak or a double free then that
is definitely going to mess up the reference counting. If you can show
that orbitcpp is non-compliant, I'll definitely fix it.
--
Bowie Owens
CSIRO Mathematical & Information Sciences
phone : +61 3 9545 8055
fax : +61 3 9545 8080
mobile : 0425 729 875
email : Bowie Owens csiro au
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]