# HG changeset patch # User alex # Date 1088244559 0 # Node ID 9a1f3f29bf99d64b284723319b8e54e41ae14e8f # Parent dd81e5be0c7a31a54cd0252fa631275675323d2d skip_utf8, unused yet diff -r dd81e5be0c7a -r 9a1f3f29bf99 flac.c --- a/flac.c Sat Jun 26 10:08:49 2004 +0000 +++ b/flac.c Sat Jun 26 10:09:19 2004 +0000 @@ -142,6 +142,27 @@ return val; } +static int skip_utf8(GetBitContext *gb) +{ + int ones=0, bytes; + + while(get_bits1(gb)) + ones++; + + if (ones==0) bytes=0; + else if(ones==1) return -1; + else bytes= ones - 1; + + skip_bits(gb, 7-ones); + while(bytes--){ + const int tmp = get_bits(gb, 8); + + if((tmp>>6) != 2) + return -1; + } + return 0; +} + static int get_crc8(const uint8_t *buf, int count){ int crc=0; int i;