static void
gnm_file_casereader_destroy (struct casereader *reader UNUSED, void *r_)
{
+ int i;
struct gnumeric_reader *r = r_;
if ( r == NULL)
return ;
caseproto_unref (r->proto);
-#if 0
for (i = 0; i < r->spreadsheet.n_sheets; ++i)
{
xmlFree (r->sheets[i].name);
free (r);
-#endif
}
static void
static void
ods_file_casereader_destroy (struct casereader *reader UNUSED, void *r_)
{
+ int i;
struct ods_reader *r = r_;
if ( r == NULL)
return ;
caseproto_unref (r->proto);
- // free (r);
+ xmlFree (r->current_sheet_name);
+
+ for (i = 0; i < r->n_allocated_sheets; ++i)
+ {
+ xmlFree (r->sheets[i].name);
+ }
+
+ free (r->sheets);
+
+ free (r);
}
static void
if (! xmlTextReaderIsEmptyElement (r->xtr))
r->state = STATE_ROW;
+
+ xmlFree (value);
}
else if (0 == xmlStrcasecmp (name, _xml("table:table")) &&
(XML_READER_TYPE_END_ELEMENT == r->node_type))