From 5758a055fb6b7f1e2e61149174c7503994aa62a0 Mon Sep 17 00:00:00 2001 From: Yuxuan Shui Date: Sun, 12 May 2019 15:36:52 +0100 Subject: Handle EOF properly in get_flac_metadata Change-Id: I5e581990046a9f4a0859787aff2fd6fc06fbf7f5 --- docs/CREDITS | 1 + lib/rbcodec/metadata/flac.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/CREDITS b/docs/CREDITS index a1041f4952..db74a3bacd 100644 --- a/docs/CREDITS +++ b/docs/CREDITS @@ -697,6 +697,7 @@ Boris Kovačević Stéphane Moutard-Martin Rune Pade Michael Rey +Yuxuan Shui The libmad team The wavpack team diff --git a/lib/rbcodec/metadata/flac.c b/lib/rbcodec/metadata/flac.c index df25bb9b4d..af39c1346b 100644 --- a/lib/rbcodec/metadata/flac.c +++ b/lib/rbcodec/metadata/flac.c @@ -59,7 +59,7 @@ bool get_flac_metadata(int fd, struct mp3entry* id3) unsigned long i; int type; - if (read(fd, buf, 4) < 0) + if (read(fd, buf, 4) != 4) { return rc; } @@ -73,7 +73,7 @@ bool get_flac_metadata(int fd, struct mp3entry* id3) { unsigned long totalsamples; - if (i >= sizeof(id3->path) || read(fd, buf, i) < 0) + if (i >= sizeof(id3->path) || read(fd, buf, i) != i) { return rc; } -- cgit v1.2.3