From 5bbab7e0d37fb3f2b8ce3dc5c292893f5ecc94a6 Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Wed, 6 Jan 2016 21:32:14 +0000 Subject: [PATCH] Check fread return value in LoadSoundFile(readclause.c) [clang scan-build] --- src/libespeak-ng/readclause.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libespeak-ng/readclause.c b/src/libespeak-ng/readclause.c index f06fef38..3db27204 100644 --- a/src/libespeak-ng/readclause.c +++ b/src/libespeak-ng/readclause.c @@ -850,7 +850,12 @@ static int LoadSoundFile(const char *fname, int index) fclose(f); return 4; } - length = fread(p, 1, length, f); + if (fread(p, 1, length, f) != length) { + fclose(f); + remove(fname_temp); + free(p); + return 5; + } fclose(f); remove(fname_temp);