libavformat/id3v2.c:206: error: Uninitialized Value
  The value read from tflags was never initialized.

libavformat/id3v2.c:206:13: 
204.         }
205. 
206.         if (tflags & (ID3v2_FLAG_ENCRYPTION | ID3v2_FLAG_COMPRESSION)) {
                 ^
207.             av_log(s, AV_LOG_WARNING, "Skipping encrypted/compressed ID3v2 frame %s.\n", tag);
208.             avio_seek(s->pb, tlen, SEEK_CUR);

static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t flags)
{
    int isv34, tlen, unsync;
    char tag[5];
    int64_t next;
    int taghdrlen;
    const char *reason;
    AVIOContext pb;
    unsigned char *buffer = NULL;
    int buffer_size = 0;
    switch (version) {
    case 2:
        if (flags & 0x40) {
            reason = "compression";
            goto error;
        }
        isv34 = 0;
        taghdrlen = 6;
        break;
    case 3:
    case 4:
        isv34 = 1;
        taghdrlen = 10;
        break;
    default:
        reason = "version";
        goto error;
    }
    unsync = flags & 0x80;
    if (isv34 && flags & 0x40)
        avio_seek(s->pb, get_size(s->pb, 4), SEEK_CUR);
    while (len >= taghdrlen) {
        unsigned int tflags;
        int tunsync = 0;
        if (isv34) {
            avio_read(s->pb, tag, 4);
            tag[4] = 0;
            if(version==3){
                tlen = avio_rb32(s->pb);
            }else
                tlen = get_size(s->pb, 4);
            tflags = avio_rb16(s->pb);
            tunsync = tflags & ID3v2_FLAG_UNSYNCH;
        } else {
            avio_read(s->pb, tag, 3);
            tag[3] = 0;
            tlen = avio_rb24(s->pb);
        }
        len -= taghdrlen + tlen;
        if (len < 0)
            break;
        next = url_ftell(s->pb) + tlen;
        if (tflags & ID3v2_FLAG_DATALEN) {
            avio_rb32(s->pb);
            tlen -= 4;
        }
        if (tflags & (ID3v2_FLAG_ENCRYPTION | ID3v2_FLAG_COMPRESSION)) {
            av_log(s, AV_LOG_WARNING, "Skipping encrypted/compressed ID3v2 frame %s.\n", tag);
            avio_seek(s->pb, tlen, SEEK_CUR);
        } else if (tag[0] == 'T') {
            if (unsync || tunsync) {
                int i, j;
                av_fast_malloc(&buffer, &buffer_size, tlen);
                for (i = 0, j = 0; i < tlen; i++, j++) {
                    buffer[j] = avio_r8(s->pb);
                    if (j > 0 && !buffer[j] && buffer[j - 1] == 0xff) {
                        j--;
                    }
                }
                ffio_init_context(&pb, buffer, j, 0, NULL, NULL, NULL, NULL);
                read_ttag(s, &pb, j, tag);
            } else {
                read_ttag(s, s->pb, tlen, tag);
            }
        }
        else if (!tag[0]) {
            if (tag[1])
                av_log(s, AV_LOG_WARNING, "invalid frame id, assuming padding");
            avio_seek(s->pb, tlen, SEEK_CUR);
            break;
        }
        avio_seek(s->pb, next, SEEK_SET);
    }
    if (len > 0) {
        avio_seek(s->pb, len, SEEK_CUR);
    }
    if (version == 4 && flags & 0x10)
        avio_seek(s->pb, 10, SEEK_CUR);
    av_free(buffer);
    return;
  error:
    av_log(s, AV_LOG_INFO, "ID3v2.%d tag skipped, cannot handle %s\n", version, reason);
    avio_seek(s->pb, len, SEEK_CUR);
    av_free(buffer);
}
['static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t flags)\n{\n    int isv34, tlen, unsync;\n    char tag[5];\n    int64_t next;\n    int taghdrlen;\n    const char *reason;\n    AVIOContext pb;\n    unsigned char *buffer = NULL;\n    int buffer_size = 0;\n    switch (version) {\n    case 2:\n        if (flags & 0x40) {\n            reason = "compression";\n            goto error;\n        }\n        isv34 = 0;\n        taghdrlen = 6;\n        break;\n    case 3:\n    case 4:\n        isv34 = 1;\n        taghdrlen = 10;\n        break;\n    default:\n        reason = "version";\n        goto error;\n    }\n    unsync = flags & 0x80;\n    if (isv34 && flags & 0x40)\n        avio_seek(s->pb, get_size(s->pb, 4), SEEK_CUR);\n    while (len >= taghdrlen) {\n        unsigned int tflags;\n        int tunsync = 0;\n        if (isv34) {\n            avio_read(s->pb, tag, 4);\n            tag[4] = 0;\n            if(version==3){\n                tlen = avio_rb32(s->pb);\n            }else\n                tlen = get_size(s->pb, 4);\n            tflags = avio_rb16(s->pb);\n            tunsync = tflags & ID3v2_FLAG_UNSYNCH;\n        } else {\n            avio_read(s->pb, tag, 3);\n            tag[3] = 0;\n            tlen = avio_rb24(s->pb);\n        }\n        len -= taghdrlen + tlen;\n        if (len < 0)\n            break;\n        next = url_ftell(s->pb) + tlen;\n        if (tflags & ID3v2_FLAG_DATALEN) {\n            avio_rb32(s->pb);\n            tlen -= 4;\n        }\n        if (tflags & (ID3v2_FLAG_ENCRYPTION | ID3v2_FLAG_COMPRESSION)) {\n            av_log(s, AV_LOG_WARNING, "Skipping encrypted/compressed ID3v2 frame %s.\\n", tag);\n            avio_seek(s->pb, tlen, SEEK_CUR);\n        } else if (tag[0] == \'T\') {\n            if (unsync || tunsync) {\n                int i, j;\n                av_fast_malloc(&buffer, &buffer_size, tlen);\n                for (i = 0, j = 0; i < tlen; i++, j++) {\n                    buffer[j] = avio_r8(s->pb);\n                    if (j > 0 && !buffer[j] && buffer[j - 1] == 0xff) {\n                        j--;\n                    }\n                }\n                ffio_init_context(&pb, buffer, j, 0, NULL, NULL, NULL, NULL);\n                read_ttag(s, &pb, j, tag);\n            } else {\n                read_ttag(s, s->pb, tlen, tag);\n            }\n        }\n        else if (!tag[0]) {\n            if (tag[1])\n                av_log(s, AV_LOG_WARNING, "invalid frame id, assuming padding");\n            avio_seek(s->pb, tlen, SEEK_CUR);\n            break;\n        }\n        avio_seek(s->pb, next, SEEK_SET);\n    }\n    if (len > 0) {\n        avio_seek(s->pb, len, SEEK_CUR);\n    }\n    if (version == 4 && flags & 0x10)\n        avio_seek(s->pb, 10, SEEK_CUR);\n    av_free(buffer);\n    return;\n  error:\n    av_log(s, AV_LOG_INFO, "ID3v2.%d tag skipped, cannot handle %s\\n", version, reason);\n    avio_seek(s->pb, len, SEEK_CUR);\n    av_free(buffer);\n}']