From 5555d30bbd492be4241779578327a7fe3a7d99a1 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sun, 1 Nov 2009 17:51:32 +0100 Subject: song_save: free song object on error Fix a minor memory leak. --- src/song_save.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/song_save.c b/src/song_save.c index 731d59e86..f13f1262e 100644 --- a/src/song_save.c +++ b/src/song_save.c @@ -107,6 +107,10 @@ song_load(FILE *fp, struct directory *parent, const char *uri, } else if (0 == strncmp(SONG_MTIME, line, strlen(SONG_MTIME))) { song->mtime = atoi(&(line[strlen(SONG_MTIME)])); } else { + if (song->tag != NULL) + tag_end_add(song->tag); + song_free(song); + g_set_error(error_r, song_save_quark(), 0, "unknown line in db: %s", line); return false; -- cgit v1.2.3