rpms/openoffice.org/F-13 openoffice.org.spec, 1.2196, 1.2197 workspace.vcl111.patch, 1.1, 1.2
Caolan McNamara
caolanm at fedoraproject.org
Mon Jun 14 08:07:02 UTC 2010
- Previous message: rpms/perl-IPC-Signal/devel import.log, NONE, 1.1 perl-IPC-Signal.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message: rpms/openoffice.org/devel openoffice.org.spec, 1.2238, 1.2239 workspace.vcl111.patch, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: caolanm
Update of /cvs/pkgs/rpms/openoffice.org/F-13
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv9622/F-13
Modified Files:
openoffice.org.spec workspace.vcl111.patch
Log Message:
Resolves: rhbz#603298 crash in ImplFontCharMap::GetGlyphIndex
Index: openoffice.org.spec
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/F-13/openoffice.org.spec,v
retrieving revision 1.2196
retrieving revision 1.2197
diff -u -p -r1.2196 -r1.2197
--- openoffice.org.spec 11 Jun 2010 07:55:47 -0000 1.2196
+++ openoffice.org.spec 14 Jun 2010 08:07:00 -0000 1.2197
@@ -4233,8 +4233,9 @@ fi
%endif
%changelog
-* Fri Jun 11 2010 Caolán McNamara <caolanm at redhat.com> - 1:3.2.0-12.25-UNRELEASED
+* Mon Jun 14 2010 Caolán McNamara <caolanm at redhat.com> - 1:3.2.0-12.25-UNRELEASED
- Resolves: rhbz#602631 dual head fixes add workspace.ooo321gsl05.patch
+- Resolves: rhbz#603298 crash in ImplFontCharMap::GetGlyphIndex
* Sat Jun 05 2010 Caolán McNamara <caolanm at redhat.com> - 1:3.2.0-12.24
- Resolves: CVE-2010-0395 openoffice.org-3.2.1.pyuno.patch
workspace.vcl111.patch:
source/gdi/metric.cxx | 7 ++++---
source/gdi/outdev3.cxx | 1 +
source/glyphs/gcach_ftyp.cxx | 2 --
unx/source/fontmanager/fontconfig.cxx | 15 ++++++++++++++-
unx/source/gdi/salgdi3.cxx | 2 +-
util/makefile.mk | 1 +
6 files changed, 21 insertions(+), 7 deletions(-)
Index: workspace.vcl111.patch
===================================================================
RCS file: /cvs/pkgs/rpms/openoffice.org/F-13/workspace.vcl111.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- workspace.vcl111.patch 7 May 2010 12:55:07 -0000 1.1
+++ workspace.vcl111.patch 14 Jun 2010 08:07:00 -0000 1.2
@@ -36,3 +36,64 @@ diff -r 2042f9e3d949 vcl/util/makefile.m
$(TOOLSLIB) \
$(VOSLIB) \
$(BASEGFXLIB) \
+diff -ru vcl/source/gdi/metric.cxx vcl/source/gdi/metric.cxx
+--- a/vcl/source/gdi/metric.cxx 2010-06-12 21:08:54.000000000 +0100
++++ b/vcl/source/gdi/metric.cxx 2010-06-14 09:00:44.000000000 +0100
+@@ -386,13 +388,14 @@
+ const bool bSymbolic = (mpRangeCodes[0]>=0xF000) & (mpRangeCodes[1]<=0xF0FF);
+ if( !bSymbolic )
+ return 0;
+- // check for symbol aliasing (U+F0xx -> U+00xx)
+- nRange = ImplFindRangeIndex( cChar | 0xF000 );
++ // check for symbol aliasing (U+00xx <-> U+F0xx)
++ cChar |= 0xF000;
++ nRange = ImplFindRangeIndex( cChar );
+ }
+ // check that we are inside a range
+ if( (nRange & 1) != 0 )
+ return 0;
+-
++
+ // get glyph index directly or indirectly
+ int nGlyphIndex = cChar - mpRangeCodes[ nRange ];
+ const int nStartIndex = mpStartGlyphs[ nRange/2 ];
+diff -ru vcl/source/glyphs/gcach_ftyp.cxx vcl/source/glyphs/gcach_ftyp.cxx
+--- a/vcl/source/glyphs/gcach_ftyp.cxx 2010-06-12 21:08:54.000000000 +0100
++++ b/vcl/source/glyphs/gcach_ftyp.cxx 2010-06-14 08:59:30.000000000 +0100
+@@ -1203,11 +1203,9 @@
+ // check if symbol aliasing helps
+ if( (aChar <= 0x00FF) && mpFontInfo->IsSymbolFont() )
+ nGlyphIndex = FT_Get_Char_Index( maFaceFT, aChar | 0xF000 );
+-#if 0 // disabled for now because it introduced ae bad side-effect (#i88376#)
+ // Finally try the postscript name table
+ if (!nGlyphIndex)
+ nGlyphIndex = psp::PrintFontManager::get().FreeTypeCharIndex( maFaceFT, aChar );
+-#endif
+ }
+ mpFontInfo->CacheGlyphIndex( aChar, nGlyphIndex );
+ }
+diff -ru vcl/unx/source/fontmanager/fontconfig.cxx vcl/unx/source/fontmanager/fontconfig.cxx
+--- a/vcl/unx/source/fontmanager/fontconfig.cxx 2010-06-12 21:09:11.000000000 +0100
++++ b/vcl/unx/source/fontmanager/fontconfig.cxx 2010-06-14 08:59:22.000000000 +0100
+@@ -823,7 +823,20 @@
+ int PrintFontManager::FreeTypeCharIndex( void *pFace, sal_uInt32 aChar )
+ {
+ FontCfgWrapper& rWrapper = FontCfgWrapper::get();
+- return rWrapper.isValid() ? rWrapper.FcFreeTypeCharIndex( (FT_Face)pFace, aChar ) : 0;
++ int nRet = 0;
++ if (rWrapper.isValid())
++ {
++ FT_Face aFace = (FT_Face)pFace;
++ FT_CharMap hOrig = aFace->charmap;
++ nRet = rWrapper.FcFreeTypeCharIndex( aFace, aChar );
++ if (hOrig != aFace->charmap)
++ {
++ //#i88376 FcFreeTypeCharIndex may change the Charmap without
++ //resetting it back to the original
++ FT_Set_Charmap(aFace, hOrig);
++ }
++ }
++ return nRet;
+ }
+
+ bool PrintFontManager::addFontconfigDir( const rtl::OString& rDirName )
- Previous message: rpms/perl-IPC-Signal/devel import.log, NONE, 1.1 perl-IPC-Signal.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
- Next message: rpms/openoffice.org/devel openoffice.org.spec, 1.2238, 1.2239 workspace.vcl111.patch, 1.3, 1.4
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the scm-commits
mailing list