diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/cli/stasis_indexer/helpers.c | 6 | 
1 files changed, 6 insertions, 0 deletions
| diff --git a/src/cli/stasis_indexer/helpers.c b/src/cli/stasis_indexer/helpers.c index 6d2fdd0..5ae01ca 100644 --- a/src/cli/stasis_indexer/helpers.c +++ b/src/cli/stasis_indexer/helpers.c @@ -35,6 +35,7 @@ int get_pandoc_version(size_t *result) {      char *version_str = shell_output("pandoc --version", &state);      if (state || !version_str) {          // an error occurred +        guard_free(version_str);          return -1;      } @@ -44,6 +45,7 @@ int get_pandoc_version(size_t *result) {          char *v_begin = &version_str[7];          if (!v_begin) {              SYSERROR("unexpected pandoc output: %s", version_str); +            guard_free(version_str);              return -1;          }          char *v_end = strchr(version_str, '\n'); @@ -54,6 +56,7 @@ int get_pandoc_version(size_t *result) {          char **parts = split(v_begin, ".", 0);          if (!parts) {              SYSERROR("unable to split pandoc version string, '%s': %s", version_str, strerror(errno)); +            guard_free(version_str);              return -1;          } @@ -71,11 +74,14 @@ int get_pandoc_version(size_t *result) {              // pack version element into result              *result = *result << 8 | tmp;          } +        GENERIC_ARRAY_FREE(parts);      } else {          // invalid version string +        guard_free(version_str);          return 1;      } +    guard_free(version_str);      return 0;  } | 
