aboutsummaryrefslogtreecommitdiff
path: root/freetype/src/sfnt/ttload.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2015-02-22 14:47:01 +0100
committermarha <marha@users.sourceforge.net>2015-02-22 14:47:01 +0100
commit7785694244cdfc5939ca4754cab4e08bd6980f99 (patch)
treee317021c83941073a12d69494425f0dbcbc9eaf8 /freetype/src/sfnt/ttload.c
parentc9aad1ae6227c434d480d1d3aa8eae3c3c910c18 (diff)
downloadvcxsrv-7785694244cdfc5939ca4754cab4e08bd6980f99.tar.gz
vcxsrv-7785694244cdfc5939ca4754cab4e08bd6980f99.tar.bz2
vcxsrv-7785694244cdfc5939ca4754cab4e08bd6980f99.zip
Upgraded to freetype 2.5.5
Diffstat (limited to 'freetype/src/sfnt/ttload.c')
-rw-r--r--freetype/src/sfnt/ttload.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/freetype/src/sfnt/ttload.c b/freetype/src/sfnt/ttload.c
index 0a3cd29db..8338150ab 100644
--- a/freetype/src/sfnt/ttload.c
+++ b/freetype/src/sfnt/ttload.c
@@ -5,7 +5,7 @@
/* Load the basic TrueType tables, i.e., tables that can be either in */
/* TTF or OTF fonts (body). */
/* */
-/* Copyright 1996-2010, 2012, 2013 by */
+/* Copyright 1996-2010, 2012-2014 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -207,7 +207,10 @@
}
/* we ignore invalid tables */
- if ( table.Offset + table.Length > stream->size )
+
+ /* table.Offset + table.Length > stream->size ? */
+ if ( table.Length > stream->size ||
+ table.Offset > stream->size - table.Length )
{
FT_TRACE2(( "check_table_dir: table entry %d invalid\n", nn ));
continue;
@@ -395,7 +398,10 @@
entry->Length = FT_GET_ULONG();
/* ignore invalid tables */
- if ( entry->Offset + entry->Length > stream->size )
+
+ /* entry->Offset + entry->Length > stream->size ? */
+ if ( entry->Length > stream->size ||
+ entry->Offset > stream->size - entry->Length )
continue;
else
{