diff options
Diffstat (limited to 'desktop/source/deployment/registry/dp_backend.cxx')
-rwxr-xr-x | desktop/source/deployment/registry/dp_backend.cxx | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/desktop/source/deployment/registry/dp_backend.cxx b/desktop/source/deployment/registry/dp_backend.cxx index e0e2c139eb..3062dd130c 100755 --- a/desktop/source/deployment/registry/dp_backend.cxx +++ b/desktop/source/deployment/registry/dp_backend.cxx @@ -39,6 +39,7 @@ #include "ucbhelper/content.hxx" #include "com/sun/star/lang/WrappedTargetRuntimeException.hpp" #include "com/sun/star/deployment/InvalidRemovedParameterException.hpp" +#include "com/sun/star/deployment/thePackageManagerFactory.hpp" #include "com/sun/star/ucb/InteractiveAugmentedIOException.hpp" #include "com/sun/star/ucb/IOErrorCode.hpp" #include "com/sun/star/beans/StringPair.hpp" @@ -99,6 +100,8 @@ PackageRegistryBackend::PackageRegistryBackend( m_eContext = CONTEXT_BUNDLED; else if (m_context.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("tmp") )) m_eContext = CONTEXT_TMP; + else if (m_context.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("bundled_prereg") )) + m_eContext = CONTEXT_BUNDLED_PREREG; else if (m_context.matchIgnoreAsciiCaseAsciiL( RTL_CONSTASCII_STRINGPARAM("vnd.sun.star.tdoc:/") )) m_eContext = CONTEXT_DOCUMENT; @@ -121,6 +124,9 @@ void PackageRegistryBackend::check() void PackageRegistryBackend::disposing() { try { + for ( t_string2ref::const_iterator i = m_bound.begin(); i != m_bound.end(); i++) + i->second->removeEventListener(this); + m_bound.clear(); m_xComponentContext.clear(); WeakComponentImplHelperBase::disposing(); } |