aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2011-07-08 12:28:28 -0700
committerMichael Niedermayer <michaelni@gmx.at>2011-07-11 03:51:46 +0200
commit71a04bc19dfb990d3f7cce82b5516e88d2c371f4 (patch)
tree34376bc9da5c1527fae5478b577b11c88eaa3cae
parentac9ac45aca7d3114dc790f794b49f066b4178827 (diff)
downloadffmpeg-71a04bc19dfb990d3f7cce82b5516e88d2c371f4.tar.gz
swscale: fix crash in 8-bpc bilinear output without alpha.
We accessed the alpha array even it wasn't used and didn't exist, hence leading to a NULL pointer segfault. (cherry picked from commit bf2cba453244a74331238a472fe0e309f116f4d9)
-rw-r--r--libswscale/swscale.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libswscale/swscale.c b/libswscale/swscale.c
index 15db8367de..b9c619c727 100644
--- a/libswscale/swscale.c
+++ b/libswscale/swscale.c
@@ -1247,7 +1247,8 @@ yuv2rgb_2_c_template(SwsContext *c, const int16_t *buf[2],
const int16_t *buf0 = buf[0], *buf1 = buf[1],
*ubuf0 = ubuf[0], *ubuf1 = ubuf[1],
*vbuf0 = vbuf[0], *vbuf1 = vbuf[1],
- *abuf0 = abuf[0], *abuf1 = abuf[1];
+ *abuf0 = hasAlpha ? abuf[0] : NULL,
+ *abuf1 = hasAlpha ? abuf[1] : NULL;
int yalpha1 = 4095 - yalpha;
int uvalpha1 = 4095 - uvalpha;
int i;