]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
lib/mangle: fix a memory leak in the test case
authorCong Wang <xiyou.wangcong@gmail.com>
Wed, 20 Jun 2012 08:42:05 +0000 (16:42 +0800)
committerKarel Zak <kzak@redhat.com>
Thu, 21 Jun 2012 06:21:43 +0000 (08:21 +0200)
Marek reported there is a memory leak in lib/mangle.c

  CC       mangle.o
mangle.c:160:9: warning: Memory is never released; potential leak of memory pointed to by 'ss'

This patch fixes it.

Reported-by: Marek Otahal <markotahal@gmail.com>
Cc: Karel Zak <kzak@redhat.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
lib/mangle.c

index 656918c4bbbe4da3ec1724d70ee4aeae414749eb..faddeb879d11f1e66441d22b316f8311d6f44c36 100644 (file)
@@ -131,14 +131,18 @@ char *unmangle(const char *s, char **end)
 #include <errno.h>
 int main(int argc, char *argv[])
 {
+       char *p = NULL;
        if (argc < 3) {
                fprintf(stderr, "usage: %s --mangle|unmangle <string>\n",
                                                program_invocation_short_name);
                return EXIT_FAILURE;
        }
 
-       if (!strcmp(argv[1], "--mangle"))
-               printf("mangled: '%s'\n", mangle(argv[2]));
+       if (!strcmp(argv[1], "--mangle")) {
+               p = mangle(argv[2]);
+               printf("mangled: '%s'\n", p);
+               free(p);
+       }
 
        else if (!strcmp(argv[1], "--unmangle")) {
                char *x = unmangle(argv[2], NULL);