Luca Barbato <lu_z...@gentoo.org> writes:

> On 18/04/12 12:48, Mans Rullgard wrote:
>> Signed-off-by: Mans Rullgard <m...@mansr.com>
>
> It seems an out of memory fix, am I wrong?

I instinctively added that too.  Would you prefer splitting it in two?

>> ---
>>  libavformat/nutdec.c |    8 ++++++--
>>  1 files changed, 6 insertions(+), 2 deletions(-)
>> 
>> diff --git a/libavformat/nutdec.c b/libavformat/nutdec.c
>> index 004a2ea..f3cb4d8 100644
>> --- a/libavformat/nutdec.c
>> +++ b/libavformat/nutdec.c
>> @@ -305,14 +305,18 @@ static int decode_main_header(NUTContext *nut)
>>          GET_V(nut->header_count, tmp < 128U)
>>          nut->header_count++;
>>          for (i = 1; i < nut->header_count; i++) {
>> +            uint8_t *hdr;
>>              GET_V(nut->header_len[i], tmp > 0 && tmp < 256);
>>              rem -= nut->header_len[i];
>>              if (rem < 0) {
>>                  av_log(s, AV_LOG_ERROR, "invalid elision header\n");
>>                  return AVERROR_INVALIDDATA;
>>              }
>> -            nut->header[i] = av_malloc(nut->header_len[i]);
>> -            avio_read(bc, nut->header[i], nut->header_len[i]);
>> +            hdr = av_malloc(nut->header_len[i]);
>> +            if (!hdr)
>> +                return AVERROR(ENOMEM);
>> +            avio_read(bc, hdr, nut->header_len[i]);
>> +            nut->header[i] = hdr;
>>          }
>>          assert(nut->header_len[0] == 0);
>>      }
>
> -- 
>
> Luca Barbato
> Gentoo/linux
> http://dev.gentoo.org/~lu_zero
>

-- 
Måns Rullgård
m...@mansr.com
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to