summaryrefslogtreecommitdiff
path: root/Build/source/libs/graphite/engine-2.4/src/font/Font.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/graphite/engine-2.4/src/font/Font.cpp')
-rw-r--r--Build/source/libs/graphite/engine-2.4/src/font/Font.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/Build/source/libs/graphite/engine-2.4/src/font/Font.cpp b/Build/source/libs/graphite/engine-2.4/src/font/Font.cpp
index bfeed78605f..b527769e0fb 100644
--- a/Build/source/libs/graphite/engine-2.4/src/font/Font.cpp
+++ b/Build/source/libs/graphite/engine-2.4/src/font/Font.cpp
@@ -174,6 +174,7 @@ void Font::getGlyphPoint(gid16 glyphID, unsigned int pointNum, Point & pointRetu
if (m_pLoca == 0) return;
size_t cContours;
+ size_t cEndPoints;
size_t cPoints;
const size_t CONTOUR_BUF_SIZE = 16;
@@ -191,8 +192,9 @@ void Font::getGlyphPoint(gid16 glyphID, unsigned int pointNum, Point & pointRetu
rgnEndPtHeapBuf = new int[cContours] :
rgnEndPtFixedBuf;
+ cEndPoints = cContours;
if (!TtfUtil::GlyfContourEndPoints(glyphID, m_pGlyf, m_pLoca, m_cbLocaSize, m_pHead,
- prgnEndPt, cContours))
+ prgnEndPt, cEndPoints)) //cEndPonts will be zero on return
{
return; // should have been caught above
}
@@ -203,7 +205,7 @@ void Font::getGlyphPoint(gid16 glyphID, unsigned int pointNum, Point & pointRetu
int * prgnY = (cPoints > POINT_BUF_SIZE) ? rgnYHeapBuf= new int[cPoints] : rgnYFixedBuf;
if (TtfUtil::GlyfPoints(glyphID, m_pGlyf, m_pLoca, m_cbLocaSize, m_pHead, 0, 0,
- prgnX, prgnY, prgfOnCurve, cPoints))
+ prgnX, prgnY, prgfOnCurve, cPoints)) //cPoints will be zero on return
{
float nPixEmSquare;
getFontMetrics(0, 0, &nPixEmSquare);