diff options
author | Dr.Smile <vabnick@gmail.com> | 2022-03-20 02:44:05 +0300 |
---|---|---|
committer | Dr.Smile <vabnick@gmail.com> | 2022-12-04 02:17:38 +0300 |
commit | 6e0991e541ddd6f618e8d98004cab75e3fdbaab8 (patch) | |
tree | 7f90f8f2b7074ec124ed4b64d27481a47c7b2f99 /libass/ass_bitmap.c | |
parent | 662b913d4d3d41403985f5fe68cca64b17b2ff9c (diff) | |
download | libass-6e0991e541ddd6f618e8d98004cab75e3fdbaab8.tar.bz2 libass-6e0991e541ddd6f618e8d98004cab75e3fdbaab8.tar.xz |
bitmap_engine: switch to dynamic vtable
This should help with potential combinatorial explosion.
Diffstat (limited to 'libass/ass_bitmap.c')
-rw-r--r-- | libass/ass_bitmap.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libass/ass_bitmap.c b/libass/ass_bitmap.c index b9ff5ee..41df5e1 100644 --- a/libass/ass_bitmap.c +++ b/libass/ass_bitmap.c @@ -170,7 +170,7 @@ bool ass_outline_to_bitmap(RenderContext *state, Bitmap *bm, int32_t w = x_max - x_min; int32_t h = y_max - y_min; - int mask = (1 << render_priv->engine->tile_order) - 1; + int mask = (1 << render_priv->engine.tile_order) - 1; // XXX: is that possible to trigger at all? if (w < 0 || h < 0 || w > INT_MAX - mask || h > INT_MAX - mask) { @@ -181,12 +181,12 @@ bool ass_outline_to_bitmap(RenderContext *state, Bitmap *bm, int32_t tile_w = (w + mask) & ~mask; int32_t tile_h = (h + mask) & ~mask; - if (!ass_alloc_bitmap(render_priv->engine, bm, tile_w, tile_h, false)) + if (!ass_alloc_bitmap(&render_priv->engine, bm, tile_w, tile_h, false)) return false; bm->left = x_min; bm->top = y_min; - if (!ass_rasterizer_fill(render_priv->engine, rst, bm->buffer, + if (!ass_rasterizer_fill(&render_priv->engine, rst, bm->buffer, x_min, y_min, bm->stride, tile_h, bm->stride)) { ass_msg(render_priv->library, MSGL_WARN, "Failed to rasterize glyph!\n"); ass_free_bitmap(bm); |