X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fmhfree.c;h=bf3382c5e4e5334c16d5a6b093666244d5d8e26e;hb=10e03b3fba3e01052baf92c963c46a2a5529b4e0;hp=6918e0e35a47958627e5d823a37d57398da3bcd9;hpb=714b5c530ece27ea2835a313013f5b770163403c;p=mmh diff --git a/uip/mhfree.c b/uip/mhfree.c index 6918e0e..bf3382c 100644 --- a/uip/mhfree.c +++ b/uip/mhfree.c @@ -30,7 +30,6 @@ void freects_done(int); static void free_text(CT); static void free_multi(CT); static void free_partial(CT); -static void free_external(CT); /* @@ -64,31 +63,25 @@ free_content(CT ct) ** parts which need to be freed. */ switch (ct->c_type) { - case CT_MULTIPART: - free_multi(ct); - break; - - case CT_MESSAGE: - switch (ct->c_subtype) { - case MESSAGE_PARTIAL: - free_partial(ct); - break; - - case MESSAGE_EXTERNAL: - free_external(ct); - break; - } - break; - - case CT_TEXT: - free_text(ct); - break; + case CT_MULTIPART: + free_multi(ct); + break; + + case CT_MESSAGE: + if (ct->c_subtype == MESSAGE_PARTIAL) { + free_partial(ct); + } + break; + + case CT_TEXT: + free_text(ct); + break; } + if (ct->c_charset) + free(ct->c_charset); if (ct->c_showproc) free(ct->c_showproc); - if (ct->c_termproc) - free(ct->c_termproc); if (ct->c_storeproc) free(ct->c_storeproc); @@ -233,23 +226,6 @@ free_partial(CT ct) } -static void -free_external(CT ct) -{ - struct exbody *e; - - if (!(e = (struct exbody *) ct->c_ctparams)) - return; - - free_content(e->eb_content); - if (e->eb_body) - free(e->eb_body); - - free((char *) e); - ct->c_ctparams = NULL; -} - - /* ** Free data structures related to encoding/decoding ** Content-Transfer-Encodings.