vcl/quartz/SystemFontList.cxx | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-)
New commits: commit 4cfd25f895cffa14bbc8c92027d9aa0f1f145613 Author: Patrick Luby <plub...@libreoffice.org> AuthorDate: Sat Dec 9 17:59:10 2023 -0500 Commit: Xisco Fauli <xiscofa...@libreoffice.org> CommitDate: Mon Dec 11 11:50:44 2023 +0100 tdf#140401 check if attribute is a nullptr Change-Id: Ie6e33fc1dca525553bb4237204666835d335b13f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160524 Tested-by: Jenkins Reviewed-by: Patrick Luby <plub...@libreoffice.org> (cherry picked from commit 99ba9c34f2785d1236820cbd5f604339ccd28952) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160485 Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org> diff --git a/vcl/quartz/SystemFontList.cxx b/vcl/quartz/SystemFontList.cxx index 2bc7544c8010..e068caf80fb6 100644 --- a/vcl/quartz/SystemFontList.cxx +++ b/vcl/quartz/SystemFontList.cxx @@ -118,7 +118,9 @@ FontAttributes DevFontFromCTFontDescriptor( CTFontDescriptorRef pFD, bool* bFont // get the font weight double fWeight = 0; CFNumberRef pWeightNum = static_cast<CFNumberRef>(CFDictionaryGetValue( pAttrDict, kCTFontWeightTrait )); - CFNumberGetValue( pWeightNum, kCFNumberDoubleType, &fWeight ); + // tdf#140401 check if attribute is a nullptr + if( pWeightNum ) + CFNumberGetValue( pWeightNum, kCFNumberDoubleType, &fWeight ); int nInt = WEIGHT_NORMAL; // Special case fixes @@ -164,7 +166,9 @@ FontAttributes DevFontFromCTFontDescriptor( CTFontDescriptorRef pFD, bool* bFont // get the font slant double fSlant = 0; CFNumberRef pSlantNum = static_cast<CFNumberRef>(CFDictionaryGetValue( pAttrDict, kCTFontSlantTrait )); - CFNumberGetValue( pSlantNum, kCFNumberDoubleType, &fSlant ); + // tdf#140401 check if attribute is a nullptr + if( pSlantNum ) + CFNumberGetValue( pSlantNum, kCFNumberDoubleType, &fSlant ); if( fSlant >= 0.035 ) { rDFA.SetItalic( ITALIC_NORMAL ); @@ -172,7 +176,9 @@ FontAttributes DevFontFromCTFontDescriptor( CTFontDescriptorRef pFD, bool* bFont // get width trait double fWidth = 0; CFNumberRef pWidthNum = static_cast<CFNumberRef>(CFDictionaryGetValue( pAttrDict, kCTFontWidthTrait )); - CFNumberGetValue( pWidthNum, kCFNumberDoubleType, &fWidth ); + // tdf#140401 check if attribute is a nullptr + if( pWidthNum ) + CFNumberGetValue( pWidthNum, kCFNumberDoubleType, &fWidth ); nInt = WIDTH_NORMAL; if( fWidth > 0 )