diff options
author | Dr.Smile <vabnick@gmail.com> | 2014-11-07 17:14:40 +0300 |
---|---|---|
committer | Dr.Smile <vabnick@gmail.com> | 2014-11-07 17:14:40 +0300 |
commit | a31ea5621a1fca4a4c927d11ece43c36b44b372c (patch) | |
tree | 082dd8d690d2b82fe89fa175982bbe5aedd2607c /libass/ass_rasterizer_c.c | |
parent | 26ccc19c66298ee7783f45e6534d4ddee90cca15 (diff) | |
download | libass-a31ea5621a1fca4a4c927d11ece43c36b44b372c.tar.bz2 libass-a31ea5621a1fca4a4c927d11ece43c36b44b372c.tar.xz |
Fix UB at left shifts of negative integers
Diffstat (limited to 'libass/ass_rasterizer_c.c')
-rw-r--r-- | libass/ass_rasterizer_c.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libass/ass_rasterizer_c.c b/libass/ass_rasterizer_c.c index 8993ed6..f702c54 100644 --- a/libass/ass_rasterizer_c.c +++ b/libass/ass_rasterizer_c.c @@ -250,7 +250,7 @@ void ass_fill_generic_tile16_c(uint8_t *buf, ptrdiff_t stride, update_border_line16(res[up], abs_a, va, b, abs_b, c, 0, up_pos); } - int16_t cur = winding << 8; + int16_t cur = 256 * winding; for (j = 0; j < 16; ++j) { cur += delta[j]; for (i = 0; i < 16; ++i) { @@ -369,7 +369,7 @@ void ass_fill_generic_tile32_c(uint8_t *buf, ptrdiff_t stride, update_border_line32(res[up], abs_a, va, b, abs_b, c, 0, up_pos); } - int16_t cur = winding << 8; + int16_t cur = 256 * winding; for (j = 0; j < 32; ++j) { cur += delta[j]; for (i = 0; i < 32; ++i) { |