From 342c68283e46eb55b4433c11fe45ea0d166c656e Mon Sep 17 00:00:00 2001 From: diego Date: Sun, 3 Oct 2010 15:37:17 +0000 Subject: mpeg_hdr.c: move function to avoid forward declaration Move mp_unescape03 function around to avoid forward declaration. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@32433 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/mpeg_hdr.c | 70 +++++++++++++++++++++++++-------------------------- 1 file changed, 34 insertions(+), 36 deletions(-) diff --git a/libmpdemux/mpeg_hdr.c b/libmpdemux/mpeg_hdr.c index 4fb1dc22b0..b42f7e86c2 100644 --- a/libmpdemux/mpeg_hdr.c +++ b/libmpdemux/mpeg_hdr.c @@ -373,7 +373,40 @@ static int h264_parse_vui(mp_mpeg_header_t * picture, unsigned char * buf, unsig return n; } -static int mp_unescape03(unsigned char *buf, int len); +static int mp_unescape03(unsigned char *buf, int len) +{ + unsigned char *dest; + int i, j, skip; + + dest = malloc(len); + if(! dest) + return 0; + + j = i = skip = 0; + while(i <= len-3) + { + if(buf[i] == 0 && buf[i+1] == 0 && buf[i+2] == 3) + { + dest[j] = dest[j+1] = 0; + j += 2; + i += 3; + skip++; + } + else + { + dest[j] = buf[i]; + j++; + i++; + } + } + dest[j] = buf[len-2]; + dest[j+1] = buf[len-1]; + len -= skip; + memcpy(buf, dest, len); + free(dest); + + return len; +} int h264_parse_sps(mp_mpeg_header_t * picture, unsigned char * buf, int len) { @@ -438,41 +471,6 @@ int h264_parse_sps(mp_mpeg_header_t * picture, unsigned char * buf, int len) return n; } -static int mp_unescape03(unsigned char *buf, int len) -{ - unsigned char *dest; - int i, j, skip; - - dest = malloc(len); - if(! dest) - return 0; - - j = i = skip = 0; - while(i <= len-3) - { - if(buf[i] == 0 && buf[i+1] == 0 && buf[i+2] == 3) - { - dest[j] = dest[j+1] = 0; - j += 2; - i += 3; - skip++; - } - else - { - dest[j] = buf[i]; - j++; - i++; - } - } - dest[j] = buf[len-2]; - dest[j+1] = buf[len-1]; - len -= skip; - memcpy(buf, dest, len); - free(dest); - - return len; -} - int mp_vc1_decode_sequence_header(mp_mpeg_header_t * picture, unsigned char * buf, int len) { int n, x; -- cgit v1.2.3