summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2021-04-27 05:38:32 +0300
committerXisco Fauli <xiscofauli@libreoffice.org>2021-04-27 09:21:20 +0200
commitd1ac603b006a14c3cf8c8f852eb481a27e3c46fa (patch)
treea18f7c73cf4450221d5fdb066138794923640d17
parente9341b4356c8e5e72aa4dbde9029b0ffca3966e7 (diff)
tdf#141924: SwFormatAutoFormat::GetStyleHandle may return nullptr
Change-Id: Id1b6fe687f5b328fa0743036a287bacfefe5e5fb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114685 Tested-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114687 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r--sw/source/core/unocore/unocrsrhelper.cxx8
1 files changed, 5 insertions, 3 deletions
diff --git a/sw/source/core/unocore/unocrsrhelper.cxx b/sw/source/core/unocore/unocrsrhelper.cxx
index 0186b5f9613f..8c09a63113fa 100644
--- a/sw/source/core/unocore/unocrsrhelper.cxx
+++ b/sw/source/core/unocore/unocrsrhelper.cxx
@@ -312,17 +312,19 @@ static uno::Any GetParaListAutoFormat(SwTextNode const& rNode)
{
return uno::Any();
}
- SfxItemSet const& rSet(*pFormat->GetStyleHandle());
+ const auto pSet(pFormat->GetStyleHandle());
+ if (!pSet)
+ return {};
SfxItemPropertySet const& rPropSet(*aSwMapProvider.GetPropertySet(PROPERTY_MAP_CHAR_AUTO_STYLE));
SfxItemPropertyMap const& rMap(rPropSet.getPropertyMap());
std::vector<beans::NamedValue> props;
// have to iterate the map, not the item set?
for (auto const& rEntry : rMap.getPropertyEntries())
{
- if (rPropSet.getPropertyState(rEntry, rSet) == PropertyState_DIRECT_VALUE)
+ if (rPropSet.getPropertyState(rEntry, *pSet) == PropertyState_DIRECT_VALUE)
{
Any value;
- rPropSet.getPropertyValue(rEntry, rSet, value);
+ rPropSet.getPropertyValue(rEntry, *pSet, value);
props.emplace_back(rEntry.sName, value);
}
}