summaryrefslogtreecommitdiff
path: root/libguile/script.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2011-07-28 19:12:07 +0200
committerAndy Wingo <wingo@pobox.com>2011-07-29 09:10:37 +0200
commit2700aa43f21d927fb208b6779a07c8f63d91c27e (patch)
treebec1f7d471ec762249d98f079c164388b8518269 /libguile/script.c
parent7c888dfa6e67e13dd89c459df3ee28f13ab681ec (diff)
downloadguile-2700aa43f21d927fb208b6779a07c8f63d91c27e.tar.gz
fix a leak on startup from script.c
* libguile/script.c (scm_get_meta_args): Free nargv. Thanks to http://article.gmane.org/gmane.lisp.guile.devel/12685. We leak narg though.
Diffstat (limited to 'libguile/script.c')
-rw-r--r--libguile/script.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libguile/script.c b/libguile/script.c
index 83dcdd5b9..5e0685a56 100644
--- a/libguile/script.c
+++ b/libguile/script.c
@@ -317,6 +317,7 @@ scm_get_meta_args (int argc, char **argv)
switch (getc (f))
{
case EOF:
+ free (nargv);
return 0L;
default:
continue;
@@ -324,6 +325,7 @@ scm_get_meta_args (int argc, char **argv)
goto found_args;
}
found_args:
+ /* FIXME: we leak the result of calling script_read_arg. */
while ((narg = script_read_arg (f)))
if (!(nargv = (char **) realloc (nargv,
(1 + ++nargc) * sizeof (char *))))