Merge commit '9469370fb32679352e66826daf77bdd2e6f067b5'

* commit '9469370fb32679352e66826daf77bdd2e6f067b5':
  h264: Use AVERROR return codes instead of -1

Only partially merged, as the first hunk is not correct and would result
in endless log spam.

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
This commit is contained in:
Hendrik Leppkes 2015-08-07 09:54:12 +02:00
commit 8015150f43

View File

@ -1191,15 +1191,16 @@ static inline int get_avc_nalsize(H264Context *h, const uint8_t *buf,
{ {
int i, nalsize = 0; int i, nalsize = 0;
if (*buf_index >= buf_size - h->nal_length_size) if (*buf_index >= buf_size - h->nal_length_size) {
return -1; return AVERROR(EAGAIN);
}
for (i = 0; i < h->nal_length_size; i++) for (i = 0; i < h->nal_length_size; i++)
nalsize = ((unsigned)nalsize << 8) | buf[(*buf_index)++]; nalsize = ((unsigned)nalsize << 8) | buf[(*buf_index)++];
if (nalsize <= 0 || nalsize > buf_size - *buf_index) { if (nalsize <= 0 || nalsize > buf_size - *buf_index) {
av_log(h->avctx, AV_LOG_ERROR, av_log(h->avctx, AV_LOG_ERROR,
"AVC: nal size %d\n", nalsize); "AVC: nal size %d\n", nalsize);
return -1; return AVERROR_INVALIDDATA;
} }
return nalsize; return nalsize;
} }