diff options
author | NotZed <NotZed@HelixCode.com> | 2000-05-12 02:39:11 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2000-05-12 02:39:11 +0800 |
commit | 62c8174bac8139b29a71ea79c879c4cbdd6cd064 (patch) | |
tree | dbbbfe72cbd5b4dc4eb14a5683020a949903f133 /e-util/e-sexp.c | |
parent | d509f47a95ddc37b4ee566eb5980c27f6626c8dc (diff) | |
download | gsoc2013-evolution-62c8174bac8139b29a71ea79c879c4cbdd6cd064.tar.gz gsoc2013-evolution-62c8174bac8139b29a71ea79c879c4cbdd6cd064.tar.zst gsoc2013-evolution-62c8174bac8139b29a71ea79c879c4cbdd6cd064.zip |
Destroy the g_scanner when cleaning up. (e_sexp_finalise): Free symbol
2000-05-11 NotZed <NotZed@HelixCode.com>
* e-sexp.c (e_sexp_finalise): Destroy the g_scanner when cleaning up.
(e_sexp_finalise): Free symbol table on finalise.
svn path=/trunk/; revision=2988
Diffstat (limited to 'e-util/e-sexp.c')
-rw-r--r-- | e-util/e-sexp.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/e-util/e-sexp.c b/e-util/e-sexp.c index 0f9abc636a..7d7b5f5f0f 100644 --- a/e-util/e-sexp.c +++ b/e-util/e-sexp.c @@ -903,6 +903,15 @@ static struct { }; static void +free_symbol(void *key, void *value, void *data) +{ + struct _ESExpSymbol *s = value; + + g_free(s->name); + g_free(s); +} + +static void e_sexp_finalise(GtkObject *o) { ESExp *s = (ESExp *)o; @@ -912,6 +921,9 @@ e_sexp_finalise(GtkObject *o) s->tree = NULL; } + g_scanner_scope_foreach_symbol(s->scanner, 0, free_symbol, 0); + g_scanner_destroy(s->scanner); + ((GtkObjectClass *)(parent_class))->finalize((GtkObject *)o); } |