free (m->mp_content_before);
free (m->mp_content_after);
for (part = m->mp_parts; part; part = next) {
next = part->mp_next;
free_content (part->mp_part);
free (m->mp_content_before);
free (m->mp_content_after);
for (part = m->mp_parts; part; part = next) {
next = part->mp_next;
free_content (part->mp_part);