diff options
Diffstat (limited to 'basic')
-rw-r--r-- | basic/source/uno/namecont.cxx | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/basic/source/uno/namecont.cxx b/basic/source/uno/namecont.cxx index 9c2d29d85b67..a9e2c0e454f5 100644 --- a/basic/source/uno/namecont.cxx +++ b/basic/source/uno/namecont.cxx @@ -3225,22 +3225,20 @@ Sequence< Type > SfxLibrary::getTypes() throw( RuntimeException, std::exception ) { static OTypeCollection * s_pTypes_NameContainer = 0; + if( !s_pTypes_NameContainer ) { + MutexGuard aGuard( Mutex::getGlobalMutex() ); if( !s_pTypes_NameContainer ) { - MutexGuard aGuard( Mutex::getGlobalMutex() ); - if( !s_pTypes_NameContainer ) - { - static OTypeCollection s_aTypes_NameContainer( - cppu::UnoType<XNameContainer>::get(), - cppu::UnoType<XContainer>::get(), - cppu::UnoType<XChangesNotifier>::get(), - OComponentHelper::getTypes() ); - s_pTypes_NameContainer = &s_aTypes_NameContainer; - } + static OTypeCollection s_aTypes_NameContainer( + cppu::UnoType<XNameContainer>::get(), + cppu::UnoType<XContainer>::get(), + cppu::UnoType<XChangesNotifier>::get(), + OComponentHelper::getTypes() ); + s_pTypes_NameContainer = &s_aTypes_NameContainer; } - return s_pTypes_NameContainer->getTypes(); } + return s_pTypes_NameContainer->getTypes(); } |