diff options
-rw-r--r-- | package/source/xstor/ohierarchyholder.cxx | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/package/source/xstor/ohierarchyholder.cxx b/package/source/xstor/ohierarchyholder.cxx index ff2dc3fdf06f..da4d2310bf87 100644 --- a/package/source/xstor/ohierarchyholder.cxx +++ b/package/source/xstor/ohierarchyholder.cxx @@ -93,7 +93,9 @@ uno::Reference< embed::XExtendedStorageStream > OHierarchyElement_Impl::GetStrea uno::Reference< embed::XExtendedStorageStream > xResult; - uno::Reference< embed::XStorage > xOwnStor = m_xOwnStorage.is() ? m_xOwnStorage + uno::Reference< embed::XStorage > xOwnStor; + + xOwnStor = m_xOwnStorage.is() ? m_xOwnStorage : uno::Reference< embed::XStorage >( m_xWeakOwnStorage.get(), uno::UNO_QUERY ); if ( !xOwnStor.is() ) throw uno::RuntimeException(); @@ -175,7 +177,9 @@ void OHierarchyElement_Impl::RemoveStreamHierarchically( OStringList_Impl& aList uno::Reference< embed::XExtendedStorageStream > xResult; - uno::Reference< embed::XStorage > xOwnStor = m_xOwnStorage.is() ? m_xOwnStorage + uno::Reference< embed::XStorage > xOwnStor; + + xOwnStor = m_xOwnStorage.is() ? m_xOwnStorage : uno::Reference< embed::XStorage >( m_xWeakOwnStorage.get(), uno::UNO_QUERY ); if ( !xOwnStor.is() ) throw uno::RuntimeException(); |