Commit Diff
Commit:
9491bb715d868c641ea2de62134ea28e37e58b51
Date:
Fri Feb 18 21:55:24 2022
UTC
Message:
don't leak file descriptors
--- player_flac.c
+++ player_flac.c
@@ -118,4 +118,6 @@ play_flac(int fd)
}
FLAC__stream_decoder_delete(decoder);
+
+ fclose(f);
}
--- player_mad.c
+++ player_mad.c
@@ -175,15 +175,18 @@ play_mp3(int fd)
if (fstat(fd, &stat) == -1) {
log_warn("fstat");
- return;
+ goto end;
}
m = mmap(NULL, stat.st_size, PROT_READ, MAP_PRIVATE, fd, 0);
if (m == MAP_FAILED) {
log_warn("map failed");
- return;
+ goto end;
}
decode(m, stat.st_size);
munmap(m, stat.st_size);
+
+end:
+ close(fd);
}
--- player_oggvorbis.c
+++ player_oggvorbis.c
@@ -86,4 +86,5 @@ play_oggvorbis(int fd)
}
ov_clear(&vf);
+ fclose(f);
}
Omar Polo