diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-03-05 03:05:21 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-03-05 03:05:21 +0100 |
commit | 263bb6edcf6b767006fcde315850d3a60b3fceed (patch) | |
tree | 8a546ad70420ccbda8718b4e67ce040ee5af2a78 | |
parent | e75518e18d953080409711bab291d9501625e103 (diff) | |
download | ffmpeg-263bb6edcf6b767006fcde315850d3a60b3fceed.tar.gz |
bit_depth_template: use av_clip_uint8 over crop_tab.
This fixes some global out of array reads and wrong cliping.
No speed difference meassurable under clang on i5
also all important code paths on all important platforms should
use SIMD.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/bit_depth_template.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/bit_depth_template.c b/libavcodec/bit_depth_template.c index 9071ec2a35..c810304ef6 100644 --- a/libavcodec/bit_depth_template.c +++ b/libavcodec/bit_depth_template.c @@ -70,7 +70,7 @@ # define pixel4 uint32_t # define dctcoef int16_t -# define INIT_CLIP uint8_t *cm = ff_cropTbl + MAX_NEG_CROP; +# define INIT_CLIP ; # define no_rnd_avg_pixel4 no_rnd_avg32 # define rnd_avg_pixel4 rnd_avg32 # define AV_RN2P AV_RN16 @@ -82,7 +82,7 @@ # define PIXEL_SPLAT_X4(x) ((x)*0x01010101U) # define av_clip_pixel(a) av_clip_uint8(a) -# define CLIP(a) cm[a] +# define CLIP(a) av_clip_uint8(a) #endif #define FUNC3(a, b, c) a ## _ ## b ## c |