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_utils.h | |
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_utils.h')
-rw-r--r-- | libass/ass_utils.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libass/ass_utils.h b/libass/ass_utils.h index db47c32..36826d3 100644 --- a/libass/ass_utils.h +++ b/libass/ass_utils.h @@ -90,11 +90,11 @@ static inline int d16_to_int(int x) } static inline int int_to_d6(int x) { - return x << 6; + return x * (1 << 6); } static inline int int_to_d16(int x) { - return x << 16; + return x * (1 << 16); } static inline int d16_to_d6(int x) { @@ -102,7 +102,7 @@ static inline int d16_to_d6(int x) } static inline int d6_to_d16(int x) { - return x << 10; + return x * (1 << 10); } static inline double d6_to_double(int x) { |