summaryrefslogtreecommitdiff
path: root/input.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2002-08-23 14:02:01 +0000
committerSimon Tatham <anakin@pobox.com>2002-08-23 14:02:01 +0000
commitbe179670d9d2703e433869d689bd30251c6ddb72 (patch)
tree5c025cb65f8fc3a9d03a1b5ce149a3ec8d7af801 /input.c
parent376e2a46704c33d50db68cbf9ab66f7506ee3875 (diff)
downloadhalibut-be179670d9d2703e433869d689bd30251c6ddb72.zip
halibut-be179670d9d2703e433869d689bd30251c6ddb72.tar.gz
halibut-be179670d9d2703e433869d689bd30251c6ddb72.tar.bz2
halibut-be179670d9d2703e433869d689bd30251c6ddb72.tar.xz
Just had a play with this newfangled `valgrind' memory debugger
thingy, which seems moderately cool and has reported a few very small memory leaks. Now apparently fixed. [originally from svn r1863]
Diffstat (limited to 'input.c')
-rw-r--r--input.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/input.c b/input.c
index 2e0dabf..d4ecaeb 100644
--- a/input.c
+++ b/input.c
@@ -547,7 +547,7 @@ static void read_file(paragraph ***ret, input *in, indexdata *idx) {
}
already = FALSE;
if (t.type == tok_eof)
- return;
+ break;
/*
* Parse code paragraphs separately.
@@ -1181,6 +1181,11 @@ static void read_file(paragraph ***ret, input *in, indexdata *idx) {
stk_free(parsestk);
addpara(par, ret);
}
+
+ /*
+ * We break to here rather than returning, because otherwise
+ * this cleanup doesn't happen.
+ */
dtor(t);
macrocleanup(macros);
}