Index: src/psaux/psconv.c |
diff --git a/src/psaux/psconv.c b/src/psaux/psconv.c |
index 1531d8f0fb5320985de3087f805cd2b55830fcb1..9ea7fb988801847688e2437f6491408f41e52820 100644 |
--- a/src/psaux/psconv.c |
+++ b/src/psaux/psconv.c |
@@ -4,7 +4,7 @@ |
/* */ |
/* Some convenience conversions (body). */ |
/* */ |
-/* Copyright 2006, 2008, 2009 by */ |
+/* Copyright 2006, 2008, 2009, 2012 by */ |
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ |
/* */ |
/* This file is part of the FreeType project, and may only be used, */ |
@@ -79,7 +79,7 @@ |
FT_Bool sign = 0; |
- if ( p == limit || base < 2 || base > 36 ) |
+ if ( p >= limit || base < 2 || base > 36 ) |
return 0; |
if ( *p == '-' || *p == '+' ) |
@@ -150,7 +150,7 @@ |
FT_Bool sign = 0; |
- if ( p == limit ) |
+ if ( p >= limit ) |
return 0; |
if ( *p == '-' || *p == '+' ) |
@@ -346,7 +346,11 @@ |
#if 1 |
- p = *cursor; |
+ p = *cursor; |
+ |
+ if ( p >= limit ) |
+ return 0; |
+ |
if ( n > (FT_UInt)( limit - p ) ) |
n = (FT_UInt)( limit - p ); |
@@ -434,6 +438,10 @@ |
#if 1 |
p = *cursor; |
+ |
+ if ( p >= limit ) |
+ return 0; |
+ |
if ( n > (FT_UInt)(limit - p) ) |
n = (FT_UInt)(limit - p); |