--- psiconv/trunk/lib/psiconv/data.c 1999/10/29 21:14:58 24 +++ psiconv/trunk/lib/psiconv/data.c 1999/12/03 23:13:55 42 @@ -34,6 +34,7 @@ static void psiconv_free_in_line_layout_aux(void * layout); static void psiconv_free_paragraph_aux(void * paragraph); static void psiconv_free_paint_data_section_aux(void * section); +static void psiconv_free_clipart_section_aux(void * section); psiconv_character_layout psiconv_basic_character_layout(void) { @@ -483,7 +484,7 @@ psiconv_list_free_el(section,&psiconv_free_paint_data_section_aux); } -void psiconv_free_mbm_jumptable_section (psiconv_mbm_jumptable_section section) +void psiconv_free_jumptable_section (psiconv_jumptable_section section) { if (section) psiconv_list_free(section); @@ -513,6 +514,34 @@ } } +void psiconv_free_clipart_section_aux(void *section) +{ + if (section) + free(((psiconv_clipart_section ) section)->picture); +} + +void psiconv_free_clipart_section(psiconv_clipart_section section) +{ + if (section) { + psiconv_free_clipart_section_aux(section); + free(section); + } +} + +void psiconv_free_cliparts(psiconv_cliparts section) +{ + if (section) + psiconv_list_free_el(section,&psiconv_free_clipart_section_aux); +} + +void psiconv_free_clipart_f(psiconv_clipart_f file) +{ + if (file) { + psiconv_free_cliparts(file->sections); + free(file); + } +} + void psiconv_free_file(psiconv_file file) { if (file) { @@ -524,6 +553,8 @@ psiconv_free_mbm_f((psiconv_mbm_f) file->file); else if (file->type == psiconv_sketch_file) psiconv_free_sketch_f((psiconv_sketch_f) file->file); + else if (file->type == psiconv_clipart_file) + psiconv_free_clipart_f((psiconv_clipart_f) file->file); free(file); } }