[FFmpeg-devel] [PATCH] iff: do not decode unsupported pbms with ham decoder
Peter Ross
pross at xvid.org
Mon Mar 12 00:39:37 CET 2012
This prevents the segfault reported by ticket #1054
---
libavcodec/iff.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/libavcodec/iff.c b/libavcodec/iff.c
index 9b09604..30ce70d 100644
--- a/libavcodec/iff.c
+++ b/libavcodec/iff.c
@@ -635,12 +635,15 @@ static int decode_frame_byterun1(AVCodecContext *avctx,
uint8_t *row = &s->frame.data[0][y*s->frame.linesize[0]];
buf += decode_byterun(row, avctx->width, buf, buf_end);
}
- } else { // IFF-PBM: HAM to PIX_FMT_BGR32
+ } else if (s->ham) { // IFF-PBM: HAM to PIX_FMT_BGR32
for (y = 0; y < avctx->height ; y++) {
uint8_t *row = &s->frame.data[0][y*s->frame.linesize[0]];
buf += decode_byterun(s->ham_buf, avctx->width, buf, buf_end);
decode_ham_plane32((uint32_t *) row, s->ham_buf, s->ham_palbuf, s->planesize);
}
+ } else {
+ av_log_ask_for_sample(avctx, "unsupported bpp\n");
+ return AVERROR_INVALIDDATA;
}
*data_size = sizeof(AVFrame);
--
1.7.5.4
-- Peter
(A907 E02F A6E5 0CD2 34CD 20D2 6760 79C5 AC40 DD6B)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20120312/014da20f/attachment.asc>
More information about the ffmpeg-devel
mailing list