diff options
author | Oliver Bolte <obo@openoffice.org> | 2006-01-19 14:40:05 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2006-01-19 14:40:05 +0000 |
commit | abbf6152cbf48625eb37f9f8870a21b858772959 (patch) | |
tree | ad96f5313cdc4ef3cf0126ec1f0b82d4e2d2a9e7 | |
parent | caf35248d64a3aa45c9fec0c1e1d393658b53309 (diff) |
INTEGRATION: CWS dba202e (1.69.158); FILE MERGED
2006/01/09 10:25:19 fs 1.69.158.2: RESYNC: (1.69-1.71); FILE MERGED
2005/12/08 15:08:03 fs 1.69.158.1: #114193# :disposing(): reset notifications at our configuration
-rw-r--r-- | svx/source/form/fmshimp.cxx | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/svx/source/form/fmshimp.cxx b/svx/source/form/fmshimp.cxx index 294967c3a36b..bc252580def1 100644 --- a/svx/source/form/fmshimp.cxx +++ b/svx/source/form/fmshimp.cxx @@ -4,9 +4,9 @@ * * $RCSfile: fmshimp.cxx,v $ * - * $Revision: 1.72 $ + * $Revision: 1.73 $ * - * last change: $Author: obo $ $Date: 2006-01-16 15:22:01 $ + * last change: $Author: obo $ $Date: 2006-01-19 15:40:05 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -918,6 +918,8 @@ void FmXFormShell::disposing() m_aMarkTimer.Stop(); } + DisableNotification(); + // we are disposed from within the destructor of our shell, so now the shell pointer is invalid .... m_pShell = NULL; m_xActiveController = NULL; @@ -962,6 +964,9 @@ void FmXFormShell::UpdateSlot( sal_Int16 _nId ) void FmXFormShell::InvalidateSlot( sal_Int16 nId, sal_Bool bWithId ) { OSL_ENSURE(!FmXFormShell_BASE::rBHelper.bDisposed,"FmXFormShell: Object already disposed!"); + if ( FmXFormShell_BASE::rBHelper.bDisposed ) + return /*throw DisposedException()*/ ; + ::osl::MutexGuard aGuard(m_aInvalidationSafety); if (m_nLockSlotInvalidation) { @@ -3829,6 +3834,10 @@ void FmXFormShell::implAdjustConfigCache() //------------------------------------------------------------------------ void FmXFormShell::Notify( const com::sun::star::uno::Sequence< rtl::OUString >& _rPropertyNames) { + OSL_ENSURE(!FmXFormShell_BASE::rBHelper.bDisposed,"FmXFormShell: Object already disposed!"); + if ( FmXFormShell_BASE::rBHelper.bDisposed ) + return /*throw DisposedException()*/ ; + const ::rtl::OUString* pSearch = _rPropertyNames.getConstArray(); const ::rtl::OUString* pSearchTil = pSearch + _rPropertyNames.getLength(); for (;pSearch < pSearchTil; ++pSearch) |