diff options
Diffstat (limited to 'ruby/src')
-rw-r--r-- | ruby/src/IceRuby/ValueFactoryManager.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ruby/src/IceRuby/ValueFactoryManager.cpp b/ruby/src/IceRuby/ValueFactoryManager.cpp index e125328afdf..8e54983f37c 100644 --- a/ruby/src/IceRuby/ValueFactoryManager.cpp +++ b/ruby/src/IceRuby/ValueFactoryManager.cpp @@ -219,6 +219,13 @@ IceRuby::ValueFactoryManager::destroy() { Lock lock(*this); + if(_self == Qnil) + { + // + // Nothing to do if already destroyed (this can occur if communicator destroy is called multiple times) + // + return; + } factories.swap(_factories); |