diff options
Diffstat (limited to 'libass/ass_bitmap.c')
-rw-r--r-- | libass/ass_bitmap.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/libass/ass_bitmap.c b/libass/ass_bitmap.c index 6f77a17..b14336f 100644 --- a/libass/ass_bitmap.c +++ b/libass/ass_bitmap.c @@ -319,20 +319,15 @@ Bitmap *outline_to_bitmap(ASS_Renderer *render_priv, int tile_w = (w + 2 * bord + mask) & ~mask; int tile_h = (h + 2 * bord + mask) & ~mask; - Bitmap *bm = alloc_bitmap(tile_w, tile_h); + Bitmap *bm = alloc_bitmap_raw(tile_w, tile_h); if (!bm) return NULL; bm->left = x_min - bord; bm->top = y_min - bord; - int offs = bord & ~mask; - if (!rasterizer_fill(rst, - bm->buffer + offs * (bm->stride + 1), - x_min - bord + offs, - y_min - bord + offs, - ((w + bord + mask) & ~mask) - offs, - ((h + bord + mask) & ~mask) - offs, - bm->stride)) { + if (!rasterizer_fill(rst, bm->buffer, + x_min - bord, y_min - bord, + bm->stride, tile_h, bm->stride)) { ass_msg(render_priv->library, MSGL_WARN, "Failed to rasterize glyph!\n"); ass_free_bitmap(bm); return NULL; |