summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@collabora.co.uk>2014-12-29 06:01:27 +0100
committerEike Rathke <erack@redhat.com>2015-01-07 23:06:56 +0000
commit4e7e27662c523514c8e589e5c077321546ea59ce (patch)
tree2fecd60d0b0b6d33d097408da15f83e1d6e27ff6
parent78cb68248ea7bc8a5ea52b0992c6d1eadd7633a4 (diff)
handle relative refs correctly in xls import, fdo#80091
Change-Id: Ia70f96e1d31e71c56f03c828be0a4e49fff4b198 Reviewed-on: https://gerrit.libreoffice.org/13687 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
-rw-r--r--sc/source/filter/excel/excform8.cxx7
1 files changed, 5 insertions, 2 deletions
diff --git a/sc/source/filter/excel/excform8.cxx b/sc/source/filter/excel/excform8.cxx
index 5fcd60e03fbf..53354f32a190 100644
--- a/sc/source/filter/excel/excform8.cxx
+++ b/sc/source/filter/excel/excform8.cxx
@@ -611,9 +611,12 @@ ConvErr ExcelToSc8::Convert( const ScTokenArray*& rpTokArray, XclImpStream& aIn,
ExcRelToScRel8( nRowFirst, nColFirst, aCRD.Ref1, bRNorSF );
ExcRelToScRel8( nRowLast, nColLast, aCRD.Ref2, bRNorSF );
- if( IsComplColRange( nColFirst, nColLast ) )
+ bool bColRel = aCRD.Ref1.IsColRel() || aCRD.Ref2.IsColRel();
+ bool bRowRel = aCRD.Ref1.IsRowRel() || aCRD.Ref2.IsRowRel();
+
+ if( !bColRel && IsComplColRange( nColFirst, nColLast ) )
SetComplCol( aCRD );
- else if( IsComplRowRange( nRowFirst, nRowLast ) )
+ else if( !bRowRel && IsComplRowRange( nRowFirst, nRowLast ) )
SetComplRow( aCRD );
aStack << aPool.Store( aCRD );