parent
9e12169f17
commit
4ea8a1bc9a
@ -1,76 +0,0 @@
|
|||||||
From 428e59f229fac1470b7c1cb240f42149843f5409 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Stephan Bergmann <sbergman@redhat.com>
|
|
||||||
Date: Wed, 26 Apr 2023 11:34:42 +0200
|
|
||||||
Subject: [PATCH] Backport fix for test that started to fail with libxml2
|
|
||||||
2.10.4
|
|
||||||
|
|
||||||
This is a backport of the relevant part of
|
|
||||||
91fcb290ab0cc26a8ec584da9610f553fd27ac97 "libxml2: upgrade to release 2.10.4"
|
|
||||||
from libreoffice-7-5-3.
|
|
||||||
|
|
||||||
I had seen builds of LibreOffice 7.5.2 on Flathub start to fail now after
|
|
||||||
<https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/commit/f8fe772fe3134e95d8d0a17a225a0453bbbc1e86>
|
|
||||||
"Update elements/components/libxml2.bst to v2.10.4-0", with the same symptoms as
|
|
||||||
described for the backported fix, e.g.
|
|
||||||
(<https://buildbot.flathub.org/#/builders/26/builds/4650>),
|
|
||||||
|
|
||||||
> xmltesttools.cxx:188:Assertion
|
|
||||||
> Test name: testReqIfTable::Import_Export
|
|
||||||
> equality assertion failed
|
|
||||||
> - Expected: 1
|
|
||||||
> - Actual : 0
|
|
||||||
> - In <file:///tmp/lu6859867e7nps.tmp>, XPath '/html/body/div/table/tr/th' number of nodes is incorrect
|
|
||||||
> Failures !!!
|
|
||||||
> Run: 81 Failure total: 1 Failures: 1 Errors: 0
|
|
||||||
> Error: a unit test failed, please do one of:
|
|
||||||
> make CppunitTest_sw_htmlexport CPPUNITTRACE="gdb --args"
|
|
||||||
> # for interactive debugging on Linux
|
|
||||||
> make CppunitTest_sw_htmlexport VALGRIND=memcheck
|
|
||||||
> # for memory checking
|
|
||||||
> make CppunitTest_sw_htmlexport DEBUGCPPUNIT=TRUE
|
|
||||||
> # for exception catching
|
|
||||||
> You can limit the execution to just one particular test by:
|
|
||||||
> make CPPUNIT_TEST_NAME="testXYZ" ...above mentioned params...
|
|
||||||
> make[1]: *** [/run/build/libreoffice/solenv/gbuild/CppunitTest.mk:121: /run/build/libreoffice/workdir/CppunitTest/sw_htmlexport.test] Error 1
|
|
||||||
|
|
||||||
Change-Id: I9ffc01f8b8af1f43cf0d65be404787e300655c02
|
|
||||||
---
|
|
||||||
sw/qa/extras/htmlexport/htmlexport.cxx | 16 ++++++++++++----
|
|
||||||
1 file changed, 12 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx b/sw/qa/extras/htmlexport/htmlexport.cxx
|
|
||||||
index a8cc4d2cef04..d78e35c1413a 100644
|
|
||||||
--- a/sw/qa/extras/htmlexport/htmlexport.cxx
|
|
||||||
+++ b/sw/qa/extras/htmlexport/htmlexport.cxx
|
|
||||||
@@ -777,16 +777,24 @@ DECLARE_HTMLEXPORT_TEST(testReqIfJpgImg, "reqif-jpg-img.xhtml")
|
|
||||||
|
|
||||||
DECLARE_HTMLEXPORT_TEST(testReqIfTable, "reqif-table.xhtml")
|
|
||||||
{
|
|
||||||
- htmlDocUniquePtr pDoc = parseHtml(maTempFile);
|
|
||||||
+ SvMemoryStream aStream;
|
|
||||||
+ WrapReqifFromTempFile(aStream);
|
|
||||||
+ xmlDocUniquePtr pDoc = parseXmlStream(&aStream);
|
|
||||||
CPPUNIT_ASSERT(pDoc);
|
|
||||||
|
|
||||||
// <div> was missing, so the XHTML fragment wasn't a valid
|
|
||||||
// xhtml.BlkStruct.class type anymore.
|
|
||||||
- assertXPath(pDoc, "/html/body/div/table/tr/th", 1);
|
|
||||||
+ assertXPath(pDoc,
|
|
||||||
+ "/reqif-xhtml:html/reqif-xhtml:div/reqif-xhtml:table/reqif-xhtml:tr/reqif-xhtml:th",
|
|
||||||
+ 1);
|
|
||||||
// Make sure that the cell background is not written using CSS.
|
|
||||||
- assertXPathNoAttribute(pDoc, "/html/body/div/table/tr/th", "style");
|
|
||||||
+ assertXPathNoAttribute(
|
|
||||||
+ pDoc, "/reqif-xhtml:html/reqif-xhtml:div/reqif-xhtml:table/reqif-xhtml:tr/reqif-xhtml:th",
|
|
||||||
+ "style");
|
|
||||||
// The attribute was present, which is not valid in reqif-xhtml.
|
|
||||||
- assertXPathNoAttribute(pDoc, "/html/body/div/table/tr/th", "bgcolor");
|
|
||||||
+ assertXPathNoAttribute(
|
|
||||||
+ pDoc, "/reqif-xhtml:html/reqif-xhtml:div/reqif-xhtml:table/reqif-xhtml:tr/reqif-xhtml:th",
|
|
||||||
+ "bgcolor");
|
|
||||||
}
|
|
||||||
|
|
||||||
DECLARE_HTMLEXPORT_TEST(testReqIfTable2, "reqif-table2.odt")
|
|
||||||
--
|
|
||||||
2.40.0
|
|
||||||
|
|
@ -1,178 +0,0 @@
|
|||||||
From e1464f8601289630d3fd4aed2f4163c07163a52d Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
||||||
Date: Fri, 10 Mar 2023 11:41:45 +0000
|
|
||||||
Subject: [PATCH] Use sifr and sifr_dark for gnome
|
|
||||||
|
|
||||||
explicitly use:
|
|
||||||
breeze/breeze_dark for plasma
|
|
||||||
sukapura/sukapura_dark for macOS
|
|
||||||
colibre/colibre_dark for win
|
|
||||||
|
|
||||||
originally we only had one dark theme so in a dark theme there was only
|
|
||||||
one option available, but there's now a bunch to choose from.
|
|
||||||
|
|
||||||
https://pagure.io/fedora-workstation/issue/361
|
|
||||||
|
|
||||||
"Fedora Workstation currently uses the rather outdated-looking
|
|
||||||
Elementary icon theme for LibreOffice, instead of the Sifr icon theme
|
|
||||||
which was designed to fit in with GNOME's icons. The Sifr theme saw a
|
|
||||||
nice update with LibreOffice 7.5, the version being shipped in Fedora
|
|
||||||
Linux 38, which makes the icons fit better with the current GNOME design
|
|
||||||
language.
|
|
||||||
|
|
||||||
Also, in Fedora Workstation 38, if you change GNOME to dark mode,
|
|
||||||
LibreOffice's icons change from the colourful Elementary icon set to the
|
|
||||||
monochrome Breeze Dark set, which is a jarring change. The Sifr icons
|
|
||||||
have both a light and dark theme, so it would be much more conistent to
|
|
||||||
use them. It's also worth noting that the Breeze icons were designed for
|
|
||||||
KDE Plasma, not GNOME, so they look even more out of place than the
|
|
||||||
Elementary icons."
|
|
||||||
|
|
||||||
Change-Id: Ic37bbe8e7ad754ab070ead06dc0b006c6ccf3adb
|
|
||||||
---
|
|
||||||
vcl/inc/IconThemeSelector.hxx | 8 ++--
|
|
||||||
vcl/qa/cppunit/app/test_IconThemeSelector.cxx | 6 +--
|
|
||||||
vcl/source/app/IconThemeSelector.cxx | 42 +++++++++++++------
|
|
||||||
3 files changed, 36 insertions(+), 20 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/vcl/inc/IconThemeSelector.hxx b/vcl/inc/IconThemeSelector.hxx
|
|
||||||
index 8dab03d3a8d2..0bfbf2034858 100644
|
|
||||||
--- a/vcl/inc/IconThemeSelector.hxx
|
|
||||||
+++ b/vcl/inc/IconThemeSelector.hxx
|
|
||||||
@@ -77,12 +77,12 @@ private:
|
|
||||||
static OUString
|
|
||||||
ReturnFallback(const std::vector<IconThemeInfo>& installedThemes);
|
|
||||||
|
|
||||||
- /** The name of the icon theme which is used as fallback */
|
|
||||||
- static constexpr OUStringLiteral FALLBACK_ICON_THEME_ID = u"colibre";
|
|
||||||
-
|
|
||||||
+ /** The name of the icon themes which are used as fallbacks */
|
|
||||||
+ static constexpr OUStringLiteral FALLBACK_LIGHT_ICON_THEME_ID = u"colibre";
|
|
||||||
+ static constexpr OUStringLiteral FALLBACK_DARK_ICON_THEME_ID = u"colibre_dark";
|
|
||||||
|
|
||||||
static OUString
|
|
||||||
- GetIconThemeForDesktopEnvironment(const OUString& desktopEnvironment);
|
|
||||||
+ GetIconThemeForDesktopEnvironment(const OUString& desktopEnvironment, bool bPreferDarkIconTheme);
|
|
||||||
|
|
||||||
OUString mPreferredIconTheme;
|
|
||||||
bool mUseHighContrastTheme;
|
|
||||||
diff --git a/vcl/qa/cppunit/app/test_IconThemeSelector.cxx b/vcl/qa/cppunit/app/test_IconThemeSelector.cxx
|
|
||||||
index 94d53b43d309..8d1aea0c3889 100644
|
|
||||||
--- a/vcl/qa/cppunit/app/test_IconThemeSelector.cxx
|
|
||||||
+++ b/vcl/qa/cppunit/app/test_IconThemeSelector.cxx
|
|
||||||
@@ -85,7 +85,7 @@ IconThemeSelectorTest::ElementaryIsReturnedForGnomeDesktop()
|
|
||||||
std::vector<vcl::IconThemeInfo> themes = GetFakeInstalledThemes();
|
|
||||||
vcl::IconThemeSelector s;
|
|
||||||
OUString r = s.SelectIconThemeForDesktopEnvironment(themes, "gnome");
|
|
||||||
- CPPUNIT_ASSERT_EQUAL_MESSAGE("'elementary' theme is returned for gnome desktop", OUString("elementary"), r);
|
|
||||||
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("'sifr' theme is returned for gnome desktop", OUString("sifr"), r);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
@@ -96,7 +96,7 @@ IconThemeSelectorTest::ThemeIsOverriddenByPreferredTheme()
|
|
||||||
s.SetPreferredIconTheme(preferred, false);
|
|
||||||
std::vector<vcl::IconThemeInfo> themes = GetFakeInstalledThemes();
|
|
||||||
OUString selected = s.SelectIconThemeForDesktopEnvironment(themes, "gnome");
|
|
||||||
- CPPUNIT_ASSERT_EQUAL_MESSAGE("'elementary' theme is overridden by breeze", preferred, selected);
|
|
||||||
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("'sifr' theme is overridden by breeze", preferred, selected);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
@@ -148,7 +148,7 @@ IconThemeSelectorTest::FallbackThemeIsReturnedForEmptyInput()
|
|
||||||
vcl::IconThemeSelector s;
|
|
||||||
OUString selected = s.SelectIconTheme(std::vector<vcl::IconThemeInfo>(), "colibre");
|
|
||||||
CPPUNIT_ASSERT_EQUAL_MESSAGE("fallback is returned for empty input",
|
|
||||||
- OUString(vcl::IconThemeSelector::FALLBACK_ICON_THEME_ID), selected);
|
|
||||||
+ OUString(vcl::IconThemeSelector::FALLBACK_LIGHT_ICON_THEME_ID), selected);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
diff --git a/vcl/source/app/IconThemeSelector.cxx b/vcl/source/app/IconThemeSelector.cxx
|
|
||||||
index fd32008d9414..ee30e577f3f5 100644
|
|
||||||
--- a/vcl/source/app/IconThemeSelector.cxx
|
|
||||||
+++ b/vcl/source/app/IconThemeSelector.cxx
|
|
||||||
@@ -51,30 +51,50 @@ IconThemeSelector::IconThemeSelector()
|
|
||||||
}
|
|
||||||
|
|
||||||
/*static*/ OUString
|
|
||||||
-IconThemeSelector::GetIconThemeForDesktopEnvironment(const OUString& desktopEnvironment)
|
|
||||||
+IconThemeSelector::GetIconThemeForDesktopEnvironment(const OUString& desktopEnvironment, bool bPreferDarkIconTheme)
|
|
||||||
{
|
|
||||||
if (comphelper::LibreOfficeKit::isActive())
|
|
||||||
- return "colibre";
|
|
||||||
+ {
|
|
||||||
+ if (!bPreferDarkIconTheme)
|
|
||||||
+ return "colibre";
|
|
||||||
+ else
|
|
||||||
+ return "colibre_dark";
|
|
||||||
+ }
|
|
||||||
|
|
||||||
#ifdef _WIN32
|
|
||||||
(void)desktopEnvironment;
|
|
||||||
- return "colibre";
|
|
||||||
+ if (!bPreferDarkIconTheme)
|
|
||||||
+ return "colibre";
|
|
||||||
+ else
|
|
||||||
+ return "colibre_dark";
|
|
||||||
#else
|
|
||||||
OUString r;
|
|
||||||
if ( desktopEnvironment.equalsIgnoreAsciiCase("plasma5") ||
|
|
||||||
desktopEnvironment.equalsIgnoreAsciiCase("lxqt") ) {
|
|
||||||
- r = "breeze";
|
|
||||||
+ if (!bPreferDarkIconTheme)
|
|
||||||
+ r = "breeze";
|
|
||||||
+ else
|
|
||||||
+ r = "breeze_dark";
|
|
||||||
}
|
|
||||||
else if ( desktopEnvironment.equalsIgnoreAsciiCase("macosx") ) {
|
|
||||||
- r = "sukapura";
|
|
||||||
+ if (!bPreferDarkIconTheme)
|
|
||||||
+ r = "sukapura";
|
|
||||||
+ else
|
|
||||||
+ r = "sukapura_dark";
|
|
||||||
}
|
|
||||||
else if ( desktopEnvironment.equalsIgnoreAsciiCase("gnome") ||
|
|
||||||
desktopEnvironment.equalsIgnoreAsciiCase("mate") ||
|
|
||||||
desktopEnvironment.equalsIgnoreAsciiCase("unity") ) {
|
|
||||||
- r = "elementary";
|
|
||||||
+ if (!bPreferDarkIconTheme)
|
|
||||||
+ r = "sifr";
|
|
||||||
+ else
|
|
||||||
+ r = "sifr_dark";
|
|
||||||
} else
|
|
||||||
{
|
|
||||||
- r = FALLBACK_ICON_THEME_ID;
|
|
||||||
+ if (!bPreferDarkIconTheme)
|
|
||||||
+ r = FALLBACK_LIGHT_ICON_THEME_ID;
|
|
||||||
+ else
|
|
||||||
+ r = FALLBACK_DARK_ICON_THEME_ID;
|
|
||||||
}
|
|
||||||
return r;
|
|
||||||
#endif // _WIN32
|
|
||||||
@@ -89,13 +109,9 @@ IconThemeSelector::SelectIconThemeForDesktopEnvironment(
|
|
||||||
if (icon_theme_is_in_installed_themes(mPreferredIconTheme, installedThemes)) {
|
|
||||||
return mPreferredIconTheme;
|
|
||||||
}
|
|
||||||
- //if a dark variant is preferred, and we didn't have an exact match, then try our one and only dark theme
|
|
||||||
- if (mPreferDarkIconTheme && icon_theme_is_in_installed_themes("breeze_dark", installedThemes)) {
|
|
||||||
- return "breeze_dark";
|
|
||||||
- }
|
|
||||||
}
|
|
||||||
|
|
||||||
- OUString themeForDesktop = GetIconThemeForDesktopEnvironment(desktopEnvironment);
|
|
||||||
+ OUString themeForDesktop = GetIconThemeForDesktopEnvironment(desktopEnvironment, mPreferDarkIconTheme);
|
|
||||||
if (icon_theme_is_in_installed_themes(themeForDesktop, installedThemes)) {
|
|
||||||
return themeForDesktop;
|
|
||||||
}
|
|
||||||
@@ -177,7 +193,7 @@ IconThemeSelector::ReturnFallback(const std::vector<IconThemeInfo>& installedThe
|
|
||||||
return installedThemes.front().GetThemeId();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
- return FALLBACK_ICON_THEME_ID;
|
|
||||||
+ return FALLBACK_LIGHT_ICON_THEME_ID;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
--
|
|
||||||
2.39.2
|
|
||||||
|
|
@ -0,0 +1,58 @@
|
|||||||
|
From ffceb48dd576ababe346c9548b12ca18f31d3293 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||||
|
Date: Fri, 10 Mar 2023 11:41:45 +0000
|
||||||
|
Subject: [PATCH] default to sifr for gnome light mode
|
||||||
|
|
||||||
|
https://pagure.io/fedora-workstation/issue/361
|
||||||
|
|
||||||
|
"Fedora Workstation currently uses the rather outdated-looking
|
||||||
|
Elementary icon theme for LibreOffice, instead of the Sifr icon theme
|
||||||
|
which was designed to fit in with GNOME's icons. The Sifr theme saw a
|
||||||
|
nice update with LibreOffice 7.5, the version being shipped in Fedora
|
||||||
|
Linux 38, which makes the icons fit better with the current GNOME design
|
||||||
|
language."
|
||||||
|
|
||||||
|
Change-Id: Ic37bbe8e7ad754ab070ead06dc0b006c6ccf3adb
|
||||||
|
---
|
||||||
|
vcl/qa/cppunit/app/test_IconThemeSelector.cxx | 4 ++--
|
||||||
|
vcl/source/app/IconThemeSelector.cxx | 2 +-
|
||||||
|
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/vcl/qa/cppunit/app/test_IconThemeSelector.cxx b/vcl/qa/cppunit/app/test_IconThemeSelector.cxx
|
||||||
|
index 72ee344b1437..8d1aea0c3889 100644
|
||||||
|
--- a/vcl/qa/cppunit/app/test_IconThemeSelector.cxx
|
||||||
|
+++ b/vcl/qa/cppunit/app/test_IconThemeSelector.cxx
|
||||||
|
@@ -85,7 +85,7 @@ IconThemeSelectorTest::ElementaryIsReturnedForGnomeDesktop()
|
||||||
|
std::vector<vcl::IconThemeInfo> themes = GetFakeInstalledThemes();
|
||||||
|
vcl::IconThemeSelector s;
|
||||||
|
OUString r = s.SelectIconThemeForDesktopEnvironment(themes, "gnome");
|
||||||
|
- CPPUNIT_ASSERT_EQUAL_MESSAGE("'elementary' theme is returned for gnome desktop", OUString("elementary"), r);
|
||||||
|
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("'sifr' theme is returned for gnome desktop", OUString("sifr"), r);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
@@ -96,7 +96,7 @@ IconThemeSelectorTest::ThemeIsOverriddenByPreferredTheme()
|
||||||
|
s.SetPreferredIconTheme(preferred, false);
|
||||||
|
std::vector<vcl::IconThemeInfo> themes = GetFakeInstalledThemes();
|
||||||
|
OUString selected = s.SelectIconThemeForDesktopEnvironment(themes, "gnome");
|
||||||
|
- CPPUNIT_ASSERT_EQUAL_MESSAGE("'elementary' theme is overridden by breeze", preferred, selected);
|
||||||
|
+ CPPUNIT_ASSERT_EQUAL_MESSAGE("'sifr' theme is overridden by breeze", preferred, selected);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
diff --git a/vcl/source/app/IconThemeSelector.cxx b/vcl/source/app/IconThemeSelector.cxx
|
||||||
|
index 6b8dfc0f42c7..ee30e577f3f5 100644
|
||||||
|
--- a/vcl/source/app/IconThemeSelector.cxx
|
||||||
|
+++ b/vcl/source/app/IconThemeSelector.cxx
|
||||||
|
@@ -86,7 +86,7 @@ IconThemeSelector::GetIconThemeForDesktopEnvironment(const OUString& desktopEnvi
|
||||||
|
desktopEnvironment.equalsIgnoreAsciiCase("mate") ||
|
||||||
|
desktopEnvironment.equalsIgnoreAsciiCase("unity") ) {
|
||||||
|
if (!bPreferDarkIconTheme)
|
||||||
|
- r = "elementary";
|
||||||
|
+ r = "sifr";
|
||||||
|
else
|
||||||
|
r = "sifr_dark";
|
||||||
|
} else
|
||||||
|
--
|
||||||
|
2.40.1
|
||||||
|
|
@ -1,43 +0,0 @@
|
|||||||
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
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
|||||||
From a1faf14f74a62ea76141115538d7d30d90c9eeb6 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Stephan Bergmann <sbergman@redhat.com>
|
|
||||||
Date: Wed, 22 Mar 2023 14:40:04 +0100
|
|
||||||
Subject: [PATCH] rhbz#2171265 Report fatal InitApplicationServiceManager
|
|
||||||
failures more reliably
|
|
||||||
|
|
||||||
For example, when initialization of the UNO type manager failed, any code run
|
|
||||||
between this SetBootstrapError and the HandleBootstrapErrors in Desktop::Main
|
|
||||||
which would need the type manager (e.g., to set a css::uno::Any) would have
|
|
||||||
caused a crash, so would have failed to print to std::cerr the sought-after
|
|
||||||
css::uno::Exception message. The mis-initialized process would most definitely
|
|
||||||
crash sooner or later anyway, so there's no harm in a controlled std::abort()
|
|
||||||
here (if that is even reached, and the process doesn't already crash in
|
|
||||||
HandleBootstrapErrors, after it has printed the relevant information to
|
|
||||||
std::cerr).
|
|
||||||
|
|
||||||
Change-Id: Ic5889aedec0908fa4b1e2966eb188508d0f92d26
|
|
||||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/149323
|
|
||||||
Tested-by: Jenkins
|
|
||||||
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
||||||
---
|
|
||||||
desktop/source/app/app.cxx | 4 +++-
|
|
||||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx
|
|
||||||
index 5a35b5a745c2..f1ec0b679bc0 100644
|
|
||||||
--- a/desktop/source/app/app.cxx
|
|
||||||
+++ b/desktop/source/app/app.cxx
|
|
||||||
@@ -28,6 +28,7 @@
|
|
||||||
|
|
||||||
#include <sal/config.h>
|
|
||||||
|
|
||||||
+#include <cstdlib>
|
|
||||||
#include <iostream>
|
|
||||||
#include <string_view>
|
|
||||||
|
|
||||||
@@ -458,7 +459,8 @@ void Desktop::Init()
|
|
||||||
}
|
|
||||||
catch (css::uno::Exception & e)
|
|
||||||
{
|
|
||||||
- SetBootstrapError( BE_UNO_SERVICEMANAGER, e.Message );
|
|
||||||
+ HandleBootstrapErrors( BE_UNO_SERVICEMANAGER, e.Message );
|
|
||||||
+ std::abort();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check whether safe mode is enabled
|
|
||||||
--
|
|
||||||
2.40.0
|
|
||||||
|
|
Loading…
Reference in new issue