[omniORB] omniORB: Assertion failed.
yashik@veon.com
yashik@veon.com
Fri, 3 May 2002 13:36:31 +0200
Dear Bjorn,
Indeed,
PortableServer::LifespanPolicy_var lifespan = ...
...
pl[0] = lifespan._retn();
works fine. This is a good lesson for me not to rely on compiler's implicit
conversion. Thank you very much.
Regards,
Yakov.
bjorn rohde jensen
<shamus@tdcadsl.dk> To:
Sent by: cc: omniorb-list@uk.research.att.com
owner-omniorb-list@uk.resear Subject: Re: [omniORB] omniORB: Assertion failed.
ch.att.com
05/03/2002 11:57
Please respond to shamus
Hi Yakov,
I believe, that the PolicyList does indeed take ownership
of the _ptr held by the _var, this is the way nested data
structures are handled in CORBA. Data structures manage the
resources of all structures contained in it similarly to
the way, _var types do. I think, what is actually happening
is, that LifespanPolicy_ptr temporaries are created from the
_var types then, the PolicyList naturally assumes ownership
of the _ptr's, but the _var's do not yield ownership when
the _ptr temporaries are created.
Personally i do not like temporaries much;)
Yours sincerely,
Bjorn