diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2019-04-24 18:51:08 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2019-04-25 08:09:08 +0200 |
commit | e1ebb5cb58edc325bb30bb5eb992665fb861960f (patch) | |
tree | 71733bb148959cf5e64f172af4d18520f0c9c23d /sc | |
parent | 0a188feea21176239adafa42118bc095e2d17d45 (diff) |
tdf67629 FILEOPEN Particular .xlsx hangs Spreadsheet
Seems like this is a somewhat pathological document, has lots of
duplicated ranges. Checking for duplicates makes it load in <10s on my
machine
Change-Id: I25da24e0f8b1d4ad99d00474be168c75586ea579
Reviewed-on: https://gerrit.libreoffice.org/71251
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/filter/oox/sheetdatabuffer.cxx | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sc/source/filter/oox/sheetdatabuffer.cxx b/sc/source/filter/oox/sheetdatabuffer.cxx index 7e7077a1b894..fcc54e1880b1 100644 --- a/sc/source/filter/oox/sheetdatabuffer.cxx +++ b/sc/source/filter/oox/sheetdatabuffer.cxx @@ -663,6 +663,9 @@ void SheetDataBuffer::setCellFormat( const CellModel& rModel ) * It is sufficient to check if the row range size is one */ if (!rRangeList.empty() && + *pLastRange == rModel.maCellAddr) + ; // do nothing - this probably bad data + else if (!rRangeList.empty() && pLastRange->aStart.Tab() == rModel.maCellAddr.Tab() && pLastRange->aStart.Row() == pLastRange->aEnd.Row() && pLastRange->aStart.Row() == rModel.maCellAddr.Row() && |