diff options
author | Joseph Hunkeler <jhunkeler@users.noreply.github.com> | 2025-01-31 00:14:19 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-31 00:14:19 -0500 |
commit | 3ef26a80fc365ec9c857aaf40741fa6acf8987fa (patch) | |
tree | b8dfd9d162e136b921366cbe1350acbd15866385 /src/cli/stasis_indexer/helpers.c | |
parent | f64f82bc6a1aec53a924d21deb65a60da1020d0e (diff) | |
parent | 4de01eed23b68a7872fce17ec27b41b333bb3d10 (diff) | |
download | stasis-3ef26a80fc365ec9c857aaf40741fa6acf8987fa.tar.gz |
Merge pull request #83 from jhunkeler/bug-fix-leaks-indexer
Indexer: Fix garbage in file path
Diffstat (limited to 'src/cli/stasis_indexer/helpers.c')
-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; } |