diff options
Diffstat (limited to 'sdext')
-rw-r--r-- | sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx index d9efa39d8a54..f12478cb2f4d 100644 --- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx +++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx @@ -476,10 +476,10 @@ int PDFOutDev::parseFont( long long nNewId, GfxFont* gfxFont, const GfxState* st // we must write byte count to stdout before #if POPPLER_CHECK_VERSION(22, 6, 0) std::optional<std::vector<unsigned char>> pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef() ); - nSize = pBuf->size(); - if ( nSize > 0 ) + if ( pBuf ) { aNewFont.isEmbedded = true; + nSize = pBuf->size(); } #else char* pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef(), &nSize ); @@ -503,7 +503,8 @@ void PDFOutDev::writeFontFile( GfxFont* gfxFont ) const int nSize = 0; #if POPPLER_CHECK_VERSION(22, 6, 0) std::optional<std::vector<unsigned char>> pBuf = gfxFont->readEmbFontFile( m_pDoc->getXRef() ); - nSize = pBuf->size(); + if ( pBuf ) + nSize = pBuf->size(); if ( nSize == 0 ) return; #else |