X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdata%2Fgnumeric-reader.c;h=cda95e5378e5d435c524aa50086fc3e77e0c87da;hb=261eabd9113876a12994f7b419cbf3cf1ee98453;hp=578ff8ab4b69a67764653df5eff52154a46a6abe;hpb=9d9870db0d89e8f7f72de8ff5c9d37c8d9eb15c2;p=pspp diff --git a/src/data/gnumeric-reader.c b/src/data/gnumeric-reader.c index 578ff8ab4b..cda95e5378 100644 --- a/src/data/gnumeric-reader.c +++ b/src/data/gnumeric-reader.c @@ -63,6 +63,7 @@ static void gnm_file_casereader_destroy (struct casereader *, void *); static struct ccase *gnm_file_casereader_read (struct casereader *, void *); + static const struct casereader_class gnm_file_casereader_class = { gnm_file_casereader_read, @@ -133,6 +134,23 @@ struct gnumeric_reader }; +void +gnumeric_destroy (struct spreadsheet *s) +{ + struct gnumeric_reader *r = s; + int i; + + for (i = 0; i < s->n_sheets; ++i) + { + xmlFree (r->sheets[i].name); + } + + free (r->sheets); + + free (r); +} + + const char * gnumeric_get_sheet_name (struct spreadsheet *s, int n) { @@ -175,7 +193,6 @@ gnumeric_get_sheet_range (struct spreadsheet *s, int n) static void gnm_file_casereader_destroy (struct casereader *reader UNUSED, void *r_) { - int i; struct gnumeric_reader *r = r_; if ( r == NULL) return ; @@ -188,18 +205,9 @@ gnm_file_casereader_destroy (struct casereader *reader UNUSED, void *r_) case_unref (r->first_case); caseproto_unref (r->proto); - - for (i = 0; i < r->spreadsheet.n_sheets; ++i) - { - xmlFree (r->sheets[i].name); - } - - free (r->sheets); - - - free (r); } + static void process_node (struct gnumeric_reader *r) { @@ -424,13 +432,6 @@ struct var_spec }; -void -gnumeric_destroy (struct spreadsheet *s) -{ - gnm_file_casereader_destroy (NULL, s); -} - - static void gnumeric_error_handler (void *ctx, const char *mesg, UNUSED xmlParserSeverities sev, xmlTextReaderLocatorPtr loc)