diff options
author | jones_s <jones_s@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-04-09 18:37:40 +0000 |
---|---|---|
committer | jones_s <jones_s@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-04-09 18:37:40 +0000 |
commit | 41d6b3dc961cbfca71de963fc3f8098380983d6f (patch) | |
tree | 6f6ea85f02dd0553eceeb81ebce1e35222f38bf1 /ace/DLL_Manager.cpp | |
parent | a3840f07383b05c24906872a7d231d891c959c33 (diff) | |
download | ATCD-41d6b3dc961cbfca71de963fc3f8098380983d6f.tar.gz |
Added fix for bug #1479
Diffstat (limited to 'ace/DLL_Manager.cpp')
-rw-r--r-- | ace/DLL_Manager.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/ace/DLL_Manager.cpp b/ace/DLL_Manager.cpp index 2627e91fad1..93f6e4889a9 100644 --- a/ace/DLL_Manager.cpp +++ b/ace/DLL_Manager.cpp @@ -144,8 +144,13 @@ ACE_DLL_Handle::close (int unload) ACE_LIB_TEXT ("ACE_DLL_Handle::close: unloading %s\n"), this->dll_name_)); // First remove any associated Framework Components. - ACE_Framework_Repository::instance ()->remove_dll_components (this->dll_name_); - + ACE_Framework_Repository * frPtr= ACE_Framework_Repository::instance (); + + if (frPtr) + { + frPtr->remove_dll_components (this->dll_name_); + } + retval = ACE_OS::dlclose (this->handle_); this->handle_ = ACE_SHLIB_INVALID_HANDLE; } |