From c0400558ba9325bc19fd454bcb4b16498082842c Mon Sep 17 00:00:00 2001 From: Caolán McNamara Date: Mon, 10 Apr 2023 10:38:32 +0100 Subject: crashreporting: getUsedFontList() crash MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit e.g. https://crashreport.libreoffice.org/stats/crash_details/3a3c07aa-0f96-4efa-b55b-c3fe4e4b6ed8 ... Crash Reason EXCEPTION_ACCESS_VIOLATION_READ Crash Address 0x0 ... XMLFontAutoStylePool::getUsedFontList() xmloff\source\style\XMLFontAutoStylePool.cxx:334 XMLFontAutoStylePool::exportXML() xmloff\source\style\XMLFontAutoStylePool.cxx:408 Change-Id: I5d057b8e639260f6d00e731c3af7bab7203a8814 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150177 Tested-by: Jenkins Reviewed-by: Caolán McNamara --- xmloff/source/style/XMLFontAutoStylePool.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'xmloff') diff --git a/xmloff/source/style/XMLFontAutoStylePool.cxx b/xmloff/source/style/XMLFontAutoStylePool.cxx index 0fbb57b78ec8..e86709b6cc3d 100644 --- a/xmloff/source/style/XMLFontAutoStylePool.cxx +++ b/xmloff/source/style/XMLFontAutoStylePool.cxx @@ -328,9 +328,9 @@ std::unordered_set XMLFontAutoStylePool::getUsedFontList() if (xStyle->isInUse()) { uno::Reference xPropertySet(xStyle, UNO_QUERY); - if (xPropertySet.is()) + uno::Reference xInfo(xPropertySet ? xPropertySet->getPropertySetInfo() : nullptr); + if (xInfo) { - uno::Reference xInfo(xPropertySet->getPropertySetInfo()); if (m_bEmbedLatinScript && xInfo->hasPropertyByName("CharFontName")) { OUString sCharFontName; -- cgit