From de2319031060f7ac4e7e4c169944490e43539777 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diego=20=27Flameeyes=27=20Petten=C3=B2?= Date: Tue, 18 Dec 2007 21:12:12 +0100 Subject: Check for buffer_len before allocating the buffer, so it hasn't to be freed. --- src/demuxers/asfheader.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/demuxers/asfheader.c b/src/demuxers/asfheader.c index 35bd187df..720bf5423 100644 --- a/src/demuxers/asfheader.c +++ b/src/demuxers/asfheader.c @@ -605,16 +605,15 @@ asf_header_t *asf_header_new (uint8_t *buffer, int buffer_len) { uint32_t object_count; uint16_t junk; - if (! (asf_header = calloc(1, sizeof(asf_header_internal_t))) ) - return NULL; - lprintf("parsing_asf_header\n"); if (buffer_len < 6) { printf("invalid buffer size\n"); - free(asf_header); return NULL; } + if (! (asf_header = calloc(1, sizeof(asf_header_internal_t))) ) + return NULL; + asf_header->iconv_cd = iconv_open ("UTF-8", "UCS-2LE"); if (asf_header->iconv_cd == (iconv_t)-1) { printf("iconv open error\n"); -- cgit v1.2.3