diff options
| author | Joseph Hunkeler <jhunkeler@gmail.com> | 2026-04-26 01:49:02 -0400 |
|---|---|---|
| committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2026-04-26 01:49:02 -0400 |
| commit | 421903a1379353f07a10deb335ed3c0361233064 (patch) | |
| tree | 3219db1cff5ea3eaede98dcdfeda32cdc5ca70ef | |
| parent | d2892e347a619325550fa45cb8da5914bf2a5343 (diff) | |
| download | stasis-421903a1379353f07a10deb335ed3c0361233064.tar.gz | |
Fix file handle leaks
| -rw-r--r-- | src/cli/stasis_indexer/readmes.c | 1 | ||||
| -rw-r--r-- | src/lib/delivery/delivery_postprocess.c | 1 | ||||
| -rw-r--r-- | tests/test_relocation.c | 3 |
3 files changed, 5 insertions, 0 deletions
diff --git a/src/cli/stasis_indexer/readmes.c b/src/cli/stasis_indexer/readmes.c index 749b1ee..7357fca 100644 --- a/src/cli/stasis_indexer/readmes.c +++ b/src/cli/stasis_indexer/readmes.c @@ -67,6 +67,7 @@ int indexer_readmes(struct Delivery **ctx, const size_t nelem) { latest_deliveries[i]->info.build_number, strstr((*ctx)->rules.release_fmt, "%p") ? latest_deliveries[i]->meta.python_compact : "" ) < 0) { SYSERROR("%s", "Unable to allocate bytes for pattern"); + fclose(indexfp); return -1; } diff --git a/src/lib/delivery/delivery_postprocess.c b/src/lib/delivery/delivery_postprocess.c index 95bcc0a..3ff1d56 100644 --- a/src/lib/delivery/delivery_postprocess.c +++ b/src/lib/delivery/delivery_postprocess.c @@ -243,6 +243,7 @@ int delivery_index_wheel_artifacts(struct Delivery *ctx) { FILE *bottom_fp = fopen(bottom_index, "w+"); if (!bottom_fp) { closedir(dp); + fclose(top_fp); return -3; } diff --git a/tests/test_relocation.c b/tests/test_relocation.c index 3454a69..4a02e01 100644 --- a/tests/test_relocation.c +++ b/tests/test_relocation.c @@ -40,6 +40,7 @@ void test_file_replace_text() { STASIS_ASSERT(file_replace_text(filename, target, "^^^", 0) == 0, "string replacement failed"); } else { STASIS_ASSERT(false, "failed to open file for writing"); + fclose(fp); return; } @@ -48,8 +49,10 @@ void test_file_replace_text() { if (fp) { fread(input, sizeof(*input), sizeof(input), fp); STASIS_ASSERT(strcmp(input, expected) == 0, "unexpected replacement"); + fclose(fp); } else { STASIS_ASSERT(false, "failed to open file for reading"); + fclose(fp); return; } } |
