Free fname on errors.
diff --git a/lib/zip_source_filep.c b/lib/zip_source_filep.c index 326e536..e838506 100644 --- a/lib/zip_source_filep.c +++ b/lib/zip_source_filep.c
@@ -141,6 +141,7 @@ } if ((zs=zip_source_function_create(read_file, ctx, error)) == NULL) { + free(ctx->fname); free(ctx); return NULL; }
diff --git a/lib/zip_source_win32file.c b/lib/zip_source_win32file.c index 4db1c6f..580dd46 100644 --- a/lib/zip_source_win32file.c +++ b/lib/zip_source_win32file.c
@@ -131,6 +131,7 @@ } if ((zs = zip_source_function_create(_win32_read_file, ctx, error)) == NULL) { + free(ctx->fname); free(ctx); return NULL; }