libreoffice: 7.5.0.1 -> 7.5.0.3

This commit is contained in:
Tim Biermann 2023-01-27 22:51:06 +01:00
parent 0be6b455ea
commit 36122b3855
Signed by: tb
GPG Key ID: 42F8B4E30B673606
5 changed files with 2817 additions and 5 deletions

View File

@ -1,11 +1,12 @@
untrusted comment: verify with /etc/ports/contrib.pub
RWSagIOpLGJF3wkDVrYto817+BEWUfdfuQDi/QGU6/pqVdsS9NJTwaMbDdJ3pLL/AVp7uZyTBV0G9q8GA+5YxLLobJ5jdWEBkwo=
SHA256 (Pkgfile) = 8286f6c33f7e23171d04ca8eebb7f0ff6731cacb39567a99721e28761aa0ac51
RWSagIOpLGJF36fbGqybciOFnEQjXMeQGyTsx866wfcnCKHd0ftYv9SXmHf58/E3d5U5jZFqG3PMexy9UcTW5T76MQc5W/7oww8=
SHA256 (Pkgfile) = f262b0fec9a1c2acf393b7153591635c5060c77492a3638235668293e324bc4e
SHA256 (.footprint) = 3e6ae8e1792f59bd1f8ab29f6acb9df338de87141411f2db0d6374050a7f1057
SHA256 (libreoffice-7.5.0.1.tar.xz) = 677eff537dde9a5d0637ed68cc573ba97aa9c619dfb39e32e167777f680dc6b3
SHA256 (libreoffice-dictionaries-7.5.0.1.tar.xz) = af306730e93b6e4936147d0af3bda58d7725e8af4cd54b627aae4cd47e46a5a6
SHA256 (libreoffice-7.5.0.3.tar.xz) = f5120fa3ae80a7deb08150038a6e78335bcab578bd7c41ddc733c2057977003b
SHA256 (libreoffice-dictionaries-7.5.0.3.tar.xz) = a8eb1e2df14e504d43a43ac8ee0f436361f065fb5e359f9fb58125275ea41242
SHA256 (185d60944ea767075d27247c3162b3bc-unowinreg.dll) = eafde646a7dbe46d20c291685b0beac2382174d78d66ee990e229a1bf6e6cec6
SHA256 (0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz) = 983941d31ee8d366085cadf28db75eb1f5cb03ba1e5853b98f12f7f51c63b776
SHA256 (dtoa-20180411.tgz) = 0082d0684f7db6f62361b76c4b7faba19e0c7ce5cb8e36c4b65fea8281e711b4
SHA256 (pdfium-5408.tar.bz2) = 7db59b1e91f2bc0ab4c5e19d1a4f881e6a47dbb0d3b7e980a7358225b12a0f35
SHA256 (mdds.patch) = 0ef8529df9b808b5e4c856ea98c56f9d1d6b7653c21635d32b163035e5f7e39d
SHA256 (makefile.in.patch) = b4889affa4d2f8dac4e3c16c0a142fd0d403ecbb7a1c00ed593128dd613b737a

View File

