aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ape.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/ape.c b/src/ape.c
index 5fca98e28..5f4da3f2e 100644
--- a/src/ape.c
+++ b/src/ape.c
@@ -60,8 +60,10 @@ ape_scan_internal(FILE *fp, tag_ape_callback_t callback, void *ctx)
assert(remaining > 10);
char *buffer = g_malloc(remaining);
- if (fread(buffer, 1, remaining, fp) != remaining)
+ if (fread(buffer, 1, remaining, fp) != remaining) {
+ g_free(buffer);
return false;
+ }
/* read tags */
unsigned n = GUINT32_FROM_LE(footer.count);