shithub: freetype+ttf2subf

Download patch

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]>.

git/fs: mount .git/fs: mount/attach disallowed
--- 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;