Browse Source

rtpdec_asf: fix memleak

Based on a suggestion by Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a2b66a366d)
tags/n0.8.3^0
Michael Niedermayer 14 years ago
parent
commit
076a8dfd41
1 changed files with 6 additions and 2 deletions
  1. +6
    -2
      libavformat/rtpdec_asf.c

+ 6
- 2
libavformat/rtpdec_asf.c View File

@@ -233,10 +233,14 @@ static int asfrtp_parse_packet(AVFormatContext *s, PayloadContext *asf,

int cur_len = start_off + len_off - off;
int prev_len = out_len;
void *newbuf;
out_len += cur_len;
asf->buf = av_realloc(asf->buf, out_len);
if(!asf->buf || FFMIN(cur_len, len - off)<0)
if(FFMIN(cur_len, len - off)<0)
return -1;
newbuf = av_realloc(asf->buf, out_len);
if(!newbuf)
return -1;
asf->buf= newbuf;
memcpy(asf->buf + prev_len, buf + off,
FFMIN(cur_len, len - off));
avio_skip(pb, cur_len);


Loading…
Cancel
Save