Commit Graph

575 Commits

Author SHA1 Message Date
Thomas Fussell
60b2d9cfd1 ignore nullptr warning in libstudxml, update to latest beta 9, and switch to submodule 2021-02-20 22:29:59 -04:00
Thomas Fussell
f0da7f61bb
Merge branch 'master' into memory_leaks_fix 2021-01-03 19:31:11 -05:00
Thomas Fussell
6987c1f233 add constructor 2021-01-03 19:04:41 -05:00
Thomas Fussell
a8b631bcbb replace enable_if_t 2021-01-03 18:42:56 -05:00
Thomas Fussell
c007dafe33 add include 2021-01-03 18:26:48 -05:00
Thomas Fussell
1868128dda
Merge branch 'master' into memory_leaks_fix 2021-01-03 12:22:12 -05:00
Thomas Fussell
e53ef68469 fix compiler warnings and some valgrind problems 2021-01-03 12:20:46 -05:00
Thomas Fussell
0039eab40d fix gcc 4.8.2 build problems 2021-01-03 09:33:43 -05:00
Thomas Fussell
c5d449915f fix shared string handling 2021-01-02 15:28:14 -05:00
Thomas Fussell
18e82f35d3 Revert "Shared strings"
This reverts commit d6262df555.
2021-01-02 15:20:56 -05:00
Thomas Fussell
90868bdb2a
Merge branch 'master' into issue-509-count-missing 2021-01-02 15:02:37 -05:00
Thomas Fussell
c31b2aa51d
Merge branch 'master' into issue-494-shared-string 2021-01-02 15:01:41 -05:00
Thomas Fussell
08e51ccdc0
Merge branch 'master' into feature/hidden-sheet 2021-01-02 14:58:47 -05:00
Thomas Fussell
f6e43a312d
Merge branch 'master' into feature/hidden-sheet 2021-01-02 14:57:12 -05:00
Thomas Fussell
dd215794db
Merge branch 'master' into issue_503_external_link 2021-01-02 14:54:31 -05:00
Thomas Fussell
566d83d447
Merge branch 'master' into master 2021-01-02 14:41:10 -05:00
kira
687af90735 Memory leaks fix 2020-11-20 15:24:47 +03:00
胡剑波
dc9f550429 Fix the missing count of fonts and throw an exception. 2020-08-25 16:40:33 +08:00
胡剑波
e8dd38d0d6 Fix throwing exception when duplicate shared strings occur. 2020-08-25 15:08:20 +08:00
胡剑波
dafdfa3ebb Add the function of getting table hidden attributes. 2020-08-25 13:32:21 +08:00
胡剑波
0ecad78c1d Fixed an exception thrown when parsing external links. 2020-08-25 09:00:22 +08:00
Adam Hooper
319c4197c1
Streaming: skip empty rows in has_cell()/read_cell()
Previously, an empty row would mess with the parser: if we're in an
empty row, our helper methods don't detect us as being in the "row" _or_
in the "sheetData". So `has_cell()` would return false when it
shouldn't. Similarly, `read_cell()` wouldn't skip rows; so `read_cell()`
would return an invalid cell when placed in an empty row, causing a
segfault when the caller tried to use the cell.

Callers must take care to call `has_next()` before `read_next()`. In
the future, perhaps we can make `read_next()` return a `std::optional`
and nix `has_next()` altogether?

