Age | Commit message (Collapse) | Author |
|
Change-Id: I1df70b7dff5ebb6048f7fc618789faa15ca5d422
Reviewed-on: https://gerrit.libreoffice.org/61967
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I8e555a98f74f61e6e40122564b7ad19ca07a8a91
Reviewed-on: https://gerrit.libreoffice.org/61866
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
redundant get() call on smart pointer
Change-Id: Icb5a03bbc15e79a30d3d135a507d22914d15c2bd
Reviewed-on: https://gerrit.libreoffice.org/61837
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I01698e6b9981d7dd15bf42fcb69a7bd4778d1798
Reviewed-on: https://gerrit.libreoffice.org/61792
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: I09d86ee7e156ac71d7c1f9fd58d43751037d2629
Reviewed-on: https://gerrit.libreoffice.org/61761
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Icc6f93bbf85df245ba332ce89791a1c8d266b1c6
Reviewed-on: https://gerrit.libreoffice.org/61639
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Since ScTokenArray::Add() overallocates memory, make sure we do not
keep such possibly large arrays. Since any copying of ScTokenArray
implicitly finalizes as well, this is not a big problem right now,
but then why needlessly do the copies? (next commit)
Change-Id: I55398bcd8fb31f1be5a4b8e3f5a71b26649a7594
Reviewed-on: https://gerrit.libreoffice.org/60862
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: I855af060e1aeb91bccfc923ca567ad34d64be757
Reviewed-on: https://gerrit.libreoffice.org/60861
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
...where "inline" (in its meaning of "this function can be defined in multiple
translation units") thus doesn't make much sense. (As discussed in
compilerplugins/clang/redundantinline.cxx, exempt such "static inline" functions
in include files for now.)
All the rewriting has been done automatically by the plugin, except for one
instance in sw/source/ui/frmdlg/column.cxx that used to involve an #if), plus
some subsequent solenv/clang-format/reformat-formatted-files.
Change-Id: Ib8b996b651aeafc03bbdc8890faa05ed50517224
Reviewed-on: https://gerrit.libreoffice.org/61573
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Separated implementation is gone since long.
Change-Id: I78279f631c9205202af92ad8e248f9a1226b7a19
Reviewed-on: https://gerrit.libreoffice.org/61075
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
...warning about (for now only) functions and variables with external linkage
that likely don't need it.
The problems with moving entities into unnamed namespacs and breaking ADL
(as alluded to in comments in compilerplugins/clang/external.cxx) are
illustrated by the fact that while
struct S1 { int f() { return 0; } };
int f(S1 s) { return s.f(); }
namespace N {
struct S2: S1 { int f() { return 1; } };
int f(S2 s) { return s.f(); }
}
int main() { return f(N::S2()); }
returns 1, both moving just the struct S2 into an nunnamed namespace,
struct S1 { int f() { return 0; } };
int f(S1 s) { return s.f(); }
namespace N {
namespace { struct S2: S1 { int f() { return 1; } }; }
int f(S2 s) { return s.f(); }
}
int main() { return f(N::S2()); }
as well as moving just the function f overload into an unnamed namespace,
struct S1 { int f() { return 0; } };
int f(S1 s) { return s.f(); }
namespace N {
struct S2: S1 { int f() { return 1; } };
namespace { int f(S2 s) { return s.f(); } }
}
int main() { return f(N::S2()); }
would each change the program to return 0 instead.
Change-Id: I4d09f7ac5e8f9bcd6e6bde4712608444b642265c
Reviewed-on: https://gerrit.libreoffice.org/60539
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ida4307a92dfb1dbd14da5a30b6ee1f0fd6a9455e
Reviewed-on: https://gerrit.libreoffice.org/60194
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Icc820a47ac891c358883f9c01224f676c58fdd11
Reviewed-on: https://gerrit.libreoffice.org/59744
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
we've been using the normal memory allocator instead of the sal slab
allocator ever since
commit bc6a5d8e79e7d0e7d75ac107aa8e6aa275e434e9
Date: Wed Nov 15 16:52:44 2017 +0530
Disable custom allocator
Change-Id: I3383962cedb85d56fbec695398901f6ff7057651
Reviewed-on: https://gerrit.libreoffice.org/58577
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I3f0bead636632682488cbe677fd7fee60350f04d
Reviewed-on: https://gerrit.libreoffice.org/58876
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to reduce needless object creation and copying some more
And fix what looks like a bug in CSS hex color parsing at line
609 in sw/../parcss1.cxx that has been there since
commit 7b0b5cdfeed656b279bc32cd929630d5fc25878b "initial import"
Change-Id: Ibad42b23721a56493bd1edcd7165e6104494a5c3
Reviewed-on: https://gerrit.libreoffice.org/58357
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Commit 67444cbe disabled svDoubleRef completely for OpenCL, which means
many formulas weren't handled by OpenCL even if the implicit intersection
problems are quite rare. This patch tries to detect formulas implicit
intersections in formulas and if it's certain that a formula does not
contain one, then it's ok to use OpenCL with svDoubleRef.
The detection is done by having ScCompiler analyze each opcode call
and its parameters, which should provide sufficient information to know
if implicit intersection can take place or not. The extra compilation
can be avoided by using OpenCL's compilation and doing the svDoubleRef
conversion later on the RPN code, to be done later.
This is opt-in, so if unsure don't do anything, if it turns out that some
opcode needs special handling, it can be simply added.
Change-Id: Iaa52fa7eb8b14dc8c2b92384a21e2ab8efe0ddd7
Reviewed-on: https://gerrit.libreoffice.org/57959
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
If the expression is bad, such as in sc/qa/.../sheet.fods, 'pCode - 1'
may actually refer before the array of tokens, since nothing has been
added yet. So make that element nullptr. This is a bit hackish, but
checking in every place that pCode is valid seems tedious.
Change-Id: Ia099a50583f60d93a2e20b1f7b5e44b0121a275b
Reviewed-on: https://gerrit.libreoffice.org/58198
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
This extends 60c5ca1b87 to do implicit intersection while generating
RPN code for even more opcodes. This will serve as a basis for making
it possible to know when ScGroupTokenConverter can convert svDoubleRef
to a matrix without the problems mentioned in its convert() method.
Change-Id: I8dfeefc026418bd5644bd266ad94c31f670e811c
Reviewed-on: https://gerrit.libreoffice.org/57958
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
|
rtl/string.hxx and rtl/ustring.hxx both unnecessarily #include <sal/log.hxx> (and don't make use of it themselves), but many other files happen to depend on it.
This is a continuation of commit 6ff2d84ade299cb3d14d4110e4cf1a4b8070c030 to be able to remove those unneeded includes.
This commit adds missing headers to every file found by:
grep -FwL sal/log.hxx $(git grep -Elw 'SAL_INFO|SAL_INFO_IF|SAL_WARN|SAL_WARN_IF|SAL_DETAIL_LOG_STREAM|SAL_WHERE|SAL_STREAM|SAL_DEBUG')
to directories from filter to jvmfwk
Change-Id: I2a73d63f2aaef5f26d7d08957daaa8a30b412ac5
Reviewed-on: https://gerrit.libreoffice.org/58204
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Results are forced to recalculate for cells with General format in
case they need to inherit a format that then can be set. However,
a General format will never lead to some other format being set
for any string results and almost all string result cells will
have General format because the string is already what is being
displayed. So for formula cells with a string result available do
not allow to use ScFormulaCell::SetNeedNumberFormat() forcing the
need to recalculate.
This popped up during intercepting for tdf#118735 when the formula
cell containing a WEBSERVICE() call is set dirty, through
CompileXMLHandler::operator()(...)
if (pCell->NeedsNumberFormat())
pCell->SetDirtyVar();
Which again, as WEBSERVICE() has to be recalculated to populate
the link manager, made it necessary to add that to
ScRecalcMode::ONLOAD_LENIENT (which it should already had been
before (when that was ONLOAD), but no harm in this case).
Change-Id: I0dc2cdfe35c56d9843f0edd24a6d14e3de79f7ef
Reviewed-on: https://gerrit.libreoffice.org/57700
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Change-Id: I5dbf870ff27f1039e24f4350787cf5bfc5f4ccaf
Reviewed-on: https://gerrit.libreoffice.org/57487
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Strictly order the exclusive bits by priority, let AddRecalcMode()
handle all sets except forced ALWAYS or NORMAL.
Introduce ONLOAD_LENIENT and ONLOAD_MUST splitting ONLOAD to be
able to distinguish later during OOXML import.
Change-Id: I188de2d53a2d54df32d24eeeb148c4f9e87e7cfc
Reviewed-on: https://gerrit.libreoffice.org/57402
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Do implicit intersection computation for
for single parameter functions while generating
RPN token array when the argument is a doubleref
with relative row references. This optimization
is not done when under forced array mode or
matrix formula mode.
The computation logic was already present in ScInterpreter,
so factored it out and reused.
This also adds unit tests to ensure correctness of
II computation for various cases.
Change-Id: I509c3f6f811aa036b1dc3296e8f68904b26c3c49
Reviewed-on: https://gerrit.libreoffice.org/53885
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
and fix the fallout
Change-Id: I15bc5d626f4d157cbc69a87392078b41e621d14e
Reviewed-on: https://gerrit.libreoffice.org/54882
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
For some reason, on macOS, when this is being invoked through the
shortcut, Application::AnyInput( VclInputFlags::KEYBOARD ) returns
true, so the code thinks that there is more keyboard input and won't
call UpdateTokenArray(), which sets m_pTokenArray.
I think that optmisation is questionable, especially as the exact
semantics of our event loop API, like Application::AnyInput(), is
under-defined and probably can and will change in various minor ways
when people work on improving it on the Mac (and perhaps other
platforms, too).
(The event loop etc certainly needs improvement on the Mac. Consider
the "WindowServer grows to tens of gigabytes when running make check"
issue which is closely related. Unfortunately nobody has come up with
a simple fix for that yet, exactly because we use our event loop
related APIs in so imaginative ways all over the code, and fixing one
thing usually breaks another.)
Change-Id: I865d46e5ee69609ad58bc915ff949e0f3602d8f5
Reviewed-on: https://gerrit.libreoffice.org/54448
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
The ocStyle token is only in the RPN tokens, the raw tokens array contains
only ocName, so it's necessary to check also RPN tokens.
Prevents a crash with tdf#91220/1 because of ScInterpreter::ScStyle() causing
a SfxBroadcaster::Broadcast() call.
Change-Id: I7fa04114b698918569014322c721751ab3d8c62f
Reviewed-on: https://gerrit.libreoffice.org/54326
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: I031654d8bb4f1788d364ef4f8d3bf7a05fadb148
Reviewed-on: https://gerrit.libreoffice.org/54454
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I5716295d2f0c88c6daf0570941d5dd4c5ff03a33
Reviewed-on: https://gerrit.libreoffice.org/54168
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and update the sum-range token in RPN array while creation of
the RPN array itself.
+ Adds unit tests.
+ In ScParallelismTest unit test, enable threading in its setUp()
method and restore the original setting in tearDown().
Change-Id: Iee9b7759210a82950181a418eb92766a6cf891fc
Reviewed-on: https://gerrit.libreoffice.org/49465
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
collection of heuristics to look for local variables that are never read
from i.e. do not contribute to the surrounding logic
This is an expensive plugin, since it walks up the parent tree,
so it is off by default.
Change-Id: Ib8ba292241bd16adf299e8bba4502cb473513a06
Reviewed-on: https://gerrit.libreoffice.org/52450
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and update sallogareas plugin to enforce this
Change-Id: Id0782c8a1f619372e10d931aec3c6a4743a4c86a
Reviewed-on: https://gerrit.libreoffice.org/52249
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and fix fallout
Change-Id: Id06bf31f2075111e426ba40c84c885ae70697bee
Reviewed-on: https://gerrit.libreoffice.org/52206
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
|
|
... as indicated by m_pBtnMatrix hidden for reportdesign.
tdf#116468 cleansing.
Change-Id: I1727dcc9875f0728805bac63cc6c1f1533394c6c
|
|
It doesn't have any, and worse, there's no currently active OpCode
symbol map that could be used to create strings from tokens.
Regression from
commit bf1ffc64128f5b96d7c2fcc7adc81cbc25e232fd
Date: Sun Jul 16 15:18:09 2017 +0200
FormulaDlg_Impl::UpdateValues: evaluate in force-array context if present
Change-Id: I77c2035fdd0926f67fcc85e7090f30485b4e312c
|
|
Change-Id: I56e1bace8ab8312524e681d3865a1a89d523812d
Reviewed-on: https://gerrit.libreoffice.org/51459
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
In particular if in any ForceArray context use the matrix result
instead of the array of references list.
Change-Id: I72328a690760637f6d31fadba447641c64711a67
|
|
Change-Id: I075e29173945200854f2ef8e420867871659766a
Reviewed-on: https://gerrit.libreoffice.org/50446
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
part of removing ColorData
Change-Id: If31b5b88545529863377e9a178f45f4516bf6cbb
Reviewed-on: https://gerrit.libreoffice.org/50345
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
... instead of a low precedence unary operator with an odd
behaviour. This wasn't documented nor specified but maybe needed
for old(est) binary file format compatibility. Generate an error
for anything else than a context of a function with one argument.
There might be some corner cases of documents where some old usage
leads to error now, of which some may have worked by accident, but
some not as intended.
Related, the internal not exposed (but available) NEG was classified
similar as a unary operator but corectly handled as function at all
places. Classified as an ordinary 1-parameter function as well.
Change-Id: I3d84a6382243c8d64313e37346f81c857e71be95
Reviewed-on: https://gerrit.libreoffice.org/50055
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Eike Rathke <erack@redhat.com>
|
|
because I
(a) forgot to insert parentheses which changes the meaning of some expressions and
(b) I now use the AdjustFoo calls when changing unary operations, which reads much better
This reverts commit bf8a6cacd06d7c1961b5db8cc79ee4bbdb342e43.
Change-Id: I4b5a9bf0c38ee1b57af91e6b7f184f1e8807f6f7
Reviewed-on: https://gerrit.libreoffice.org/49843
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I622da8a0c096c74efd97326451c4576b230f0483
Reviewed-on: https://gerrit.libreoffice.org/49701
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I76d50754a660e006e5913b89caa491cc21d6f9dc
Reviewed-on: https://gerrit.libreoffice.org/49588
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I295e842da0192c21d318357caa574062085acd9d
|
|
Change-Id: I0a6f4eaf49282a6aa74b24ea62736065d1786f58
|
|
with something like
git grep -nP '(.*)\s*<\s*(.*)\s*\?\s*\g1\s*:\s*\g2' -- *.?xx
Change-Id: Id5078b35961847feb78a66204fdb7598ee63fd23
Note: we also convert a>b?b:a
Reviewed-on: https://gerrit.libreoffice.org/47736
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
auto-rewrite with <https://gerrit.libreoffice.org/#/c/47798/> "Enable
loplugin:cstylecast for some more cases" plus
solenv/clang-format/reformat-formatted-files
Change-Id: I924954aefd471386805082f11a2d33db2746c49a
|
|
This way, it is possible to have all the strings translated in dialogs even
when different users use different languages. [It was already possible
to have different languages previously, but not everything in the dialog has
switched - like the buttons at the bottom of the dialogs etc.]
Change-Id: I29a5ae6d31a370eec60397884200b684ec1bf5b9
Reviewed-on: https://gerrit.libreoffice.org/46417
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/46979
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: Id69dcfde5c8b5d39c272916e7c1bcc649f720888
Reviewed-on: https://gerrit.libreoffice.org/46829
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Icab5ded8bccdb95f79b3fa35ea164f47919c68fa
Reviewed-on: https://gerrit.libreoffice.org/46339
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
|