From 9285e86492b2e8477b0fb3aba143ca7038204873 Mon Sep 17 00:00:00 2001 From: Oron Peled Date: Sun, 11 May 2014 11:48:07 -0400 Subject: [PATCH] xpp: better error checking (echo_loader) Signed-off-by: Tzafrir Cohen --- xpp/echo_loader.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/xpp/echo_loader.c b/xpp/echo_loader.c index c81147f..2291214 100644 --- a/xpp/echo_loader.c +++ b/xpp/echo_loader.c @@ -362,7 +362,7 @@ int load_file(char *filename, unsigned char **ppBuf, UINT32 *pLen) DBG("Loading %s file...\n", filename); pFile = fopen(filename, "rb"); if (pFile == NULL) { - ERR("fopen\n"); + ERR("fopen: %s\n", strerror(errno)); return -ENODEV; } @@ -378,7 +378,11 @@ int load_file(char *filename, unsigned char **ppBuf, UINT32 *pLen) } else { DBG("allocated mem for pbyFileData\n"); } - fread(pbyFileData, 1, *pLen, pFile); + if (fread(pbyFileData, 1, *pLen, pFile) != *pLen) { + fclose(pFile); + ERR("fread: %s\n", strerror(errno)); + return -ENODEV; + } fclose(pFile); DBG("Successful loading %s file into memory " "(size = %d, DUMP: first = %02X %02X, last = %02X %02X)\n",