[Libreoffice-commits] core.git: svx/source

Stephan Bergmann sbergman at redhat.com
Tue Jun 24 02:45:28 PDT 2014


 svx/source/form/formcontroller.cxx |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

New commits:
commit f8115ce72dad45b82b044d9c8f5c253d0514574d
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Jun 24 11:40:23 2014 +0200

    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

diff --git a/svx/source/form/formcontroller.cxx b/svx/source/form/formcontroller.cxx
index 171da47..6660be4 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


More information about the Libreoffice-commits mailing list