summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-06-24 11:40:23 +0200
committerCaolán McNamara <caolanm@redhat.com>2014-06-24 15:26:30 +0000
commita07f2fbc482c2644c4a80287b9139585150b30d1 (patch)
tree5c3797f08380506235059fb9bc24a9e1b6282774
parenta64eda5c5f754b7534d2d62ac9a1f13165621533 (diff)
fdo#75339: Substituting XInterface* eq. for object eq. requires queryInterface
Regression introduced with 6a043e9c0acff20e1618ca8ec15c21d5d0fd0d37 "Use the new type-checking Reference constructor to reduce code noise" which should have left (at least some) "querying upcasts" to XInterface alone. Closer inspection of that commit will probably turn up further regressions that need to be reverted. Change-Id: Ib81afc12d9df205b5b0fe6cec6ce85d012e9629f (cherry picked from commit f8115ce72dad45b82b044d9c8f5c253d0514574d) Reviewed-on: https://gerrit.libreoffice.org/9875 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--svx/source/form/formcontroller.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/svx/source/form/formcontroller.cxx b/svx/source/form/formcontroller.cxx
index 109e77a4f0d0..69cd8553676f 100644
--- a/svx/source/form/formcontroller.cxx
+++ b/svx/source/form/formcontroller.cxx
@@ -353,6 +353,8 @@ void ColumnInfoCache::initializeControls( const Sequence< Reference< XControl >
lcl_resetColumnControlInfo( *col );
+ Reference< XInterface > xNormColumn( col->xColumn, UNO_QUERY_THROW );
+
const Reference< XControl >* pControl( _rControls.getConstArray() );
const Reference< XControl >* pControlEnd( pControl + _rControls.getLength() );
for ( ; pControl != pControlEnd; ++pControl )
@@ -374,7 +376,7 @@ void ColumnInfoCache::initializeControls( const Sequence< Reference< XControl >
{
Reference< XPropertySet > xGridColumnModel( xGridColAccess->getByIndex( gridCol ), UNO_QUERY_THROW );
- if ( !lcl_isBoundTo( xGridColumnModel, col->xColumn )
+ if ( !lcl_isBoundTo( xGridColumnModel, xNormColumn )
|| !lcl_isInputRequired( xGridColumnModel )
)
continue; // with next grid column
@@ -394,7 +396,7 @@ void ColumnInfoCache::initializeControls( const Sequence< Reference< XControl >
}
if ( !xModelPSI->hasPropertyByName( FM_PROP_BOUNDFIELD )
- || !lcl_isBoundTo( xModel, col->xColumn )
+ || !lcl_isBoundTo( xModel, xNormColumn )
|| !lcl_isInputRequired( xModel )
)
continue; // with next control