]> git.sur5r.net Git - i3/i3/commitdiff
Fix memory leak when config conversion fails (#3006)
authorMichael Stapelberg <stapelberg@users.noreply.github.com>
Sat, 30 Sep 2017 17:15:58 +0000 (10:15 -0700)
committerGitHub <noreply@github.com>
Sat, 30 Sep 2017 17:15:58 +0000 (10:15 -0700)
This happens on an empty config file, for example.

src/config_parser.c

index 58a5552ceb27d77d7f267004cf457a636c902fe1..9d8369c80e46e2b9e1d4503644a717bd0acbaaac 100644 (file)
@@ -764,6 +764,7 @@ static char *migrate_config(char *input, off_t size) {
     wait(&status);
     if (!WIFEXITED(status)) {
         fprintf(stderr, "Child did not terminate normally, using old config file (will lead to broken behaviour)\n");
+        FREE(converted);
         return NULL;
     }
 
@@ -778,6 +779,7 @@ static char *migrate_config(char *input, off_t size) {
             fprintf(stderr, "# i3 config file (v4)\n");
             /* TODO: nag the user with a message to include a hint for i3 in their config file */
         }
+        FREE(converted);
         return NULL;
     }