summaryrefslogtreecommitdiffstats
path: root/libass
diff options
context:
space:
mode:
Diffstat (limited to 'libass')
-rw-r--r--libass/ass_bitmap.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/libass/ass_bitmap.c b/libass/ass_bitmap.c
index 98c8d74..f214651 100644
--- a/libass/ass_bitmap.c
+++ b/libass/ass_bitmap.c
@@ -166,8 +166,14 @@ Bitmap *outline_to_bitmap(ASS_Library *library, FT_Library ftlib,
FT_Bitmap bitmap;
FT_Outline_Get_CBox(outline, &bbox);
- if (bbox.xMin == bbox.xMax || bbox.yMin == bbox.yMax)
- return NULL;
+ if (bbox.xMin >= bbox.xMax || bbox.yMin >= bbox.yMax) {
+ Bitmap *bm = malloc(sizeof(Bitmap));
+ bm->buffer = NULL;
+ bm->w = bm->h = 0;
+ bm->stride = 0;
+ bm->left = bm->top = 0;
+ return bm;
+ }
// move glyph to origin (0, 0)
bbox.xMin &= ~63;