forms/source/component/FormComponent.cxx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-)
New commits: commit bb50f9d66540a87065f30da8fd8cadde8e730704 Author: Lionel Elie Mamane <lio...@mamane.lu> Date: Tue May 9 12:53:25 2017 +0200 tdf#107720 Bound Control initFromField: consider the case of the insert row loplugin: simplifybool (cherry picked from commit 95b25532d24bfb08c4846b991451a36475dd439f) Change-Id: If18e161c994c926fd86453ab5736df1e89bb61de Reviewed-on: https://gerrit.libreoffice.org/37427 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/forms/source/component/FormComponent.cxx b/forms/source/component/FormComponent.cxx index 80e85758801c..743f4d47986b 100644 --- a/forms/source/component/FormComponent.cxx +++ b/forms/source/component/FormComponent.cxx @@ -1981,7 +1981,17 @@ void OBoundControlModel::initFromField( const Reference< XRowSet >& _rxRowSet ) // but only if the rowset is positioned on a valid record if ( hasField() && _rxRowSet.is() ) { - if ( !_rxRowSet->isBeforeFirst() && !_rxRowSet->isAfterLast() ) + bool shouldTransfer(!_rxRowSet->isBeforeFirst() && !_rxRowSet->isAfterLast()); + if (!shouldTransfer) + { + const Reference< XPropertySet > xPS(_rxRowSet, UNO_QUERY); + if (xPS.is()) + { + assert(!shouldTransfer); + xPS->getPropertyValue("IsNew") >>= shouldTransfer; + } + } + if ( shouldTransfer ) transferDbValueToControl(); else // reset the field if the row set is empty _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits