From 1ded21bfb99951ca947bd11a7442398668202ca6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= Date: Wed, 4 Dec 2013 15:04:04 +0000 Subject: [PATCH] Resolves: rhbz#912529 Kerkis SmallCaps shown instead of Kerkis Regular we encounter both fonts, but all their properties that we compare are the same, so we think they are two versions of the same font and throw away the "Regular" version. Change-Id: I24369f10c7a0edba1faa02621bb78616e880966e --- vcl/source/gdi/outdev3.cxx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/vcl/source/gdi/outdev3.cxx b/vcl/source/gdi/outdev3.cxx index c27cd93..f3f5a77 100644 --- a/vcl/source/gdi/outdev3.cxx +++ b/vcl/source/gdi/outdev3.cxx @@ -665,7 +665,7 @@ PhysicalFontFace::PhysicalFontFace( const ImplDevFontAttributes& rDFA, int nMagi sal_Int32 PhysicalFontFace::CompareIgnoreSize( const PhysicalFontFace& rOther ) const { - // compare their width, weight, italic and style name + // compare their width, weight, italic, style name and family name if( GetWidthType() < rOther.GetWidthType() ) return -1; else if( GetWidthType() > rOther.GetWidthType() ) @@ -681,7 +681,14 @@ sal_Int32 PhysicalFontFace::CompareIgnoreSize( const PhysicalFontFace& rOther ) else if( GetSlant() > rOther.GetSlant() ) return 1; - return GetFamilyName().compareTo( rOther.GetFamilyName() ); + sal_Int32 nRet = GetFamilyName().compareTo( rOther.GetFamilyName() ); + + if (nRet == 0) + { + nRet = GetStyleName().compareTo( rOther.GetStyleName() ); + } + + return nRet; } sal_Int32 PhysicalFontFace::CompareWithSize( const PhysicalFontFace& rOther ) const -- 1.8.3.1