diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-05-08 11:41:54 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-05-08 11:41:54 +0200 |
commit | aecb3421f641d56d3b3419c28da5cf98b0eadd7c (patch) | |
tree | 74aaefdd262d20a0b7a9d95d53c84ce88a726a59 | |
parent | fc37cd43338b8c8ad201c1e6013d402c1b51e917 (diff) | |
parent | 45a1694fde251ee56e23aec073d73172c00aa470 (diff) | |
download | ffmpeg-aecb3421f641d56d3b3419c28da5cf98b0eadd7c.tar.gz |
Merge commit '45a1694fde251ee56e23aec073d73172c00aa470'
* commit '45a1694fde251ee56e23aec073d73172c00aa470':
jpeg2000dec: cleanup properly after decoding errors
Conflicts:
libavcodec/jpeg2000dec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/jpeg2000dec.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c index 63405c4b6e..89a1527219 100644 --- a/libavcodec/jpeg2000dec.c +++ b/libavcodec/jpeg2000dec.c @@ -1288,27 +1288,27 @@ static int jpeg2000_decode_frame(AVCodecContext *avctx, void *data, return -1; } if (ret = jpeg2000_read_main_headers(s)) - goto fail; + goto end; /* get picture buffer */ if ((ret = ff_thread_get_buffer(avctx, &frame, 0)) < 0) { av_log(avctx, AV_LOG_ERROR, "ff_thread_get_buffer() failed.\n"); - goto fail; + goto end; } picture->pict_type = AV_PICTURE_TYPE_I; picture->key_frame = 1; if (ret = jpeg2000_read_bitstream_packets(s)) - goto fail; + goto end; for (tileno = 0; tileno < s->numXtiles * s->numYtiles; tileno++) if (ret = jpeg2000_decode_tile(s, s->tile + tileno, picture)) - goto fail; + goto end; jpeg2000_dec_cleanup(s); *got_frame = 1; return s->buf - s->buf_start; -fail: +end: jpeg2000_dec_cleanup(s); return ret; } |