summaryrefslogtreecommitdiffstats
path: root/libass/ass_utils.h
diff options
context:
space:
mode:
authorDr.Smile <vabnick@gmail.com>2014-11-07 17:14:40 +0300
committerDr.Smile <vabnick@gmail.com>2014-11-07 17:14:40 +0300
commita31ea5621a1fca4a4c927d11ece43c36b44b372c (patch)
tree082dd8d690d2b82fe89fa175982bbe5aedd2607c /libass/ass_utils.h
parent26ccc19c66298ee7783f45e6534d4ddee90cca15 (diff)
downloadlibass-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.h6
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)
{