summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoel Power <noel.power@suse.com>2012-11-09 16:58:00 +0000
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2012-11-11 07:59:06 +0000
commit08ca08d2f46c6119550024ce02bc42c271a3644b (patch)
tree68c0bb5ac54046f567a1e0366e0cbbe273854ec4
parentfc3f771c1f5fed267298c851e94bef9557278b5b (diff)
fix for fdo#55875 numbers as text converted strangely
old code used to use XCell->setString, new code uses rDoc.SetString which by default tries to detect number formats. The ScColumn::SetString that eventually gets called seems to do lots of additional checks ( and apparently even if an ScSetStringParam instance with mbDetectNumberFormat ( false ) was passed it seems that it will still try to detect decimal number formats. With that in mind I restore and un-unoified version of what XCell->setString used do Change-Id: Ifaef74c78b198f492a390a3d5dc1721622a01ea4 Reviewed-on: https://gerrit.libreoffice.org/1020 Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
-rw-r--r--sc/source/filter/oox/worksheethelper.cxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/sc/source/filter/oox/worksheethelper.cxx b/sc/source/filter/oox/worksheethelper.cxx
index 96c84f912fdd..771f32f745ce 100644
--- a/sc/source/filter/oox/worksheethelper.cxx
+++ b/sc/source/filter/oox/worksheethelper.cxx
@@ -1564,7 +1564,14 @@ void WorksheetHelper::putString( const CellAddress& rAddress, const OUString& rT
{
ScAddress aAddress;
ScUnoConversion::FillScAddress( aAddress, rAddress );
- getScDocument().SetString( aAddress.Col(), aAddress.Row(), aAddress.Tab(), rText );
+ ScBaseCell* pNewCell = NULL;
+ ScDocument& rDoc = getScDocument();
+ if ( !rText.isEmpty() )
+ pNewCell = ScBaseCell::CreateTextCell( rText, &rDoc );
+ if ( pNewCell )
+ rDoc.PutCell( aAddress, pNewCell );
+ else
+ rDoc.SetString( aAddress.Col(), aAddress.Row(), aAddress.Tab(), rText );
}
void WorksheetHelper::putRichString( const CellAddress& rAddress, const RichString& rString, const Font* pFirstPortionFont ) const