@ -5,7 +5,7 @@
# Optional: avahi coin-or-mp cups gpgme kio lpsolve mariadb openldap postgresql python3-lxml qt5 sane valgrind
name=libreoffice
version=7.5.0.1
version=7.5.0.3
release=1
pdfiumversion=5408
source=(https://downloadarchive.documentfoundation.org/libreoffice/old/$version/src/$name-$version.tar.xz
@ -16,6 +16,7 @@ source=(https://downloadarchive.documentfoundation.org/libreoffice/old/$version/
#https://dev-www.libreoffice.org/src/skia-m90-45c57e116ee0ce214bdf78405a4762722e4507d9.tar.xz
https://dev-www.libreoffice.org/src/pdfium-$pdfiumversion.tar.bz2
#https://dev-www.libreoffice.org/src/libcmis-0.5.2.tar.xz
mdds.patch
makefile.in.patch)
# unpack_source() {{{
@ -49,6 +50,7 @@ build() {
cd $name-$version
patch -Np1 -i $SRC/mdds.patch
patch -Np1 -i $SRC/makefile.in.patch
sed -i 's:application/pdf;::g' sysui/desktop/menus/draw.desktop
sed -i 's:text/plain;::g' sysui/desktop/menus/writer.desktop

129
libreoffice/foo Normal file
View File

@ -0,0 +1,129 @@
From 5de1d0472b319e9d48972eb067fd8189507fa640 Mon Sep 17 00:00:00 2001
From: Noel Grandin <noelgrandin@gmail.com>
Date: Tue, 3 Jan 2023 20:19:56 +0200
Subject: use sal_uInt8 for maMatFlag
which is way more cache-dense than double
Change-Id: I04503eb3a4054cce5312a7a0048c9b6679a8fd16
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145018
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
---
sc/source/core/tool/scmatrix.cxx | 34 ++++++++++++++++++++--------------
1 file changed, 20 insertions(+), 14 deletions(-)
(limited to 'sc/source/core/tool/scmatrix.cxx')
diff --git a/sc/source/core/tool/scmatrix.cxx b/sc/source/core/tool/scmatrix.cxx
index f5d04bdb3fb9..8afeb796b35e 100644
--- a/sc/source/core/tool/scmatrix.cxx
+++ b/sc/source/core/tool/scmatrix.cxx
@@ -64,10 +64,18 @@ struct matrix_trait
typedef mdds::mtv::custom_block_func1<sc::string_block> element_block_func;
};
+struct matrix_flag_trait
+{
+ typedef sc::string_block string_element_block;
+ typedef mdds::mtv::uint8_element_block integer_element_block;
+
+ typedef mdds::mtv::custom_block_func1<sc::string_block> element_block_func;
+};
}
typedef mdds::multi_type_matrix<matrix_trait> MatrixImplType;
+typedef mdds::multi_type_matrix<matrix_flag_trait> MatrixFlagImplType;
namespace {
@@ -218,16 +226,14 @@ Comp CompareMatrixElemFunc<Comp>::maComp;
}
-/* TODO: it would be good if mdds had get/set<sal_uInt8> additionally to
- * get/set<bool>, we're abusing double here. */
-typedef double TMatFlag;
-const TMatFlag SC_MATFLAG_EMPTYRESULT = 1.0;
-const TMatFlag SC_MATFLAG_EMPTYPATH = 2.0;
+typedef uint8_t TMatFlag;
+const TMatFlag SC_MATFLAG_EMPTYRESULT = 1;
+const TMatFlag SC_MATFLAG_EMPTYPATH = 2;
class ScMatrixImpl
{
MatrixImplType maMat;
- MatrixImplType maMatFlag;
+ MatrixFlagImplType maMatFlag;
ScInterpreter* pErrorInterpreter;
public:
@@ -706,7 +712,7 @@ svl::SharedString ScMatrixImpl::GetString( SvNumberFormatter& rFormatter, SCSIZE
return maMat.get_string(aPos);
case mdds::mtm::element_empty:
{
- if (maMatFlag.get_numeric(nR, nC) != SC_MATFLAG_EMPTYPATH)
+ if (maMatFlag.get<uint8_t>(nR, nC) != SC_MATFLAG_EMPTYPATH)
// not an empty path.
return svl::SharedString::getEmptyString();
@@ -769,8 +775,8 @@ ScMatrixValue ScMatrixImpl::Get(SCSIZE nC, SCSIZE nR) const
case mdds::mtm::element_empty:
aVal.nType = ScMatValType::Empty;
break;
- case mdds::mtm::element_numeric:
- aVal.nType = maMatFlag.get<TMatFlag>(nR, nC)
+ case mdds::mtm::element_integer:
+ aVal.nType = maMatFlag.get<uint8_t>(nR, nC)
== SC_MATFLAG_EMPTYPATH ? ScMatValType::EmptyPath : ScMatValType::Empty;
break;
default:
@@ -816,7 +822,7 @@ bool ScMatrixImpl::IsEmpty( SCSIZE nC, SCSIZE nR ) const
// but not an 'empty path' element.
ValidColRowReplicated( nC, nR );
return maMat.get_type(nR, nC) == mdds::mtm::element_empty &&
- maMatFlag.get_numeric(nR, nC) != SC_MATFLAG_EMPTYPATH;
+ maMatFlag.get_integer(nR, nC) != SC_MATFLAG_EMPTYPATH;
}
bool ScMatrixImpl::IsEmptyCell( SCSIZE nC, SCSIZE nR ) const
@@ -834,7 +840,7 @@ bool ScMatrixImpl::IsEmptyResult( SCSIZE nC, SCSIZE nR ) const
// 'empty' or 'empty cell' or 'empty path' element.
ValidColRowReplicated( nC, nR );
return maMat.get_type(nR, nC) == mdds::mtm::element_empty &&
- maMatFlag.get_numeric(nR, nC) == SC_MATFLAG_EMPTYRESULT;
+ maMatFlag.get_integer(nR, nC) == SC_MATFLAG_EMPTYRESULT;
}
bool ScMatrixImpl::IsEmptyPath( SCSIZE nC, SCSIZE nR ) const
@@ -842,7 +848,7 @@ bool ScMatrixImpl::IsEmptyPath( SCSIZE nC, SCSIZE nR ) const
// Flag must indicate an 'empty path' element.
if (ValidColRowOrReplicated( nC, nR ))
return maMat.get_type(nR, nC) == mdds::mtm::element_empty &&
- maMatFlag.get_numeric(nR, nC) == SC_MATFLAG_EMPTYPATH;
+ maMatFlag.get_integer(nR, nC) == SC_MATFLAG_EMPTYPATH;
else
return true;
}
@@ -973,7 +979,7 @@ void ScMatrixImpl::PutEmptyResultVector( SCSIZE nCount, SCSIZE nC, SCSIZE nR )
{
maMat.set_empty(nR, nC, nCount);
// Flag to indicate that this is 'empty result', not 'empty' or 'empty path'.
- std::vector<TMatFlag> aVals(nCount, SC_MATFLAG_EMPTYRESULT);
+ std::vector<uint8_t> aVals(nCount, SC_MATFLAG_EMPTYRESULT);
maMatFlag.set(nR, nC, aVals.begin(), aVals.end());
}
else
@@ -988,7 +994,7 @@ void ScMatrixImpl::PutEmptyPathVector( SCSIZE nCount, SCSIZE nC, SCSIZE nR )
{
maMat.set_empty(nR, nC, nCount);
// Flag to indicate 'empty path'.
- std::vector<TMatFlag> aVals(nCount, SC_MATFLAG_EMPTYPATH);
+ std::vector<uint8_t> aVals(nCount, SC_MATFLAG_EMPTYPATH);
maMatFlag.set(nR, nC, aVals.begin(), aVals.end());
}
else
--
cgit v1.2.1

2680
libreoffice/mdds.patch Normal file

File diff suppressed because it is too large Load Diff

BIN
libreoffice/tho Normal file

Binary file not shown.