summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Huston <shuston@riverace.com>2010-06-18 20:03:27 +0000
committerSteve Huston <shuston@riverace.com>2010-06-18 20:03:27 +0000
commitc941a32bd5d28690a1b0546dcb073d5f5def321f (patch)
tree9753348c1356acea666b1ca22734b295eae20079
parentca82d0af6cb5583c49f28a9d165350f8b16d3b6d (diff)
downloadATCD-c941a32bd5d28690a1b0546dcb073d5f5def321f.tar.gz
ChangeLogTag:Fri Jun 18 19:58:55 UTC 2010 Steve Huston <shuston@riverace.com>
-rw-r--r--ChangeLog8
-rw-r--r--ace/Logging_Strategy.cpp9
2 files changed, 17 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 5a229e70e6e..3c4ec8be740 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Fri Jun 18 19:58:55 UTC 2010 Steve Huston <shuston@riverace.com>
+
+ * ace/Logging_Strategy.cpp: Add _get_dll_unload_policy() function that
+ returns ACE_DLL_UNLOAD_POLICY_LAZY; this prevents the DLL_Manager
+ from running down ACE framework components just from unloading
+ a service contained in ACE itself.
+ Fix for Bugzilla #3856.
+
Fri Apr 23 09:38:35 EDT 2010 Steve Huston <shuston@riverace.com>
* ACE version 5.7a released.
diff --git a/ace/Logging_Strategy.cpp b/ace/Logging_Strategy.cpp
index f4270527e02..29047ec5ffa 100644
--- a/ace/Logging_Strategy.cpp
+++ b/ace/Logging_Strategy.cpp
@@ -3,6 +3,7 @@
#include "ace/Logging_Strategy.h"
#include "ace/Service_Config.h"
#include "ace/ACE.h"
+#include "ace/ACE_export.h"
#include "ace/Get_Opt.h"
// FUZZ: disable check_for_streams_include
@@ -564,3 +565,11 @@ ACE_END_VERSIONED_NAMESPACE_DECL
// Logging_Strategy.
ACE_FACTORY_DEFINE (ACE, ACE_Logging_Strategy)
+
+// _get_dll_unload_policy() prevents ACE from being unloaded and having its
+// framework components run down if/when the Logging Strategy is unloaded.
+extern "C" ACE_Export int
+_get_dll_unload_policy()
+{
+ return ACE_DLL_UNLOAD_POLICY_LAZY;
+}