ref: 4166c453601e856fa61e8994085f240d8771e980
parent: 9f6ed10545b1009cce86289f793165dd7e4b7c9e
author: Werner Lemberg <[email protected]>
date: Tue Apr 23 02:49:56 EDT 2019
[base] Fix thinko in previous commit. * src/base/ftbitmap.c (FT_Bitmap_Blend): Check final width, not target pitch. Problem reported by Sender Ghost <[email protected]>.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2019-04-23 Werner Lemberg <[email protected]>
+
+ [base] Fix thinko in previous commit.
+
+ * src/base/ftbitmap.c (FT_Bitmap_Blend): Check final width, not
+ target pitch.
+
+ Problem reported by Sender Ghost <[email protected]>.
+
2019-04-22 Werner Lemberg <[email protected]>
* src/base/ftbitmap.c (FT_Bitmap_Blend): Check target pitch.
--- a/src/base/ftbitmap.c
+++ b/src/base/ftbitmap.c
@@ -922,12 +922,18 @@
else
FT_TRACE5(( " target bitmap: empty\n" ));
- FT_TRACE5(( " final bitmap: (%d, %d) -- (%d, %d); %d x %d\n",
- final_llx / 64, final_lly / 64,
- final_urx / 64, final_ury / 64,
- final_width, final_rows ));
+ if ( final_width && final_rows )
+ FT_TRACE5(( " final bitmap: (%d, %d) -- (%d, %d); %d x %d\n",
+ final_llx / 64, final_lly / 64,
+ final_urx / 64, final_ury / 64,
+ final_width, final_rows ));
+ else
+ FT_TRACE5(( " final bitmap: empty\n" ));
#endif /* FT_DEBUG_LEVEL_TRACE */
+ if ( !( final_width && final_rows ) )
+ return FT_Err_Ok; /* nothing to do */
+
/* for blending, set offset vector of final bitmap */
/* temporarily to (0,0) */
source_llx -= final_llx;
@@ -971,12 +977,6 @@
pitch = target->pitch;
- if ( !pitch )
- {
- FT_TRACE5(( "FT_Blend_Bitmap:"
- " zero target bitmap pitch is invalid\n" ));
- return FT_THROW( Invalid_Argument );
- }
if ( pitch < 0 )
pitch = -pitch;