avfilter/vf_eq: Fix clipping code
Found-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
5a1e524ba7
commit
530bf8ece6
@ -91,7 +91,7 @@ static void process_c(EQParameters *param, uint8_t *dst, int dst_stride,
|
|||||||
for (x = 0; x < w; x++) {
|
for (x = 0; x < w; x++) {
|
||||||
pel = ((src[y * src_stride + x] * contrast) >> 12) + brightness;
|
pel = ((src[y * src_stride + x] * contrast) >> 12) + brightness;
|
||||||
|
|
||||||
if (pel & 768)
|
if (pel & ~255)
|
||||||
pel = (-pel) >> 31;
|
pel = (-pel) >> 31;
|
||||||
|
|
||||||
dst[y * dst_stride + x] = pel;
|
dst[y * dst_stride + x] = pel;
|
||||||
|
@ -72,7 +72,7 @@ static void process_MMX(EQParameters *param, uint8_t *dst, int dst_stride,
|
|||||||
|
|
||||||
for (i = w&7; i; i--) {
|
for (i = w&7; i; i--) {
|
||||||
pel = ((*src++ * contrast) >> 12) + brightness;
|
pel = ((*src++ * contrast) >> 12) + brightness;
|
||||||
if (pel & 768)
|
if (pel & ~255)
|
||||||
pel = (-pel) >> 31;
|
pel = (-pel) >> 31;
|
||||||
*dst++ = pel;
|
*dst++ = pel;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user