[augeas-devel] [PATCH] Fix memory leak in make_exn_lns_error

David Lutterkort dlutter at redhat.com
Thu May 29 05:01:33 UTC 2008


1 file changed, 4 insertions(+), 1 deletion(-)
src/builtin.c |    5 ++++-


# HG changeset patch
# User David Lutterkort <dlutter at redhat.com>
# Date 1212037104 25200
# Node ID b613b508ee5d3d621873a71d29dede62cef44adc
# Parent  cc82f4515c31f7461742a62ff53b3792e244c7bd
Fix memory leak in make_exn_lns_error

diff -r cc82f4515c31 -r b613b508ee5d src/builtin.c
--- a/src/builtin.c	Fri May 23 11:18:18 2008 -0700
+++ b/src/builtin.c	Wed May 28 21:58:24 2008 -0700
@@ -81,10 +81,13 @@ static struct value *make_exn_lns_error(
 
     v = make_exn_value(ref(info), "%s", err->message);
     if (err->pos >= 0) {
+        char *pos = format_pos(text, err->pos);
         exn_printf_line(v,
                         "Error encountered here (%d characters into string)",
                         err->pos);
-        exn_printf_line(v, "%s", format_pos(text, err->pos));
+        if (pos != NULL)
+            exn_printf_line(v, "%s", pos);
+        free(pos);
     } else {
         exn_printf_line(v, "Error encountered at path %s", err->path);
     }




More information about the augeas-devel mailing list