aboutsummaryrefslogtreecommitdiff
path: root/freetype/src/pfr
diff options
context:
space:
mode:
Diffstat (limited to 'freetype/src/pfr')
-rw-r--r--freetype/src/pfr/pfrcmap.c5
-rw-r--r--freetype/src/pfr/pfrdrivr.c6
-rw-r--r--freetype/src/pfr/pfrgload.c2
-rw-r--r--freetype/src/pfr/pfrload.c2
-rw-r--r--freetype/src/pfr/pfrobjs.c7
-rw-r--r--freetype/src/pfr/pfrsbit.c6
6 files changed, 17 insertions, 11 deletions
diff --git a/freetype/src/pfr/pfrcmap.c b/freetype/src/pfr/pfrcmap.c
index 1f05640cc..90ba0105e 100644
--- a/freetype/src/pfr/pfrcmap.c
+++ b/freetype/src/pfr/pfrcmap.c
@@ -25,11 +25,14 @@
FT_CALLBACK_DEF( FT_Error )
- pfr_cmap_init( PFR_CMap cmap )
+ pfr_cmap_init( PFR_CMap cmap,
+ FT_Pointer pointer )
{
FT_Error error = FT_Err_Ok;
PFR_Face face = (PFR_Face)FT_CMAP_FACE( cmap );
+ FT_UNUSED( pointer );
+
cmap->num_chars = face->phy_font.num_chars;
cmap->chars = face->phy_font.chars;
diff --git a/freetype/src/pfr/pfrdrivr.c b/freetype/src/pfr/pfrdrivr.c
index ae1f91917..b6873d5cd 100644
--- a/freetype/src/pfr/pfrdrivr.c
+++ b/freetype/src/pfr/pfrdrivr.c
@@ -4,7 +4,7 @@
/* */
/* FreeType PFR driver interface (body). */
/* */
-/* Copyright 2002-2004, 2006, 2008, 2010, 2011, 2013 by */
+/* Copyright 2002-2004, 2006, 2008, 2010, 2011, 2013, 2014 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -37,7 +37,7 @@
PFR_PhyFont phys = &face->phy_font;
- pfr_face_get_kerning( pfrface, left, right, avector );
+ (void)pfr_face_get_kerning( pfrface, left, right, avector );
/* convert from metrics to outline units when necessary */
if ( phys->outline_resolution != phys->metrics_resolution )
@@ -134,7 +134,7 @@
}
- FT_CALLBACK_TABLE_DEF
+ static
const FT_Service_PfrMetricsRec pfr_metrics_service_rec =
{
pfr_get_metrics,
diff --git a/freetype/src/pfr/pfrgload.c b/freetype/src/pfr/pfrgload.c
index df7fb0577..e254c23f0 100644
--- a/freetype/src/pfr/pfrgload.c
+++ b/freetype/src/pfr/pfrgload.c
@@ -763,7 +763,7 @@
PFR_SubGlyph subglyph;
- FT_TRACE4(( "subglyph %d:\n", n ));
+ FT_TRACE4(( " subglyph %d:\n", n ));
subglyph = glyph->subs + old_count + n;
old_points = base->n_points;
diff --git a/freetype/src/pfr/pfrload.c b/freetype/src/pfr/pfrload.c
index b91de9fcf..3fedaba61 100644
--- a/freetype/src/pfr/pfrload.c
+++ b/freetype/src/pfr/pfrload.c
@@ -179,7 +179,7 @@
if ( header->signature != 0x50465230L || /* "PFR0" */
header->version > 4 ||
header->header_size < 58 ||
- header->signature2 != 0x0d0a ) /* CR/LF */
+ header->signature2 != 0x0D0A ) /* CR/LF */
{
result = 0;
}
diff --git a/freetype/src/pfr/pfrobjs.c b/freetype/src/pfr/pfrobjs.c
index 7953d812e..0c89242c7 100644
--- a/freetype/src/pfr/pfrobjs.c
+++ b/freetype/src/pfr/pfrobjs.c
@@ -4,7 +4,7 @@
/* */
/* FreeType PFR object methods (body). */
/* */
-/* Copyright 2002-2008, 2010-2011, 2013 by */
+/* Copyright 2002-2008, 2010-2011, 2013, 2014 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -22,7 +22,8 @@
#include "pfrcmap.h"
#include "pfrsbit.h"
#include FT_OUTLINE_H
-#include <internal/ftdebug.h>
+#include FT_INTERNAL_DEBUG_H
+#include FT_INTERNAL_CALC_H
#include FT_TRUETYPE_IDS_H
#include "pfrerror.h"
@@ -515,7 +516,7 @@
{
FT_UInt count = item->pair_count;
FT_UInt size = item->pair_size;
- FT_UInt power = (FT_UInt)ft_highpow2( (FT_UInt32)count );
+ FT_UInt power = 1 << FT_MSB( count );
FT_UInt probe = power * size;
FT_UInt extra = count - power;
FT_Byte* base = stream->cursor;
diff --git a/freetype/src/pfr/pfrsbit.c b/freetype/src/pfr/pfrsbit.c
index 1bb878e1d..e04dcd169 100644
--- a/freetype/src/pfr/pfrsbit.c
+++ b/freetype/src/pfr/pfrsbit.c
@@ -59,7 +59,7 @@
if ( !decreasing )
{
- writer->line += writer->pitch * ( target->rows-1 );
+ writer->line += writer->pitch * ( target->rows - 1 );
writer->pitch = -writer->pitch;
}
}
@@ -636,7 +636,9 @@
* which causes a size truncation, because truncated
* size properties makes bitmap glyph broken.
*/
- if ( xpos > FT_INT_MAX || ( ypos + ysize ) > FT_INT_MAX )
+ if ( xpos > FT_INT_MAX || xpos < FT_INT_MIN ||
+ ysize > FT_INT_MAX || ypos + ysize > FT_INT_MAX ||
+ ypos + (FT_Long)ysize < FT_INT_MIN )
{
FT_TRACE1(( "pfr_slot_load_bitmap:" ));
FT_TRACE1(( "huge bitmap glyph %dx%d over FT_GlyphSlot\n",