diff options
Diffstat (limited to 'patches/dev300/fix-embedobj-load.diff')
-rw-r--r-- | patches/dev300/fix-embedobj-load.diff | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/patches/dev300/fix-embedobj-load.diff b/patches/dev300/fix-embedobj-load.diff deleted file mode 100644 index 5490302bb..000000000 --- a/patches/dev300/fix-embedobj-load.diff +++ /dev/null @@ -1,35 +0,0 @@ -diff --git sfx2/source/doc/sfxbasemodel.cxx sfx2/source/doc/sfxbasemodel.cxx -index 28355da..1981568 100644 ---- sfx2/source/doc/sfxbasemodel.cxx -+++ sfx2/source/doc/sfxbasemodel.cxx -@@ -3616,15 +3616,23 @@ void SAL_CALL SfxBaseModel::switchToStorage( const uno::Reference< XSTORAGE >& x - throw IOEXCEPTION(); // TODO: - - // the persistence should be switched only if the storage is different -- if ( xStorage != m_pData->m_pObjectShell->GetStorage() -- && !m_pData->m_pObjectShell->SwitchPersistance( xStorage ) ) -+ if ( xStorage != m_pData->m_pObjectShell->GetStorage() ) - { -- sal_uInt32 nError = m_pData->m_pObjectShell->GetErrorCode(); -- throw task::ErrorCodeIOException( ::rtl::OUString(), -- uno::Reference< uno::XInterface >(), -- nError ? nError : ERRCODE_IO_GENERAL ); -+ if ( !m_pData->m_pObjectShell->SwitchPersistance( xStorage ) ) -+ { -+ sal_uInt32 nError = m_pData->m_pObjectShell->GetErrorCode(); -+ throw task::ErrorCodeIOException( ::rtl::OUString(), -+ uno::Reference< uno::XInterface >(), -+ nError ? nError : ERRCODE_IO_GENERAL ); -+ } -+ else -+ { -+ // UICfgMgr has a reference to the old storage, update it -+ uno::Reference< ui::XUIConfigurationStorage > xUICfgMgrStorage( getUIConfigurationManager(), uno::UNO_QUERY ); -+ if ( xUICfgMgrStorage.is() ) -+ xUICfgMgrStorage->setStorage( xStorage ); -+ } - } -- - m_pData->m_pObjectShell->Get_Impl()->bOwnsStorage = FALSE; - } - |