Re: CORBA_Object_release() bug ???
KC <[email protected]>
| Newsgroups | gmane.comp.gnome.orbit.general |
|---|---|
| Message-ID | <[email protected]> |
Hi Jules, It works :-) However, I can't find CORBA_ORB_destroy in CORBA "C language mapping specification" ... so I think it's should be invoked inside CORBA_Object_release instead of asking user to call CORBA_ORB_destroy directly. By the way, I tested the code on both ORBit2-2.4.1 and ORBit2-2.10.0 ... both have the same behavior if CORBA_ORB_destroy is not used. Thanks KC [email protected] On 5/12/05, Jules Colding <[email protected]> wrote: > On Thu, 2005-05-12 at 17:55 +0800, KC wrote: > > Hi, > > > > This question probably had been asked couple times, but I didn't > > find any explanation about it ... so let me to ask it again. > > > > A simple example: > > > > > > #include <stdlib.h> > > #include <orbit/orbit.h> > > > > int main (int argc, char *argv[]) > > { > > CORBA_ORB orb; > > CORBA_Environment ev; > > > > CORBA_exception_init(&ev); > > orb = CORBA_ORB_init(&argc, argv, "orbit-local-orb", &ev); > > > > CORBA_Object_release((CORBA_Object)orb, &ev); > > CORBA_exception_free(&ev); > > exit(0); > > } > > > > > > Will cause error message at CORBA_Object_release(): > > > > ** ERROR **: file orbit-object.c: line 146 (do_unref): assertion > > failed: (robj->refs < ORBIT_REFCOUNT_MAX && robj->refs > 0) > > aborting... > > Aborted > > > > > > Anyone know what's wrong ? > > You might try to add CORBA_ORB_destroy() before the CORBA_Object_release > (). Which ORBit2 version are you using? > > -- > jules > >