[omniORB] SIGSEGV in omniFinalCleanup::~omniFinalCleanup

Rene van 't Veen rene at halotec.com
Fri Aug 13 18:52:43 BST 2004


Thanks. That worked.

It took a little time: first upgrading to 4.0.4, making sure a modification
I made to the 4.0.3 source still worked (I've added an interceptor) and then
rebuilding the whole project, but it was worth it: no more segfaults.

And I'll take a segfault near where I've done something wrong over a
segfault at the very end of the program any time.

Regards,

René van 't Veen.

----- Original Message ----- 
From: "Duncan Grisby" <duncan at grisby.org>
To: "Rene van 't Veen" <rene at halotec.com>
Cc: <omniorb-list at omniorb-support.com>
Sent: Thursday, August 12, 2004 11:43 AM
Subject: Re: [omniORB] SIGSEGV in omniFinalCleanup::~omniFinalCleanup


> On Tuesday 10 August, "Rene van 't Veen" wrote:
>
> > I've got a problem in that I keep getting a SIGSEGV in
> > omniFinalCleanup::~omniFinalCleanup (Linux, 2.4.18), which is called
when
> > the dynamic shared object (omniORB4.so) unloads during exit()
processing.
> > The problem appears to revolve arround cleaning up the references that
have
> > been added with registerNilCorbaObject(), because these references have
been
> > added from another dynamic shared object (of my own making) that is
unloaded
> > *before* omniORB4.so is unloaded. The problem doesn't occur if the code
that
> > does the corba calls is linked statically - but that would invalidate
the
> > design, because the CORBA calling code is a plugin, loaded and unloaded
at
> > runtime.
>
> The root of the problem is that, as you say, your .so has been
> unloaded before the omniORB library tries to delete some objects whose
> code lives in your .so. To avoid the problem, define
> OMNI_UNLOADABLE_STUBS when you compile the SK.cc files. That will
> cause the nil objects to be deleted when your .so is unloaded. Make
> sure that you don't have any nil object references in _vars that
> survive after your .so has unloaded, otherwise you'll (possibly)
> segfault when they try to access the nil.
>
> Cheers,
>
> Duncan.
>
> -- 
>  -- Duncan Grisby         --
>   -- duncan at grisby.org     --
>    -- http://www.grisby.org --
>




More information about the omniORB-list mailing list