aboutsummaryrefslogtreecommitdiff
path: root/freetype/src/psaux/psconv.c
diff options
context:
space:
mode:
Diffstat (limited to 'freetype/src/psaux/psconv.c')
-rw-r--r--freetype/src/psaux/psconv.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/freetype/src/psaux/psconv.c b/freetype/src/psaux/psconv.c
index 9db8d67a6..36517e7ae 100644
--- a/freetype/src/psaux/psconv.c
+++ b/freetype/src/psaux/psconv.c
@@ -124,7 +124,7 @@
if ( IS_PS_SPACE( *p ) || *p OP 0x80 )
break;
- c = ft_char_table[*p & 0x7f];
+ c = ft_char_table[*p & 0x7F];
if ( c < 0 || c >= base )
break;
@@ -245,12 +245,13 @@
if ( IS_PS_SPACE( *p ) || *p OP 0x80 )
break;
- c = ft_char_table[*p & 0x7f];
+ c = ft_char_table[*p & 0x7F];
if ( c < 0 || c >= 10 )
break;
- if ( decimal < 0xCCCCCCCL )
+ /* only add digit if we don't overflow */
+ if ( divider < 0xCCCCCCCL && decimal < 0xCCCCCCCL )
{
decimal = decimal * 10 + c;
@@ -520,7 +521,7 @@
if ( *p OP 0x80 )
break;
- c = ft_char_table[*p & 0x7f];
+ c = ft_char_table[*p & 0x7F];
if ( (unsigned)c >= 16 )
break;