audioc: Do not leak command buffer.
authorAndre Noll <maan@systemlinux.org>
Fri, 13 Jan 2012 22:43:05 +0000 (23:43 +0100)
committerAndre Noll <maan@systemlinux.org>
Sun, 5 Feb 2012 19:15:45 +0000 (20:15 +0100)
This buffer contains the command to be sent to para_audiod. It is
allocated but never freed.

audioc.c

index 5f92888..64152ce 100644 (file)
--- a/audioc.c
+++ b/audioc.c
@@ -284,7 +284,7 @@ static char *configfile_exists(void)
 int main(int argc, char *argv[])
 {
        int ret = -E_AUDIOC_SYNTAX, fd;
-       char *cf, *buf = NULL, *args;
+       char *cf, *buf = NULL, *args = NULL;
        size_t bufsize;
 
        if (audioc_cmdline_parser(argc, argv, &conf))
@@ -345,6 +345,7 @@ int main(int argc, char *argv[])
        } while (ret >= 0);
 out:
        free(buf);
+       free(args);
        if (ret < 0)
                PARA_ERROR_LOG("%s\n", para_strerror(-ret));
        return ret < 0? EXIT_FAILURE : EXIT_SUCCESS;