diff options
author | Werner Lemberg <wl@gnu.org> | 2012-03-08 20:11:37 +0100 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2012-03-08 20:11:37 +0100 |
commit | c4cad30ed1b1f554aa41a98b0b0fdca6e579e22f (patch) | |
tree | c7b37d71a35680d83ce5d1b6e75fede07374adc6 | |
parent | 26dfeb6d63940f1068cd482b7f506289eea5bafa (diff) | |
download | freetype2-c4cad30ed1b1f554aa41a98b0b0fdca6e579e22f.tar.gz |
[bdf] Add missing overflow check.
* src/bdf/bdflib.c (_bdf_parse_glyphs) <BITMAP>: Add threshold for
`glyph->bpr'.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | src/bdf/bdflib.c | 2 |
2 files changed, 8 insertions, 1 deletions
@@ -1,3 +1,10 @@ +2012-03-08 Werner Lemberg <wl@gnu.org> + + [bdf] Add missing overflow check. + + * src/bdf/bdflib.c (_bdf_parse_glyphs) <BITMAP>: Add threshold for + `glyph->bpr'. + 2012-03-07 Vinnie Falco <vinnie.falco@gmail.com> Prepare source code for amalgamation. diff --git a/src/bdf/bdflib.c b/src/bdf/bdflib.c index 6a66d1d1f..b7b685754 100644 --- a/src/bdf/bdflib.c +++ b/src/bdf/bdflib.c @@ -1912,7 +1912,7 @@ glyph->bpr = ( glyph->bbx.width * p->font->bpp + 7 ) >> 3; bitmap_size = glyph->bpr * glyph->bbx.height; - if ( bitmap_size > 0xFFFFU ) + if ( glyph->bpr > 0xFFFFU || bitmap_size > 0xFFFFU ) { FT_ERROR(( "_bdf_parse_glyphs: " ERRMSG4, lineno )); error = BDF_Err_Bbx_Too_Big; |