summaryrefslogtreecommitdiff
path: root/sc/source/filter/excel
AgeCommit message (Collapse)Author
2015-10-02don't believe xls wrt size to reserveCaolán McNamara
(cherry picked from commit 358ca9eaa3d85236047a7a2781e38f57209c2858) Change-Id: Id9864f199e270d13d801348b12f1e94dd80558c7 Reviewed-on: https://gerrit.libreoffice.org/19043 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-10-02Resolves: rhbz#1264585 check data pilot field name availabilityEike Rathke
Change-Id: Iaadf7044acb7299ee878de2fbc08992447587d62 (cherry picked from commit f09a91630c767370871389c28b81280807513431) Reviewed-on: https://gerrit.libreoffice.org/18752 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-09-17tdf#61908 OOXML export cell range for matrix/array formulaEike Rathke
Problem Description: - Matrix multiplication cell formula range is not exported after roundtrip. XML Difference: Original : <f t="array" ref="G5:G6">MMULT(A1:C2,E1:E3)</f> Roundtrip : <f aca="false">MMULT(A1:C2,E1:E3)</f> Solution : Added formula cell range support for matrix multiplication. Reviewed-on: https://gerrit.libreoffice.org/16033 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com> (cherry picked from commit beb8e2830dc9e1c771e196fcaf08cdfd6bf3dde3) Conflicts: sc/qa/unit/subsequent_export-test.cxx Omitted test case and document from commit. fix 176 unbalanced XML_f xlsx export failuires regression from commit beb8e2830dc9e1c771e196fcaf08cdfd6bf3dde3 Author: yogesh.bharate001 <yogesh.bharate@synerzip.com> Date: Tue Jun 2 16:39:09 2015 +0530 tdf#61908:XLSX formula cell range is not exported for MMULT. (cherry picked from commit 103b619401f06697255167c788192601e87758b9) array formulas do not consist only of multiple rows, tdf#61908 follow-up For example, {={1,2}*3} is a two columns one row vector, or even a single cell could hold an array formula. (cherry picked from commit 92df7db85a3da10f18a5a06fb53a9cb69910e835) a54ce5ce437e592378fe930b779c518de9670995 14a44ac8356fdffc98b7097f48319755f5f2f317 do not write MM_REFERENCE formulas to OOXML, tdf#61908 follow-up The array range is covered by MM_FORMULA. Excel even complained when loading such a document. (cherry picked from commit f501fe4da88e1d64fcc88a492a52911113d28f6a) Change-Id: Ic871f064a98a324bc16a4253b633c97417c3f900 10e1b19fbfb8ea849ffe3d46504fdf3389633c5f Reviewed-on: https://gerrit.libreoffice.org/18593 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-04-23Resolves tdf#83366 Copy and Paste crashes Calc when original doc closedHenry Castro
Change-Id: I5ab279a7d7af6829735b47ef5228f56dc77580c9 Reviewed-on: https://gerrit.libreoffice.org/15448 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-04-23fix col limit crash on export of ooo103315-1.ods to xlsCaolán McNamara
Change-Id: Ic68ddc56d9cf9dd410c1f073ba83bfeea8220bf0 (cherry picked from commit cee6eb254fae1012bc6ffe1b2e440fe58fedac1b) Reviewed-on: https://gerrit.libreoffice.org/15318 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-04-23fix crash on export of fdo68639-2.ods to xls with invalid mnLastIdxCaolán McNamara
mnLastIdx doesn't get reset when the color list is reset, the code already acknowledges that mnLastIdx is the last set index but that it may not be a valid position, so only set rnIndex if mnLastIdx is valid and the data at that pos is the desired data. Change-Id: I57ce32fd1a13bfe9049ed94be34229c8c2808b8e (cherry picked from commit 6c3b1361a97f5219f90bf2f09f3c3f2b70b8e30e) Reviewed-on: https://gerrit.libreoffice.org/15320 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-03-10Also relative row references need to wrap around, like fdo#84556 for columnsTor Lillqvist
Change-Id: I07400d6dead66ec437436b5ea8b49491f8048335 Reviewed-on: https://gerrit.libreoffice.org/14823 Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2015-02-13tdf#89281 fix performance regression of XLS importLászló Németh
The fix for Bug 76611 caused ~20% performance loss in XLS import. With optional cloning of ScTokenArray of the shared XLS formulas depending on the need of address wrapping, it is possible to gain back near the original performance. Note: The original patch for Bug 76611 has already got an unit test, too (see wrapped-refs.xls), and that unit test works with this improved patch, too. Cherry picked from master: ba686b9bd2596811141e4028947334f10799c356 cleanup b18b5b7edf3d14ef5f0efe53e367f88a423088c4 first commit Change-Id: Ibfb59d1543ef9c4b8a075d5c4e37f77ab451aaa0 Reviewed-on: https://gerrit.libreoffice.org/14393 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-02-05Revert "ODF export: don't write invalid "group-name" attribute"Lionel Elie Mamane
This reverts commit 2d4b87f0c1bfd97185a89c18d5b7680d11a958d6. The reverted commit leads to the following regressions: - Basic dialogs (which were not targeted, but impacted, by the reverted commit) with several RadioButtons sharing a group-name (as they will have a tendency to do) cannot be loaded anymore, since the implementation assumes (and checks) that names are unique. - Even in forms, where a RadioButton had both a form:name and a form:group-name attribute, the form:name attribute wins and thus RadioButtons that has the same group-name but different form:name (as they will tend to do) will not anymore be mutually exclusive, which defeats their point. Additionally, since it did not change the UI parts (property editor window), the user was still presented with two different editable properties "Name" and "Group Name", where "Group Name" was empty... Change-Id: I1bff532a5a7336cf2eb0579bcd4e2d16be6480fe Reviewed-on: https://gerrit.libreoffice.org/14338 Reviewed-by: Michael Stahl <mstahl@redhat.com> Tested-by: Michael Stahl <mstahl@redhat.com>
2015-02-02tdf#88810 avoid unnecessary massive O(U)String allocations in XLSX exportLászló Németh
ToOString(XclAddress/ScAddress) functions are replaced with ToOString(OStringBuffer&, XclAddress/ScAddress) ones, using the new shared OStringBuffer variable of XclExpRootData Cherry-picked from master: b2df899dbb038acfe3c47eef303345ceaf3725b8 (build fix) 99674f754323ca78ac45499439b9983b31ebd444 (append() for number to string conv.) f0152b737d9a196e83752a546154735efee5c2be (more cleanup) cc724c37232b721537d66c997a66c0d7866948ea (cleanup) 779581feed4886313746a71e9e738d736977be1b (original) Change-Id: I06b705e2159a1ef5990f9eb0ffedd20fe277c616 Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2015-01-26Revert "fdo#88810 avoid unnecessary massive O(U)String allocations in XLSX ↵Németh László
export" This reverts commit ace8f9c2a31795cc2329c6bb27deacde9f4c18df. (Interestingly, reverting the original patch in the master pushed this one in libreoffice-4-4 automatically, sorry.) Change-Id: I0d3048b58aea0c84fa0b287e711a5d7cda7ab8fc Reviewed-on: https://gerrit.libreoffice.org/14188 Reviewed-by: Németh László <nemeth@numbertext.org> Tested-by: Németh László <nemeth@numbertext.org>
2015-01-26fdo#88810 avoid unnecessary massive O(U)String allocations in XLSX exportLászló Németh
Change-Id: Ie6a024463e7ee9b0f4492b2431533708a578faf0
2015-01-21Revert "Globally disable threading for these for now."Michael Meeks
This reverts commit d677bf455f08264096edd13e3306c55f74f7ee1d. It appears that the memory corruption was an out-of-memory condition on 32bit Windows, so restore XclExpRow threading for now. Change-Id: If8ca6640a3bc6196106426bd0477d48c556036e7 Reviewed-on: https://gerrit.libreoffice.org/14091 Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2015-01-20fdo#88623 replace std::deque with std::vector in xlsx savingLászló Németh
Change-Id: I0b9c44b405e2c617c60e11a1a15eaeb867cba57e Reviewed-on: https://gerrit.libreoffice.org/14036 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-01-10Resolves: fdo#85617 always store fully encoded external document nameEike Rathke
Also OOXML calls these API functions, this is the central place to handle it. (cherry picked from commit 97a8b3ed5e5bd42e213d3230fa764b0f5d10f0f2) write externalLink Relationship Target IURI encoded, fdo#85617 related (cherry picked from commit 7eb5e135422f1a5830a44d129300bc3fafb4627d) do not drop entire external reference, fdo#85617 related If there are no matching tab names for a FileId, preserve at least the known reference parts. In case of 2D references the sheet name is in the token if for example read from .xlsx, only for 3D references the second sheet name would be needed. The underlying makeExternalRefStr() and its subroutines handle the missing tabname elements gracefully. Still this situation is worth an assertion. (cherry picked from commit b6339617b1cc3136f9e527acd0746d712cd21643) Change-Id: I3df065af8e4ef44734f468fd455c3b7c93d7fbc6 Reviewed-on: https://gerrit.libreoffice.org/13835 Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
2015-01-07handle relative refs correctly in xls import, fdo#80091Markus Mohrhard
Change-Id: Ia70f96e1d31e71c56f03c828be0a4e49fff4b198 Reviewed-on: https://gerrit.libreoffice.org/13687 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-01-07relative refs wrap around in xls, fdo#84556Markus Mohrhard
Change-Id: If84d468d4bd55ed55ccd517d0b078d283a1a9c38 Reviewed-on: https://gerrit.libreoffice.org/13694 Reviewed-by: David Tardon <dtardon@redhat.com> Tested-by: David Tardon <dtardon@redhat.com>
2015-01-07fix another validation error for OOXML, related fdo#40746Markus Mohrhard
e.g. exporting fdo40746-2.ods as OOXML Change-Id: I8a19ec2caecbc3687229d820ac2ec11fc01facd1 Reviewed-on: https://gerrit.libreoffice.org/13588 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-01-07fix OOXML validation error, related fdo#40746Markus Mohrhard
e.g. fdo40746-2.ods exported to OOXML Change-Id: I48bc7a7d21ddc00eceaeb09970a2b1a60330fbf0 Reviewed-on: https://gerrit.libreoffice.org/13587 Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
2015-01-04use the correct tab for sheet local names, fdo#81195Markus Mohrhard
Change-Id: I7e8b7ed552a37c6d9c6ce7c75765267b343d508c Reviewed-on: https://gerrit.libreoffice.org/13696 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-12-19valgrind: initialize theseCaolán McNamara
Change-Id: I6440832fe508689ffa8e20fa17827528331e3585
2014-12-10Globally disable threading for these for now.Kohei Yoshida
It doesn't win us much performance-wise (as it turned out), and causes weird crashers with large documents. Change-Id: I0566ce850b8f6656e6f9821c653b7a825a7874a3 (cherry picked from commit e0425f9493e25fa14f11505d9ebc12a2fe78d4b6)
2014-11-30don't call XLSX methods in XLS export, related fdo#59762Markus Mohrhard
This should fix a huge number of our xls export crashes. I just picked my test document for the commit message. I suppose that nearly all reported XLS export crashes are the same issue. At the same time this should improve the performance of our XLS and XLSX export a bit. Change-Id: Id19e2515e75e10527d3af62d671377bec23f99e8
2014-11-27fdo#86687 Avoid deadlock updating progress barMatthew J. Francis
Change-Id: I13f93372fedc67bfd25d36a5bee10a004fe9f8f6 Reviewed-on: https://gerrit.libreoffice.org/13147 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com>
2014-11-20No need to start listening in CalcAfterLoad for xls import.Kohei Yoshida
We do that prior to it, and in fact, doing it here would unregister all group area listeners and re-register non-group ones, which is massively slower with huge documents. Change-Id: I693f681df05f036eb1aa53554e601066c469f49a
2014-11-19coverity#1242708 Untrusted loop boundCaolán McNamara
Change-Id: Ic5af417ad38cafa46051789574239996a8845ffb
2014-11-18WaE: overriding virtual function declaration not marked 'override'Tor Lillqvist
Change-Id: I82cfe96c4081afbd43fa1a9c41a9a92433f6bdb1
2014-11-18Thread excel table row/column format finalization.Michael Meeks
Change-Id: I6ddc0270831989291893b170d57fea14329a26ba
2014-11-18coverity#1242538 Untrusted loop boundCaolán McNamara
Change-Id: I663f70d6324c6dd42208aa3804edfe3680881ea1
2014-11-18coverity#1242628 Untrusted loop boundCaolán McNamara
Change-Id: Ifabdfab76279e4417642ce10cb86a43184b94629
2014-11-18coverity#1242631 Untrusted loop boundCaolán McNamara
Change-Id: Ib034582fa4fa6e8149db2e45491230b4900c4d08
2014-11-17coverity#1242891 Untrusted loop boundCaolán McNamara
Change-Id: I5859cef0fa6b9c49225c5d7b073bcbc521734854
2014-11-17coverity#704257 Logically dead codeCaolán McNamara
since commit 4939fe9653430ae002056ca1481aa1716da1b368 Date: Tue Jan 29 14:23:27 2008 +0000 INTEGRATION: CWS dr58_SRC680 (1.32.188); FILE MERGED 2007/10/25 10:41:26 dr 1.32.188.1: #i81396# do not hide rows with default height Change-Id: Id185ae2ee37d1db8aaab493f7fc6a81d93424182
2014-11-17sal: clean up public headers with include-what-you-useMichael Stahl
Sadly cannot forward declare "struct {...} TimeValue;". rtl/(u)?string.hxx still include sal/log.hxx but removing osl/diagnose.h was painful enough for now... Change-Id: Id41e17f3870c4f24c53ce7b11f2c40a3d14d1f05
2014-11-14fdo#86023 - O[U]String needs a 'clear' methodBrij Mohan Lal Srivastava
Added clear() method to OString and OUString class, Updated appropriate call-sites. Change-Id: I0ba97fa6dc7af3e31b605953089a4e8e9c3e61ac Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2014-11-12coverity#1242892 Untrusted value as argumentCaolán McNamara
Change-Id: I6a384b0cf8a08883a0bfab8fd62a2e6badeb09cd
2014-11-12Fix common typos. No automatic tools. Handmade…Andrea Gelmini
Change-Id: I1ab4e23b0539f8d39974787f226e57a21f96e959 Reviewed-on: https://gerrit.libreoffice.org/12164 Reviewed-by: Noel Grandin <noelgrandin@gmail.com> Tested-by: Noel Grandin <noelgrandin@gmail.com>
2014-11-05fdo#38835 strip out OUString globalsNoel Grandin
they are largely unnecessary these days, since our OUString infrastructure gained optimised handling for static char constants. Change-Id: I07f73484f82d0582252cb4324d4107c998432c37
2014-11-03fdo#39468 Translate German Comments - final bits of sc/source/filter/Christian M. Heller
Change-Id: Ie01e9488c6b8e36c40e6176bc1cac38a93a8087f Reviewed-on: https://gerrit.libreoffice.org/12194 Reviewed-by: Samuel Mehrbrodt <s.mehrbrodt@gmail.com> Tested-by: Samuel Mehrbrodt <s.mehrbrodt@gmail.com>
2014-10-30coverity#735614 Division or modulo by float zeroCaolán McNamara
or coverity#735615 Division or modulo by float zero Change-Id: I6509e987eaf58349e81b9ebadcd7e2d0ff0bcbcb
2014-10-29tools: remove DBG_ERRORFILE and replace all callersMichael Stahl
Change-Id: Ic76ccc49b9291fe82c56974eb6237cd3b85d91c8
2014-10-29callcatcher: more ww1 removal falloutCaolán McNamara
quite pleasing Change-Id: I3eaf711e8d5a42358922c16bfc82d0e32d0bc44b
2014-10-29improve coverity#1242796 calculationCaolán McNamara
Change-Id: I0a462d043aaa67863d5f1906451e66d01b634a8f
2014-10-28coverity#1242796 Untrusted loop boundᚉᚐᚑᚂᚐᚅ McNamara
and throw ogham at the bugzilla bot for kicks Change-Id: I50cdf676e59e4e966f999218837dabfdd2008b6e
2014-10-28loplugin: cstylecastNoel Grandin
Change-Id: I287dcb0ca728747ec91b5c3cdd986e60998e3928
2014-10-25bnc#893791 XLS export: external sheet references on Linux/OSXAndras Timar
The commit solves two problems. 1. Make sure we save absolute paths on Linux/OSX 2. Make sure we don't save invalid XLS (VirtualPath longer than 255 chars) The first problem has always been there, so after a few load/save cycles an XLS with reference to other XLS on a Unix-like file system became invalid, and only LibreOffice could open it, Excel could not. These broken XLS files can be repaired by saving after this patch, however, the original reference will remain broken. Change-Id: I8f575acb1d560d539c1da61a1afdaac3f0c13977
2014-10-23Avoid left shift of negative values (ubsan)Stephan Bergmann
Change-Id: If465c155c70ec068b6bd7adc05f188bbecc2824e
2014-10-23Avoid left shift of negative values (ubsan)Stephan Bergmann
Change-Id: Ie4f6a4e3e54770c00741cc268ed9e27ecafac500
2014-10-23ATTR_VALUE_FORMAT is an SfxUInt32ItemStephan Bergmann
Change-Id: I38f7cece6157cd0a48e3c6a09b25eccc47f8525e
2014-10-23Use sc::CompileFormulaContext for faster exportMatúš Kukan
It's a cache for maTabNames (sheet names mangled for the current grammar for output) which ScCompiler needs and is expensive to get. Change-Id: I7e2954104427a3c220f0f097be6cd45a66485b56