sc/source/core/data/formulacell.cxx | 2 +- sc/source/filter/oox/sheetdatabuffer.cxx | 7 ++++++- sc/source/filter/oox/unitconverter.cxx | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-)
New commits: commit 71868d36c77d770099658ebb6a1c29af1da53eba Author: Eike Rathke <er...@redhat.com> Date: Tue Dec 16 01:56:58 2014 +0100 construct grouped ScFormulaCell with bDirty=true, fdo#79249 related Noticed when loading https://bugs.freedesktop.org/attachment.cgi?id=99844 with fdo#79249 fix where oox::xls::applyCellFormulas() groups the consecutive =#N/A formulas. Only A1 result was displayed, other cells were displayed empty. Change-Id: I3a541f74d3d25e1515a1c6d47f02ec6a8e817c93 (cherry picked from commit a1dc5e97da273bf35d58d54e625149022569a993) diff --git a/sc/source/core/data/formulacell.cxx b/sc/source/core/data/formulacell.cxx index e68fe16..8f78e8b 100644 --- a/sc/source/core/data/formulacell.cxx +++ b/sc/source/core/data/formulacell.cxx @@ -751,7 +751,7 @@ ScFormulaCell::ScFormulaCell( nSeenInIteration(0), cMatrixFlag ( cInd ), nFormatType(xGroup->mnFormatType), - bDirty(false), + bDirty(true), bChanged( false ), bRunning( false ), bCompile( false ), commit ce2c2affdff3eb2616638eddae7334eba43d5b4a Author: Eike Rathke <er...@redhat.com> Date: Tue Dec 16 01:37:31 2014 +0100 fdo#79249 call formula compiler with error string ... instead of attempting to stringize a NaN coded error value. Regression introduced with 30a20743ae17e6e02183a65603d38968253b3ffb Change-Id: Ia7a8ca39938820ac75db169404446fa696c6ee1b (cherry picked from commit 994607b55104b9ae4554554c13b001b8d5d513b6) diff --git a/sc/source/filter/oox/sheetdatabuffer.cxx b/sc/source/filter/oox/sheetdatabuffer.cxx index 7cdf627..1e66c87 100644 --- a/sc/source/filter/oox/sheetdatabuffer.cxx +++ b/sc/source/filter/oox/sheetdatabuffer.cxx @@ -197,11 +197,16 @@ void SheetDataBuffer::setBooleanCell( const CellModel& rModel, bool bValue ) void SheetDataBuffer::setErrorCell( const CellModel& rModel, const OUString& rErrorCode ) { - setErrorCell( rModel, getUnitConverter().calcBiffErrorCode( rErrorCode ) ); + // Using the formula compiler now we can simply pass on the error string. + getFormulaBuffer().setCellFormula( rModel.maCellAddr, rErrorCode); + setCellFormat( rModel ); } void SheetDataBuffer::setErrorCell( const CellModel& rModel, sal_uInt8 nErrorCode ) { + assert(!"stringizing any NaN will only give 'nan'"); + /* FIXME: map nErrorCode to error string and call setErrorCell() above. */ + OUStringBuffer aBuf; aBuf.append('{'); aBuf.append(BiffHelper::calcDoubleFromError(nErrorCode)); commit 9e1ce14754939800d15f3510ebb12342d1da9936 Author: Eike Rathke <er...@redhat.com> Date: Mon Dec 15 23:53:06 2014 +0100 correct error string, #N/A instead of #NA is that mapping used at all? Change-Id: I15019072b6e812b9ffe29d3ee6afacd9ab526948 (cherry picked from commit 758755e31b3d9e1ed2eab522d4794282178346ac) diff --git a/sc/source/filter/oox/unitconverter.cxx b/sc/source/filter/oox/unitconverter.cxx index 84a1f26..aca0d51 100644 --- a/sc/source/filter/oox/unitconverter.cxx +++ b/sc/source/filter/oox/unitconverter.cxx @@ -112,7 +112,7 @@ UnitConverter::UnitConverter( const WorkbookHelper& rHelper ) : addErrorCode( BIFF_ERR_REF, "#REF!" ); addErrorCode( BIFF_ERR_NAME, "#NAME?" ); addErrorCode( BIFF_ERR_NUM, "#NUM!" ); - addErrorCode( BIFF_ERR_NA, "#NA" ); + addErrorCode( BIFF_ERR_NA, "#N/A" ); } void UnitConverter::finalizeImport() _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits