summaryrefslogtreecommitdiff
path: root/libavcodec/dvdec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-03-31 20:37:11 +0200
committerMichael Niedermayer <michaelni@gmx.at>2013-03-31 20:37:49 +0200
commitac126a98e56c1d1354bcbd3644af46a842ac51c3 (patch)
tree4b808a54522034a973e0a2b2410eb95b2b2d8ddd /libavcodec/dvdec.c
parentd00dcb8c9f5f09094c262adea553509939c4f8ff (diff)
dvdec: fix lowres=3 with yuv 4:1:1
Fixes Ticket2390 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/dvdec.c')
-rw-r--r--libavcodec/dvdec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/dvdec.c b/libavcodec/dvdec.c
index 5cc205ce03..48cbbfc70e 100644
--- a/libavcodec/dvdec.c
+++ b/libavcodec/dvdec.c
@@ -287,9 +287,9 @@ static int dv_decode_video_segment(AVCodecContext *avctx, void *arg)
int x, y;
mb->idct_put(pixels, 8, block);
for (y = 0; y < (1 << log2_blocksize); y++, c_ptr += s->picture.linesize[j], pixels += 8) {
- ptr1 = pixels + (1 << (log2_blocksize - 1));
+ ptr1 = pixels + ((1 << (log2_blocksize))>>1);
c_ptr1 = c_ptr + (s->picture.linesize[j] << log2_blocksize);
- for (x = 0; x < (1 << (log2_blocksize - 1)); x++) {
+ for (x = 0; x < (1 << FFMAX(log2_blocksize - 1, 0)); x++) {
c_ptr[x] = pixels[x];
c_ptr1[x] = ptr1[x];
}