diff --git a/ChangeLog b/ChangeLog index 690d07426..cd8b1538a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2018-04-24 Ben Wagner + + [base] Avoid undefined behaviour in lcd filtering code (#53727). + + * src/base/ftlcdfil.c (ft_lcd_filter_fir, _ft_lcd_filter_legacy): + Ensure `height > 0'. + 2018-04-22 Werner Lemberg * src/base/ftoutln.c (FT_Outline_Decompose): Improve error tracing. diff --git a/src/base/ftlcdfil.c b/src/base/ftlcdfil.c index 5c38911a9..8d314df08 100644 --- a/src/base/ftlcdfil.c +++ b/src/base/ftlcdfil.c @@ -77,7 +77,7 @@ /* take care of bitmap flow */ - if ( pitch > 0 ) + if ( pitch > 0 && height > 0 ) origin += pitch * (FT_Int)( height - 1 ); /* horizontal in-place FIR filter */ @@ -192,7 +192,7 @@ /* take care of bitmap flow */ - if ( pitch > 0 ) + if ( pitch > 0 && height > 0 ) origin += pitch * (FT_Int)( height - 1 ); /* horizontal in-place intra-pixel filter */