Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
ed6b4dc7
Kaydet (Commit)
ed6b4dc7
authored
Ock 05, 2014
tarafından
Michael Meeks
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
package: avoid un-necessary modification event work.
Change-Id: Ia4b4e3edccf661b8c5f474c5c7474b5f9e497fcc
üst
02db0f95
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
15 additions
and
1 deletion
+15
-1
owriteablestream.cxx
package/source/xstor/owriteablestream.cxx
+1
-1
xstorage.cxx
package/source/xstor/xstorage.cxx
+6
-0
xstorage.hxx
package/source/xstor/xstorage.hxx
+8
-0
No files found.
package/source/xstor/owriteablestream.cxx
Dosyayı görüntüle @
ed6b4dc7
...
@@ -1861,7 +1861,7 @@ void OWriteStream::ModifyParentUnlockMutex_Impl( ::osl::ResettableMutexGuard& aG
...
@@ -1861,7 +1861,7 @@ void OWriteStream::ModifyParentUnlockMutex_Impl( ::osl::ResettableMutexGuard& aG
{
{
if
(
m_pImpl
->
m_pParent
)
if
(
m_pImpl
->
m_pParent
)
{
{
if
(
m_pImpl
->
m_pParent
->
m_pAntiImpl
)
if
(
m_pImpl
->
m_pParent
->
HasModifiedListener
()
)
{
{
uno
::
Reference
<
util
::
XModifiable
>
xParentModif
(
(
util
::
XModifiable
*
)(
m_pImpl
->
m_pParent
->
m_pAntiImpl
)
);
uno
::
Reference
<
util
::
XModifiable
>
xParentModif
(
(
util
::
XModifiable
*
)(
m_pImpl
->
m_pParent
->
m_pAntiImpl
)
);
aGuard
.
clear
();
aGuard
.
clear
();
...
...
package/source/xstor/xstorage.cxx
Dosyayı görüntüle @
ed6b4dc7
...
@@ -191,6 +191,7 @@ OStorage_Impl::OStorage_Impl( uno::Reference< io::XInputStream > xInputStream,
...
@@ -191,6 +191,7 @@ OStorage_Impl::OStorage_Impl( uno::Reference< io::XInputStream > xInputStream,
, m_bCommited( sal_False )
, m_bCommited( sal_False )
, m_bIsRoot( sal_True )
, m_bIsRoot( sal_True )
, m_bListCreated( sal_False )
, m_bListCreated( sal_False )
, m_nModifiedListenerCount( 0 )
, m_xContext( xContext )
, m_xContext( xContext )
, m_xProperties( xProperties )
, m_xProperties( xProperties )
, m_bHasCommonEncryptionData( sal_False )
, m_bHasCommonEncryptionData( sal_False )
...
@@ -230,6 +231,7 @@ OStorage_Impl::OStorage_Impl( uno::Reference< io::XStream > xStream,
...
@@ -230,6 +231,7 @@ OStorage_Impl::OStorage_Impl( uno::Reference< io::XStream > xStream,
, m_bCommited( sal_False )
, m_bCommited( sal_False )
, m_bIsRoot( sal_True )
, m_bIsRoot( sal_True )
, m_bListCreated( sal_False )
, m_bListCreated( sal_False )
, m_nModifiedListenerCount( 0 )
, m_xContext( xContext )
, m_xContext( xContext )
, m_xProperties( xProperties )
, m_xProperties( xProperties )
, m_bHasCommonEncryptionData( sal_False )
, m_bHasCommonEncryptionData( sal_False )
...
@@ -272,6 +274,7 @@ OStorage_Impl::OStorage_Impl( OStorage_Impl* pParent,
...
@@ -272,6 +274,7 @@ OStorage_Impl::OStorage_Impl( OStorage_Impl* pParent,
, m_bCommited( sal_False )
, m_bCommited( sal_False )
, m_bIsRoot( sal_False )
, m_bIsRoot( sal_False )
, m_bListCreated( sal_False )
, m_bListCreated( sal_False )
, m_nModifiedListenerCount( 0 )
, m_xPackageFolder( xPackageFolder )
, m_xPackageFolder( xPackageFolder )
, m_xPackage( xPackage )
, m_xPackage( xPackage )
, m_xContext( xContext )
, m_xContext( xContext )
...
@@ -1959,6 +1962,7 @@ void SAL_CALL OStorage::InternalDispose( sal_Bool bNotifyImpl )
...
@@ -1959,6 +1962,7 @@ void SAL_CALL OStorage::InternalDispose( sal_Bool bNotifyImpl )
// since the listeners could dispose the object while being notified
// since the listeners could dispose the object while being notified
lang::EventObject aSource( static_cast< ::cppu::OWeakObject* >(this) );
lang::EventObject aSource( static_cast< ::cppu::OWeakObject* >(this) );
m_pData->m_aListenersContainer.disposeAndClear( aSource );
m_pData->m_aListenersContainer.disposeAndClear( aSource );
m_pImpl->m_nModifiedListenerCount = 0;
if ( m_pData->m_bReadOnlyWrap )
if ( m_pData->m_bReadOnlyWrap )
{
{
...
@@ -4203,6 +4207,7 @@ void SAL_CALL OStorage::addModifyListener(
...
@@ -4203,6 +4207,7 @@ void SAL_CALL OStorage::addModifyListener(
throw lang::DisposedException( OSL_LOG_PREFIX, uno::Reference< uno::XInterface >() );
throw lang::DisposedException( OSL_LOG_PREFIX, uno::Reference< uno::XInterface >() );
}
}
osl_atomic_increment( &m_pImpl->m_nModifiedListenerCount );
m_pData->m_aListenersContainer.addInterface(
m_pData->m_aListenersContainer.addInterface(
::getCppuType( ( const uno::Reference< util::XModifyListener >* )0 ), aListener );
::getCppuType( ( const uno::Reference< util::XModifyListener >* )0 ), aListener );
}
}
...
@@ -4219,6 +4224,7 @@ void SAL_CALL OStorage::removeModifyListener(
...
@@ -4219,6 +4224,7 @@ void SAL_CALL OStorage::removeModifyListener(
throw lang::DisposedException( OSL_LOG_PREFIX, uno::Reference< uno::XInterface >() );
throw lang::DisposedException( OSL_LOG_PREFIX, uno::Reference< uno::XInterface >() );
}
}
osl_atomic_decrement( &m_pImpl->m_nModifiedListenerCount );
m_pData->m_aListenersContainer.removeInterface(
m_pData->m_aListenersContainer.removeInterface(
::getCppuType( ( const uno::Reference< util::XModifyListener >* )0 ), aListener );
::getCppuType( ( const uno::Reference< util::XModifyListener >* )0 ), aListener );
}
}
...
...
package/source/xstor/xstorage.hxx
Dosyayı görüntüle @
ed6b4dc7
...
@@ -128,11 +128,19 @@ struct OStorage_Impl
...
@@ -128,11 +128,19 @@ struct OStorage_Impl
sal_Int32
m_nStorageMode
;
// open mode ( read/write/trunc/nocreate )
sal_Int32
m_nStorageMode
;
// open mode ( read/write/trunc/nocreate )
sal_Bool
m_bIsModified
;
// only modified elements will be sent to the original content
sal_Bool
m_bIsModified
;
// only modified elements will be sent to the original content
sal_Bool
m_bBroadcastModified
;
// will be set if notification is required
sal_Bool
m_bBroadcastModified
;
// will be set if notification is required
sal_Bool
m_bCommited
;
// sending the streams is coordinated by the root storage of the package
sal_Bool
m_bCommited
;
// sending the streams is coordinated by the root storage of the package
sal_Bool
m_bIsRoot
;
// marks this storage as root storages that manages all commits and reverts
sal_Bool
m_bIsRoot
;
// marks this storage as root storages that manages all commits and reverts
sal_Bool
m_bListCreated
;
sal_Bool
m_bListCreated
;
/// Count of registered modification listeners
oslInterlockedCount
m_nModifiedListenerCount
;
bool
HasModifiedListener
()
{
return
m_nModifiedListenerCount
>
0
&&
m_pAntiImpl
!=
NULL
;
}
SotElementList_Impl
m_aChildrenList
;
SotElementList_Impl
m_aChildrenList
;
SotElementList_Impl
m_aDeletedList
;
SotElementList_Impl
m_aDeletedList
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment