diff options
author | Jose <jose@zeroc.com> | 2017-04-04 21:47:05 +0200 |
---|---|---|
committer | Jose <jose@zeroc.com> | 2017-04-04 21:47:05 +0200 |
commit | f53e0aaeaaa033821f80adbd87122f1e029078e5 (patch) | |
tree | 8309a5a6e4d979a5593acf0ad12238518ad41f74 /cpp/src/IceUtil/ConsoleUtil.cpp | |
parent | Added C++11 mapping, Ice::initialize configFile overloads (diff) | |
download | ice-f53e0aaeaaa033821f80adbd87122f1e029078e5.tar.bz2 ice-f53e0aaeaaa033821f80adbd87122f1e029078e5.tar.xz ice-f53e0aaeaaa033821f80adbd87122f1e029078e5.zip |
Fix (ICE-7742) - Ice/faultTolerance Python 3.6 crash when using pip packages
Diffstat (limited to 'cpp/src/IceUtil/ConsoleUtil.cpp')
-rw-r--r-- | cpp/src/IceUtil/ConsoleUtil.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/cpp/src/IceUtil/ConsoleUtil.cpp b/cpp/src/IceUtil/ConsoleUtil.cpp index 427b1f5c90d..7dd05df8ac4 100644 --- a/cpp/src/IceUtil/ConsoleUtil.cpp +++ b/cpp/src/IceUtil/ConsoleUtil.cpp @@ -19,7 +19,7 @@ namespace { IceUtil::Mutex* consoleMutex = 0; -ConsoleUtilPtr consoleUtil = 0; +ConsoleUtil* consoleUtil = 0; class Init { @@ -32,6 +32,12 @@ public: ~Init() { + // + // We leak consoleUtil object to ensure that is available + // during static destruction. + // + //delete consoleUtil; + //consoleUtil = 0; delete consoleMutex; consoleMutex = 0; } @@ -41,15 +47,15 @@ Init init; } -const ConsoleUtilPtr& +const ConsoleUtil& IceUtilInternal::getConsoleUtil() { IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(consoleMutex); if(consoleUtil == 0) { - consoleUtil = ICE_MAKE_SHARED(ConsoleUtil); + consoleUtil = new ConsoleUtil(); } - return consoleUtil; + return *consoleUtil; } ConsoleOut IceUtilInternal::consoleOut; |