configure.ac | 2 desktop/scripts/soffice.sh | 4 - external/gpgmepp/UnpackedTarball_gpgmepp.mk | 1 external/gpgmepp/gpgme.git-4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e.patch.1 | 32 ++++++++++ solenv/gdb/boost/util/printing.py | 2 solenv/gdb/libreoffice/sw.py | 6 + solenv/gdb/libreoffice/util/printing.py | 2 sw/source/core/txtnode/atrfld.cxx | 2 8 files changed, 45 insertions(+), 6 deletions(-)
New commits: commit 249743955cff13fdbfd7e70a6688b02651cc3e65 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Mon Feb 14 16:18:37 2022 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Tue Feb 15 11:30:19 2022 +0100 tdf#146848 sw: fix assert about input field in undo nodes These should not be updated. soffice.bin: sw/source/core/txtnode/atrfld.cxx:713: void SwTextInputField::UpdateTextNodeContent(const rtl::OUString&): Assertion `IsFieldInDoc() && "<SwTextInputField::UpdateTextNodeContent(..)> - misusage as Input Field is not in document content."' failed. 3 SwTextInputField::UpdateTextNodeContent(rtl::OUString const&) 4 SwTextInputField::NotifyContentChange(SwFormatField&) at sw/source/core/txtnode/atrfld.cxx:669 5 SwTextField::ExpandTextField(bool) const 6 SwFormatField::UpdateTextNode(SfxPoolItem const*, SfxPoolItem const*) at sw/source/core/txtnode/atrfld.cxx:407 7 SwFormatField::SwClientNotify(SwModify const&, SfxHint const&) 10 SwFieldType::UpdateFields() (this=0x7f7ff2d654b0) at sw/source/core/fields/fldbas.cxx:220 11 sw::DocumentFieldsManager::UpdateFields(bool) 12 SwFEShell::Paste(SwDoc&, bool) at sw/source/core/frmedt/fecopy.cxx:1117 Somehow this causes testTdf139843 to go from 7 to 6 pages, but opening the bugdoc shows it as 6 pages too, not sure what's going on there. Change-Id: Ie25b2b2c4d8fd262850da31cbade5e121e9ec361 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129919 Tested-by: Michael Stahl <michael.st...@allotropia.de> Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit 71e8a947753d359bd5b4d1174f4d6332eaf4a309) diff --git a/sw/source/core/txtnode/atrfld.cxx b/sw/source/core/txtnode/atrfld.cxx index ebcdced03c52..ebbf24138cb2 100644 --- a/sw/source/core/txtnode/atrfld.cxx +++ b/sw/source/core/txtnode/atrfld.cxx @@ -254,7 +254,7 @@ void SwFormatField::Modify( const SfxPoolItem* pOld, const SfxPoolItem* pNew ) return; } - if( !mpTextField ) + if (!IsFieldInDoc()) return; // don't do anything, especially not expand! commit 2567f1eb9d929efec0a4aadfe498cb6a010cf086 Author: Michael Stahl <michael.st...@allotropia.de> AuthorDate: Thu Dec 2 11:57:40 2021 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Mon Feb 14 18:54:35 2022 +0100 gdb: BigPtrArrayPrinter gets confused by libstdc++ std::unique_ptr It looks like this in libstdc++: <BigPtrArray> = { m_ppInf = { _M_t = { <std::__uniq_ptr_impl<BlockInfo*, std::default_delete<BlockInfo* []> >> = { _M_t = { <std::_Tuple_impl<0, BlockInfo**, std::default_delete<BlockInfo* []> >> = { <std::_Tuple_impl<1, std::default_delete<BlockInfo* []> >> = { <std::_Head_base<1, std::default_delete<BlockInfo* []>, true>> = { _M_head_impl = {<No data fields>} }, <No data fields>}, <std::_Head_base<0, BlockInfo**, false>> = { _M_head_impl = 0x567fd20 }, <No data fields>}, <No data fields>} }, <No data fields>} }, Note there are 2 _M_head_impl members, and somehow gdb 11.1-2.fc34 picks the wrong one. A manual cast to std::_Head_base<0, BlockInfo**, false> seems to help. Change-Id: I1332c2fc6eb2661d417fd92a73aed977bbb1dcea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126220 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.st...@allotropia.de> (cherry picked from commit c9267ca4fa7fa94a1bf79320bec54428a6ad4804) diff --git a/solenv/gdb/libreoffice/sw.py b/solenv/gdb/libreoffice/sw.py index e170709fb79c..7a5ce193684b 100644 --- a/solenv/gdb/libreoffice/sw.py +++ b/solenv/gdb/libreoffice/sw.py @@ -8,6 +8,7 @@ # import six +import gdb from libreoffice.util import printing class SwPositionPrinter(object): @@ -194,7 +195,10 @@ class BigPtrArrayPrinter(object): class _iterator(six.Iterator): def __init__(self, array): - self.blocks = array['m_ppInf']['_M_t']['_M_t']['_M_head_impl'] + # libstdc++ unique_ptr is a std::tuple which contains multiple + # _M_head_impl members and gdb may pick the wrong one by default + # so have to manually cast it to the one that contains the array + self.blocks = array['m_ppInf']['_M_t']['_M_t'].cast(gdb.lookup_type("std::_Head_base<0, BlockInfo**, false>"))['_M_head_impl'] self.count = array['m_nSize'] self.pos = 0 self.block_count = array['m_nBlock'] commit 966bf60beed0e745c748f75e3b021300c7dbe497 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Thu Sep 24 09:53:24 2020 +0200 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Mon Feb 14 17:45:14 2022 +0100 Fix Python deprecation warnings I noticed these "DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.9 it will stop working" now when running tests with CPPUNITTRACE='gdb --args' on Fedora 32. Change-Id: If263dacb9df5c1fffd2be2418e13e69b96070c77 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103294 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/solenv/gdb/boost/util/printing.py b/solenv/gdb/boost/util/printing.py index 1d5d0bac9fc6..4088f3a3fa3b 100644 --- a/solenv/gdb/boost/util/printing.py +++ b/solenv/gdb/boost/util/printing.py @@ -19,7 +19,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. -from collections import Mapping +from collections.abc import Mapping import gdb import re import six diff --git a/solenv/gdb/libreoffice/util/printing.py b/solenv/gdb/libreoffice/util/printing.py index 9cbae3080a64..7ce29899355a 100644 --- a/solenv/gdb/libreoffice/util/printing.py +++ b/solenv/gdb/libreoffice/util/printing.py @@ -7,7 +7,7 @@ # file, You can obtain one at http://mozilla.org/MPL/2.0/. # -from collections import Mapping +from collections.abc import Mapping import gdb import re import six commit e9036e23d82ca68706c258d32cfb186f9615930b Author: Michael Stahl <michael.st...@cib.de> AuthorDate: Thu Nov 19 13:35:28 2020 +0100 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Mon Feb 14 15:57:09 2022 +0100 desktop: rr --ignore-nested was renamed to --nested=ignore Change-Id: Id1c1789c24b8eec27db0b24e1e43e2eb7d562509 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106291 Reviewed-by: Michael Stahl <michael.st...@cib.de> Tested-by: Jenkins (cherry picked from commit 1ab938155c875e65470b9f6b3b3ef65885462f7a) diff --git a/desktop/scripts/soffice.sh b/desktop/scripts/soffice.sh index 415ea047361d..021c706f5c78 100755 --- a/desktop/scripts/soffice.sh +++ b/desktop/scripts/soffice.sh @@ -78,8 +78,8 @@ for arg in "$@" $EXTRAOPT ; do case "$arg" in --record) if which rr >/dev/null 2>&1 ; then - # smoketest may already be recorded => use ignore-nested - RRCHECK="rr record --ignore-nested" + # smoketest may already be recorded => ignore nested + RRCHECK="rr record --nested=ignore" checks="c$checks" else echo "Error: Can't find the tool \"rr\", --record option will be ignored." commit 45e6b6a126608dc8d0289b5bc4d2b99e2cc2242b Author: Mike Kaganski <mike.kagan...@collabora.com> AuthorDate: Fri Oct 8 17:06:01 2021 +0300 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Mon Feb 14 13:42:25 2022 +0100 Fix gpgmepp build with glibc posix-io.c: In function '_gpgme_io_spawn': posix-io.c:492:23: error: void value not ignored as it ought to be 492 | while ((i = closefrom (fd)) && errno == EINTR) | ^ make[1]: *** [Makefile:964: posix-io.lo] Error 1 Change-Id: I0e7abc33200ca7436c72e925447e681fd241c6a7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123259 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126265 Tested-by: Thorsten Behrens <thorsten.behr...@allotropia.de> Reviewed-by: Thorsten Behrens <thorsten.behr...@allotropia.de> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126561 Tested-by: Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de> Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126926 diff --git a/external/gpgmepp/UnpackedTarball_gpgmepp.mk b/external/gpgmepp/UnpackedTarball_gpgmepp.mk index 1b0468fc6f23..fc7ed88ac6d6 100644 --- a/external/gpgmepp/UnpackedTarball_gpgmepp.mk +++ b/external/gpgmepp/UnpackedTarball_gpgmepp.mk @@ -33,5 +33,6 @@ $(eval $(call gb_UnpackedTarball_add_patches,gpgmepp, \ external/gpgmepp/gcc9.patch \ external/gpgmepp/version.patch \ external/gpgmepp/ubsan.patch \ + external/gpgmepp/gpgme.git-4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e.patch.1 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/gpgmepp/gpgme.git-4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e.patch.1 b/external/gpgmepp/gpgme.git-4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e.patch.1 new file mode 100644 index 000000000000..067bf5208ba0 --- /dev/null +++ b/external/gpgmepp/gpgme.git-4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e.patch.1 @@ -0,0 +1,32 @@ +From 4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e Mon Sep 17 00:00:00 2001 +From: Jiri Kucera <sanc...@gmail.com> +Date: Sun, 25 Jul 2021 11:35:54 +0200 +Subject: [PATCH] core: Support closefrom also for glibc. + +* src/posix-io.c (_gpgme_io_spawn): Use glibc's closefrom. +-- + +Since 2.34, glibc introduces closefrom (the implementation +follows *BSD standard). + +Signed-off-by: Werner Koch <w...@gnupg.org> +--- + src/posix-io.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/posix-io.c b/src/posix-io.c +index e712ef28..2a3a81fc 100644 +--- a/src/posix-io.c ++++ b/src/posix-io.c +@@ -570,7 +570,7 @@ _gpgme_io_spawn (const char *path, char *const argv[], unsigned int flags, + if (fd_list[i].fd > fd) + fd = fd_list[i].fd; + fd++; +-#ifdef __sun ++#if defined(__sun) || defined(__FreeBSD__) || defined(__GLIBC__) + closefrom (fd); + max_fds = fd; + #else /*!__sun */ +-- +2.11.0 + commit f430235c6d9304cf32be41dead2efc0dda9aac21 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Mon May 31 13:30:37 2021 +0200 Commit: Michael Stahl <michael.st...@allotropia.de> CommitDate: Mon Feb 14 13:35:42 2022 +0100 Adapt to hamcrest-2.2-3.fc35.noarch.rpm Change-Id: Ibddfc30a5f0828ab77235ec1155f1c2e1eef24ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116506 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> (cherry picked from commit e6c25186c8584f68b5f8074004556bd855200fff) diff --git a/configure.ac b/configure.ac index a62c131a6d0e..fe48cda5fbdd 100644 --- a/configure.ac +++ b/configure.ac @@ -12118,6 +12118,8 @@ if test "$ENABLE_JAVA" != "" -a "$with_junit" != "no"; then HAMCREST_JAR=/usr/share/lib/java/hamcrest.jar elif test -e /usr/share/java/hamcrest/core.jar; then HAMCREST_JAR=/usr/share/java/hamcrest/core.jar + elif test -e /usr/share/java/hamcrest/hamcrest.jar; then + HAMCREST_JAR=/usr/share/java/hamcrest/hamcrest.jar else HAMCREST_JAR=/usr/share/java/hamcrest.jar fi