void ff_id3v2_free_extra_meta(ID3v2ExtraMeta **extra_meta)

{

    ID3v2ExtraMeta *current = *extra_meta, *next;

    void (*free_func)(ID3v2ExtraMeta*);



    while (current) {

        if ((free_func = get_extra_meta_func(current->tag, 1)->free))

            free_func(current->data);

        next = current->next;

        av_freep(&current);

        current = next;

    }

}

void ff_id3v2_free_extra_meta(ID3v2ExtraMeta **extra_meta)

{

    ID3v2ExtraMeta *current = *extra_meta, *next;

    void (*free_func)(ID3v2ExtraMeta*);



    while (current) {

        if ((free_func = get_extra_meta_func(current->tag, 1)->free))

            free_func(current->data);

        next = current->next;

        av_freep(&current);

        current = next;

    }

}

    void (*free_func)(ID3v2ExtraMeta*);         if ((free_func = get_extra_meta_func(current->tag, 1)->free))             free_func(current->data);
VAR_2voidVAR_2 VAR_2ff_id3v2_free_extra_metaVAR_2(VAR_2ID3v2ExtraMetaVAR_2 **VAR_2VAR_0VAR_2)

{

    VAR_2ID3v2ExtraMetaVAR_2 *VAR_2currentVAR_2 = *VAR_2VAR_0VAR_2, *VAR_2nextVAR_2;

    VAR_2voidVAR_2 (*VAR_2VAR_1VAR_2)(VAR_2ID3v2ExtraMetaVAR_2*);



    VAR_2whileVAR_2 (VAR_2currentVAR_2) {

        VAR_2ifVAR_2 ((VAR_2VAR_1VAR_2 = VAR_2get_extra_meta_funcVAR_2(VAR_2currentVAR_2->VAR_2tagVAR_2, VAR_21VAR_2)->VAR_2freeVAR_2))

            VAR_2VAR_1VAR_2(VAR_2currentVAR_2->VAR_2dataVAR_2);

        VAR_2nextVAR_2 = VAR_2currentVAR_2->VAR_2nextVAR_2;

        VAR_2av_freepVAR_2(&VAR_2currentVAR_2);

        VAR_2currentVAR_2 = VAR_2nextVAR_2;

    }

}

VAR_2voidVAR_2 VAR_2ff_id3v2_free_extra_metaVAR_2(VAR_2ID3v2ExtraMetaVAR_2 **VAR_2VAR_0VAR_2)
{ VAR_2ID3v2ExtraMetaVAR_2 *VAR_2currentVAR_2 = *VAR_2VAR_0VAR_2, *VAR_2nextVAR_2; VAR_2voidVAR_2 (*VAR_2VAR_1VAR_2)(VAR_2ID3v2ExtraMetaVAR_2*); VAR_2whileVAR_2 (VAR_2currentVAR_2) { VAR_2ifVAR_2 ((VAR_2VAR_1VAR_2 = VAR_2get_extra_meta_funcVAR_2(VAR_2currentVAR_2->VAR_2tagVAR_2, VAR_21VAR_2)->VAR_2freeVAR_2))
VAR_2VAR_1VAR_2(VAR_2currentVAR_2->VAR_2dataVAR_2); VAR_2nextVAR_2 = VAR_2currentVAR_2->VAR_2nextVAR_2; VAR_2av_freepVAR_2(&VAR_2currentVAR_2); VAR_2currentVAR_2 = VAR_2nextVAR_2; } }