diff options
author | Ossama Othman <ossama-othman@users.noreply.github.com> | 2002-07-31 18:30:18 +0000 |
---|---|---|
committer | Ossama Othman <ossama-othman@users.noreply.github.com> | 2002-07-31 18:30:18 +0000 |
commit | 7ebdf77a27c8da6680a6390442763a88853a0dba (patch) | |
tree | 177a9dfc8c770006a7da089627676908f53f772f /TAO/tao/TAO_Singleton_Manager.h | |
parent | 692935c092b2216f244c35479a56ee33c4d570ad (diff) | |
download | ATCD-7ebdf77a27c8da6680a6390442763a88853a0dba.tar.gz |
ChangeLogTag:Wed Jul 31 11:28:16 2002 Ossama Othman <ossama@uci.edu>
Diffstat (limited to 'TAO/tao/TAO_Singleton_Manager.h')
-rw-r--r-- | TAO/tao/TAO_Singleton_Manager.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/TAO/tao/TAO_Singleton_Manager.h b/TAO/tao/TAO_Singleton_Manager.h index 3cb90214779..9611ceb7f81 100644 --- a/TAO/tao/TAO_Singleton_Manager.h +++ b/TAO/tao/TAO_Singleton_Manager.h @@ -29,12 +29,19 @@ #include "ace/OS.h" -// Adapter for cleanup, used to register cleanup function with the -// ACE_Object_Manager. + +#if defined (ACE_HAS_EXCEPTIONS) +typedef void (*TAO_unexpected_handler)(void); +#endif /* ACE_HAS_EXCEPTIONS */ + + +/// Adapter for cleanup, used to register cleanup function with the +/// ACE_Object_Manager. extern "C" void TAO_Singleton_Manager_cleanup_destroyer (void *, void *); + /** * @class TAO_Singleton_Manager * @@ -189,6 +196,19 @@ private: /// Lock that is used to guard internal structures. TAO_SYNCH_RECURSIVE_MUTEX *internal_lock_; #endif /* ACE_MT_SAFE */ + +#if defined (ACE_HAS_EXCEPTIONS) + /// The old unexpected exception handler. + /** + * A pointer to the old unexpected exception handler is stored so + * that it can be restored when TAO is unloaded, for example. + * Otherwise, any unexpected exceptions will result in a call to + * TAO's unexpected exception handler which may no longer exist if + * TAO was unloaded. + */ + TAO_unexpected_handler old_unexpected_; +#endif /* ACE_HAS_EXCEPTIONS */ + }; #if defined (__ACE_INLINE__) |