do not crash when requesting to load fonts we cannot load

svn path=/trunk/KDE/kdegraphics/okular/; revision=825287
This commit is contained in:
Pino Toscano 2008-06-27 19:00:17 +00:00
parent af05a86e04
commit 5c91487bbc

View file

@ -1039,6 +1039,10 @@ QFont XpsFile::getFontByName( const QString &fileName, float size )
index = loadFontByName(fileName);
m_fontCache[fileName] = index;
}
if ( index == -1 ) {
kWarning(XpsDebug) << "Requesting uknown font:" << fileName;
return QFont();
}
QString fontFamily = m_fontDatabase.applicationFontFamilies( index ).at(0);
QString fontStyle = m_fontDatabase.styles( fontFamily ).at(0);
@ -1051,7 +1055,11 @@ int XpsFile::loadFontByName( const QString &fileName )
{
// kDebug(XpsDebug) << "font file name: " << fileName;
// TODO: think about case-insensitivity
const KZipFileEntry* fontFile = static_cast<const KZipFileEntry *>(m_xpsArchive->directory()->entry( fileName ));
if ( !fontFile ) {
return -1;
}
QByteArray fontData = fontFile->data(); // once per file, according to the docs