You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libreoffice/0001-Resolves-rhbz-912529-K...

48 lines
1.7 KiB

From 1ded21bfb99951ca947bd11a7442398668202ca6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
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