diff --git a/libavcodec/loco.c b/libavcodec/loco.c index cace4bb448535c9282042b3df43d5835450c6fb1..a0125549b1fddc9e6bb766aa89f829f1fe84bba9 100644 --- a/libavcodec/loco.c +++ b/libavcodec/loco.c @@ -188,11 +188,11 @@ static int decode_frame(AVCodecContext *avctx, decoded = loco_decode_plane(l, p->data[0], avctx->width, avctx->height, p->linesize[0], buf, buf_size, 1); buf += decoded; buf_size -= decoded; - decoded = loco_decode_plane(l, p->data[1], avctx->width / 2, avctx->height / 2, - p->linesize[1], buf, buf_size, 1); - buf += decoded; buf_size -= decoded; decoded = loco_decode_plane(l, p->data[2], avctx->width / 2, avctx->height / 2, p->linesize[2], buf, buf_size, 1); + buf += decoded; buf_size -= decoded; + decoded = loco_decode_plane(l, p->data[1], avctx->width / 2, avctx->height / 2, + p->linesize[1], buf, buf_size, 1); break; case LOCO_CRGB: case LOCO_RGB: decoded = loco_decode_plane(l, p->data[0], avctx->width, avctx->height,