[omniORB] The cause of the exception in echo/eg1 example for omniORB3 on NT

David Riddoch djr@uk.research.att.com
Wed, 27 Oct 1999 18:39:40 +0100 (BST)


Hi,


I think this problem has always been a potential problem in omniORB.
Perhaps it is just luck that it has never showed up before.

So, I've made the offending mutexes into pointers to dynamically allocated
mutexes which are never deleted.  As nasty as this is it is absolutely
essential to do this, to ensure that the mutex is around when object
references are being cleaned up.

You should be able to get it from CVS after tonights update.


Cheers,
David



On Sun, 24 Oct 1999, Ji-Yong D. Chung wrote:

> Dear omniORB developers:
> 
>     NT4.0, SP4, MSVC++
> 
>         I double checked the cause of exception during the execution of
> eg1.exe -- it does seem to come after the exit of main().  Apparently, the
> implicity clean up code that gets executed after main() to remove all static
> objects is throwing the exception.
> 
>       During the clean up (after main()), omni::internalLock first gets
> removed.  Later, as the_nil_poa is being destroyed, its destructor refers to
> omni::internalLock -- which results in the exception.
> 
> 
> 
> 
> 
>