desktop/source/lib/init.cxx | 4 ++++
1 file changed, 4 insertions(+)
New commits:
commit 75fb6915e68098daeec632c1d38935c5556a17a2
Author: Miklos Vajna <[email protected]>
AuthorDate: Fri Sep 27 08:52:57 2024 +0200
Commit: Xisco Fauli <[email protected]>
CommitDate: Fri Oct 4 10:04:40 2024 +0200
desktop lok: fix crash in getStyles()
Crashreport backtrace:
> program/libmergedlo.so
> getStyles
> desktop/source/lib/init.cxx:6411
> program/libmergedlo.so
> doc_getCommandValues
> desktop/source/lib/init.cxx:6666
Which is probably a call on an already disposed document. Fix it similar
to how getFonts() does it.
Change-Id: I1744bd04b7ebdea1b69ca121b8cfa47314d67528
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174372
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <[email protected]>
(cherry picked from commit d5d7883fdecfb2c98c880ee2e957a1e34cba45bf)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/174330
Reviewed-by: Xisco Fauli <[email protected]>
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index a892eb51a981..90cfba8e4e87 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -6145,6 +6145,10 @@ static char* getStyles(LibreOfficeKitDocument* pThis,
const char* pCommand)
aTree.put("commandName", pCommand);
uno::Reference<css::style::XStyleFamiliesSupplier>
xStyleFamiliesSupplier(pDocument->mxComponent, uno::UNO_QUERY);
const uno::Reference<container::XNameAccess> xStyleFamilies =
xStyleFamiliesSupplier->getStyleFamilies();
+ if (!xStyleFamilies.is())
+ {
+ return nullptr;
+ }
const uno::Sequence<OUString> aStyleFamilies =
xStyleFamilies->getElementNames();
static constexpr OUString aWriterStyles[] =