From 12ac3814081f9a5e97f92247536b7251ea59b62b Mon Sep 17 00:00:00 2001 From: Thomas Jarosch Date: Thu, 25 Aug 2011 19:39:01 +0000 Subject: Fix file descriptor leak on error Credit goes to "cppcheck". git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30349 a1c6a512-1295-4272-9138-f99709370657 --- apps/playlist.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/playlist.c b/apps/playlist.c index 8334260242..3d3b5f44f8 100644 --- a/apps/playlist.c +++ b/apps/playlist.c @@ -418,10 +418,13 @@ static int recreate_control(struct playlist_info* playlist) playlist->control_fd = open(playlist->control_filename, O_CREAT|O_RDWR|O_TRUNC, 0666); if (playlist->control_fd < 0) + { + close(temp_fd); return -1; + } playlist->filename[playlist->dirlen-1] = '\0'; - + /* cannot call update_control() because of mutex */ result = fdprintf(playlist->control_fd, "P:%d:%s:%s\n", PLAYLIST_CONTROL_FILE_VERSION, dir, file); -- cgit v1.2.3