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:43 +0000
commit12167e566c6c27b7bcd43e322f35ed6c799175e8 (patch)
treeb3163f9d3238629d9a962ee10f41de635356af73
parentc5cb5ba73468b127fb0fa6118bde5b2fd2b883b9 (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/9874 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 0d4457cb9a31..2ea872c55a5c 100644
--- a/svx/source/form/formcontroller.cxx
+++ b/svx/source/form/formcontroller.cxx
@@ -354,6 +354,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 )
@@ -375,7 +377,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
@@ -395,7 +397,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