summaryrefslogtreecommitdiff
path: root/extensions/source/propctrlr/propertycomposer.cxx
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2006-03-31 11:20:23 +0000
committerVladimir Glazounov <vg@openoffice.org>2006-03-31 11:20:23 +0000
commit76a1f44bc5b89d1b079d1d8f7428b3fca93138e5 (patch)
tree372875cc929999a83cdda6975987a5d297ea3b2e /extensions/source/propctrlr/propertycomposer.cxx
parent6427ab7fbf8550c4a39ff9f4672a05369b8b6598 (diff)
INTEGRATION: CWS dba203b (1.6.6); FILE MERGED
2006/03/22 15:55:42 fs 1.6.6.1: #i63283# be more tolerant in propertyChange
Diffstat (limited to 'extensions/source/propctrlr/propertycomposer.cxx')
-rw-r--r--extensions/source/propctrlr/propertycomposer.cxx20
1 files changed, 17 insertions, 3 deletions
diff --git a/extensions/source/propctrlr/propertycomposer.cxx b/extensions/source/propctrlr/propertycomposer.cxx
index 8dc3563d019a..5baf379f8f4c 100644
--- a/extensions/source/propctrlr/propertycomposer.cxx
+++ b/extensions/source/propctrlr/propertycomposer.cxx
@@ -4,9 +4,9 @@
*
* $RCSfile: propertycomposer.cxx,v $
*
- * $Revision: 1.6 $
+ * $Revision: 1.7 $
*
- * last change: $Author: vg $ $Date: 2006-03-14 11:29:46 $
+ * last change: $Author: vg $ $Date: 2006-03-31 12:20:23 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -48,6 +48,9 @@
#ifndef _OSL_DIAGNOSE_H_
#include <osl/diagnose.h>
#endif
+#ifndef TOOLS_DIAGNOSE_EX_H
+#include <tools/diagnose_ex.h>
+#endif
#include <functional>
#include <algorithm>
@@ -459,8 +462,19 @@ namespace pcr
//--------------------------------------------------------------------
void SAL_CALL PropertyComposer::propertyChange( const PropertyChangeEvent& evt ) throw (RuntimeException)
{
+ if ( !impl_isSupportedProperty_nothrow( evt.PropertyName ) )
+ // A slave handler might fire events for more properties than we support. Ignore those.
+ return;
+
PropertyChangeEvent aTranslatedEvent( evt );
- aTranslatedEvent.NewValue = getPropertyValue( evt.PropertyName );
+ try
+ {
+ aTranslatedEvent.NewValue = getPropertyValue( evt.PropertyName );
+ }
+ catch( const Exception& )
+ {
+ DBG_UNHANDLED_EXCEPTION();
+ }
m_aPropertyListeners.notify( aTranslatedEvent, &XPropertyChangeListener::propertyChange );
}