summaryrefslogtreecommitdiff
path: root/0001-rhbz-2171265-Filter-out-all-non-.rdb-files.patch
diff options
context:
space:
mode:
Diffstat (limited to '0001-rhbz-2171265-Filter-out-all-non-.rdb-files.patch')
-rw-r--r--0001-rhbz-2171265-Filter-out-all-non-.rdb-files.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/0001-rhbz-2171265-Filter-out-all-non-.rdb-files.patch b/0001-rhbz-2171265-Filter-out-all-non-.rdb-files.patch
new file mode 100644
index 0000000..1f96f54
--- /dev/null
+++ b/0001-rhbz-2171265-Filter-out-all-non-.rdb-files.patch
@@ -0,0 +1,43 @@
+From feb8b04a0ee86b0146a17393da220ae188babda8 Mon Sep 17 00:00:00 2001
+From: Stephan Bergmann <sbergman@redhat.com>
+Date: Wed, 22 Mar 2023 17:19:49 +0100
+Subject: [PATCH] rhbz#2171265 Filter out all non *.rdb files
+
+In that rhbz issue ("Libreoffice cannot start"), it looks like some junk file
+named /usr/lib64/libreoffice/program/services/services.rdb;63ddcd86 caused
+soffice.bin to crash early, without any information (cf.
+a1faf14f74a62ea76141115538d7d30d90c9eeb6 "rhbz#2171265 Report fatal
+InitApplicationServiceManager failures more reliably"). So, following up on
+b8c7548527f5fc14fe8fcbe74a749c7e3c10d385 "ignore backup files in services/
+directory to avoid debugging grief", extend the set of ignored files to anything
+starting with "." or not ending in ".rdb" (in any case).
+
+Change-Id: I154750465d2128b3ff6493f4ab606072dda61503
+Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149328
+Tested-by: Jenkins
+Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
+---
+ cppuhelper/source/paths.cxx | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/cppuhelper/source/paths.cxx b/cppuhelper/source/paths.cxx
+index ece7650ded4c..dd8fe56df2bf 100644
+--- a/cppuhelper/source/paths.cxx
++++ b/cppuhelper/source/paths.cxx
+@@ -99,9 +99,11 @@ bool cppu::nextDirectoryItem(osl::Directory & directory, OUString * url) {
+ "Cannot stat in directory");
+ }
+ if (stat.getFileType() != osl::FileStatus::Directory) { //TODO: symlinks
+- // Ignore backup files:
++ // Ignore backup and spurious junk files:
+ OUString name(stat.getFileName());
+- if (!(name.match(".") || name.endsWith("~"))) {
++ if (name.match(".") || !name.endsWithIgnoreAsciiCase(u".rdb")) {
++ SAL_WARN("cppuhelper", "ignoring <" << stat.getFileURL() << ">");
++ } else {
+ *url = stat.getFileURL();
+ return true;
+ }
+--
+2.40.0
+