[Closes #492]
2020-07-28 15:29:12 -04:00
JCrawfy
06801f7d36 derp, need typename too 2020-04-26 15:54:49 +12:00
JCrawfy
6c5a5a5dae and same issue with is_convertible 2020-04-26 15:49:05 +12:00
JCrawfy
f1042c5119 enable_if_t isn't a thing in C++11 2020-04-26 15:47:53 +12:00
JCrawfy
504fed3585 another missing header 2020-04-26 15:40:56 +12:00
JCrawfy
556d3358e9 fix bad commit 2020-04-26 14:53:15 +12:00
JCrawfy
d30e705f83 fix most (all?) the places where string<->double conversions are performed
strod / stod / to_string and all related friends are dependant on current locale for how they format a number
2020-04-25 14:00:58 +12:00
JCrawfy
dfb8f1518e Revert "redo serialisation by using a sorted vector instead of a lookup for each possible row/column combination"
This reverts commit 63484f8b8f.
2020-04-25 11:15:23 +12:00
JCrawfy
63484f8b8f redo serialisation by using a sorted vector instead of a lookup for each possible row/column combination
Not tested, definitely not as correct as previous implementation
2020-04-25 11:00:39 +12:00
JCrawfy
9136d21845 move the simplified cell_reference and cell structs out to a header
the standard xlnt::cell and xlnt::cell_reference have plenty of extra functionality that just slows things down during (de)serialisation
These intermediate structs can be used to minimise overhead before transforming to the final type
2020-04-25 11:00:39 +12:00
JCrawfy
1069c17fbe fixup comment in parser 2020-04-25 11:00:39 +12:00
JCrawfy
e8e29e9c18 resolve some warnings (unintialised variables), remove warning suppression 2020-04-25 11:00:39 +12:00
JCrawfy
c418c13010 remove a double lookup in the cell map during serialisation 2020-03-01 23:18:13 +13:00
JCrawfy
39f498f401 use the new faster serialisation everywhere in xlsx_producer 2020-03-01 22:01:53 +13:00
JCrawfy
0915fde090 add saving to the spreadsheet-load test, fix a bug in the serialiser 2020-03-01 20:43:56 +13:00
Adam Hooper
ac18fc6dde Parse inlineStr values
inlineStr XML structure is <c><is><t>. This was being parsed incorrectly
when streaming (because has_value wasn't being set to true) and when
reading the whole file (because the <t> was ignored).

[closes #445]
2020-02-25 14:32:14 -05:00
Thomas Fussell
e8ee585897
bump copyright year to 2020 2020-02-08 12:12:59 -05:00
Thomas Fussell
39503e8bf0 fix warnings and other minor issues 2019-12-26 12:52:14 -05:00
Thomas Fussell
8014e2fe19 update miniz to 2.1, move to third-party 2019-12-26 12:51:02 -05:00
Thomas Fussell
a560756b35 use clang-format, fix some small warnings 2019-12-26 12:03:12 -05:00
Thomas Fussell
e2262a0c65
Merge pull request #421 from Crzyrndm/experimental/sheet-data-parser
Accelerated worksheet parsing
2019-12-19 16:24:51 -05:00
Thomas Fussell
edb27e84f8
Merge pull request #425 from yschungmr/hotfix/gcc-5-build-bug
Fixed gcc 5 build bug
2019-12-19 16:13:48 -05:00
Johann1994
d6262df555
Shared strings
It can happen that some strings are not unique in sharedstring table
2019-12-18 13:53:23 +01:00
Youngsuk Chung
8e2f197f70 Fix indentation 2019-12-09 14:52:07 +09:00
Youngsuk Chung
c8bda73f01 Fix g++-5 build bug (Fix #385)
Tested on g++ (Ubuntu 5.4.0-6ubuntu1~16.04.12) 5.4.0 20160609

Note: Actually,it is not a BUG. It is compiler related issue. The issue #385 is not shown in g++-6 and clang.
2019-12-09 14:46:12 +09:00
JCrawfy
f2ad495326 resolve warnings, remove failing test (CI doesn't know what locale "de-DE" is?) 2019-11-18 21:45:46 +13:00
JCrawfy
97841413fa fixed more parsing errors, added test for ',' locale serialisation (it fails...) 2019-11-18 21:12:21 +13:00
JCrawfy
a25187f788 fix using attribute<double> (causes bugs when '.' is not the decimal separator 2019-11-18 20:46:34 +13:00
JCrawfy
d69a5dea75 scan and replace '.' with ',' when decimal separator is comma 2019-11-18 19:55:13 +13:00