[arch-commits] Commit in libreoffice-fresh/trunk (PKGBUILD calc-recalculation.diff)
Andreas Radke
andyrtr at archlinux.org
Sat Oct 17 12:55:59 UTC 2020
Date: Saturday, October 17, 2020 @ 12:55:59
Author: andyrtr
Revision: 398495
upgpkg: libreoffice-fresh 7.0.2-2: fix calc recalculation - FS#68181
Added:
libreoffice-fresh/trunk/calc-recalculation.diff
Modified:
libreoffice-fresh/trunk/PKGBUILD
-------------------------+
PKGBUILD | 12 +++++--
calc-recalculation.diff | 70 ++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 79 insertions(+), 3 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2020-10-17 11:35:53 UTC (rev 398494)
+++ PKGBUILD 2020-10-17 12:55:59 UTC (rev 398495)
@@ -12,7 +12,7 @@
pkgname=('libreoffice-fresh-sdk' 'libreoffice-fresh')
_LOver=7.0.2.2
pkgver=7.0.2
-pkgrel=1
+pkgrel=2
arch=('x86_64')
license=('LGPL3')
url="https://www.libreoffice.org/"
@@ -59,7 +59,8 @@
${_additional_source_url2}/185d60944ea767075d27247c3162b3bc-unowinreg.dll
make-pyuno-work-with-system-wide-module-install.diff
soffice-template.desktop.in
- libreoffice-fresh.sh libreoffice-fresh.csh)
+ libreoffice-fresh.sh libreoffice-fresh.csh
+ calc-recalculation.diff)
noextract=(35c94d2df8893241173de1d16b6034c0-swingExSrc.zip
798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip
a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip
@@ -107,7 +108,8 @@
'c463654a73ecfbc242ff109726fb4faecdbfb3d91affafe919b24bea65afb563'
'd0be8099cbee3c9dfda694a828149b881c345b204ab68826f317580aafb50879'
'cd1b25ff390e436c6bffa65c6e12382236e3ccbf8d3aae51b1b59bcaed79fd8a'
- 'de20f36d45f0fecc2d94176dd3ec7226ab07fa8ffb9b0bc73c200349a9273de1')
+ 'de20f36d45f0fecc2d94176dd3ec7226ab07fa8ffb9b0bc73c200349a9273de1'
+ 'a392afabeb1490245a22ec55dab8c475fb29c46e45c8dd9d2090924bdfcf3204')
prepare() {
@@ -128,6 +130,10 @@
# fix not upstreamable pyuno paths - FS#54250
patch -Np1 -i "${srcdir}"/make-pyuno-work-with-system-wide-module-install.diff
+ # fix calc recalculation; FS#68181
+ # https://bugs.documentfoundation.org/show_bug.cgi?id=137248
+ patch -Np1 -i ../calc-recalculation.diff
+
#use the CFLAGS but remove the LibO overridden ones
for i in $CFLAGS; do
case "$i" in
Added: calc-recalculation.diff
===================================================================
--- calc-recalculation.diff (rev 0)
+++ calc-recalculation.diff 2020-10-17 12:55:59 UTC (rev 398495)
@@ -0,0 +1,70 @@
+From 701008631ee257b4c7714ac9e2689c5ecc45bff8 Mon Sep 17 00:00:00 2001
+From: Eike Rathke <erack at redhat.com>
+Date: Tue, 13 Oct 2020 23:56:28 +0200
+Subject: Resolves: tdf#137248 Fix wrong condition breaking non-group interpret
+
+Regression from
+
+ commit 4f36f2ccab6286ec09480caea602c0fa19195736
+ CommitDate: Thu Sep 10 11:15:47 2020 +0200
+
+ detect if a cell still needs interpreting after Interpret()
+
+The bool return from ScFormulaCell::Interpret() does not indicate
+if it was succesful but whether a group interpret was done. As
+both calls here happen in a non-group context bailing out on that
+if false (no group interpret) is wrong. Instead, ask the cell if
+it still needs to be interpreted after having been interpreted.
+
+Change-Id: I40eeeef65e1da3d729cb3fef550620b1ea0a5741
+Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104261
+Tested-by: Jenkins
+Reviewed-by: Eike Rathke <erack at redhat.com>
+(cherry picked from commit 59f86333f3fce091177d1cfb9363aa81686aa497)
+Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104289
+Reviewed-by: Xisco Fauli <xiscofauli at libreoffice.org>
+---
+ sc/source/core/data/column4.cxx | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/sc/source/core/data/column4.cxx b/sc/source/core/data/column4.cxx
+index 73adaf72dd71..950b38766c44 100644
+--- a/sc/source/core/data/column4.cxx
++++ b/sc/source/core/data/column4.cxx
+@@ -1690,14 +1690,14 @@ static bool lcl_InterpretSpan(sc::formula_block::const_iterator& rSpanIter, SCRO
+ ++itSpanStart;
+ for (SCROW nIdx = nSpanStart+1; nIdx <= nSpanEnd; ++nIdx, ++itSpanStart)
+ {
+- if( !(*itSpanStart)->Interpret()) // We know for sure that this cell is dirty so directly call Interpret().
++ (*itSpanStart)->Interpret(); // We know for sure that this cell is dirty so directly call Interpret().
++ if ((*itSpanStart)->NeedsInterpret())
+ {
+ SAL_WARN("sc.core.formulagroup", "Internal error, cell " << (*itSpanStart)->aPos
+ << " failed running Interpret(), not allowing threading");
+ bAllowThreading = false;
+ return bAnyDirty;
+ }
+- assert(!(*itSpanStart)->NeedsInterpret());
+
+ // Allow early exit like above.
+ if ((mxParentGroup && mxParentGroup->mbPartOfCycle) || !rRecursionHelper.AreGroupsIndependent())
+@@ -1804,14 +1804,14 @@ static void lcl_EvalDirty(sc::CellStoreType& rCells, SCROW nRow1, SCROW nRow2, S
+ if( (*itCell)->NeedsInterpret())
+ {
+ bDirtyFlag = true;
+- if(!(*itCell)->Interpret())
++ (*itCell)->Interpret();
++ if ((*itCell)->NeedsInterpret())
+ {
+ SAL_WARN("sc.core.formulagroup", "Internal error, cell " << (*itCell)->aPos
+ << " failed running Interpret(), not allowing threading");
+ bAllowThreading = false;
+ return;
+ }
+- assert(!(*itCell)->NeedsInterpret());
+ }
+ bIsDirty = bIsDirty || bDirtyFlag;
+
+--
+cgit v1.2.1
+
More information about the arch-commits
mailing list