aboutsummaryrefslogtreecommitdiff
path: root/sim
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2021-02-13 02:42:50 -0500
committerMike Frysinger <vapier@gentoo.org>2021-02-13 02:44:36 -0500
commit9ee455572d97fd8ce458a6df523c447e85dc3edf (patch)
tree256d765aa56acb6484abfa0cc00c2554a304a71a /sim
parent136da8cd9c32379b6f4b504e62a9d1bebb36587f (diff)
downloadbinutils-9ee455572d97fd8ce458a6df523c447e85dc3edf.zip
binutils-9ee455572d97fd8ce458a6df523c447e85dc3edf.tar.gz
binutils-9ee455572d97fd8ce458a6df523c447e85dc3edf.tar.bz2
sim: rx: mitigate fread warning
Current toolchains warn about unused result from fread, so mitigate the edge case if fread returns short data. It's not great, but it gets things building again.
Diffstat (limited to 'sim')
-rw-r--r--sim/rx/ChangeLog5
-rw-r--r--sim/rx/trace.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/sim/rx/ChangeLog b/sim/rx/ChangeLog
index d548bec..e78fe61 100644
--- a/sim/rx/ChangeLog
+++ b/sim/rx/ChangeLog
@@ -1,5 +1,10 @@
2021-02-13 Mike Frysinger <vapier@gentoo.org>
+ * trace.c (load_file_and_line): Use fread return value to index
+ the data.
+
+2021-02-13 Mike Frysinger <vapier@gentoo.org>
+
* configure.ac: Replace sinclude with AC_CONFIG_MACRO_DIRS.
* aclocal.m4, configure: Regenerate.
diff --git a/sim/rx/trace.c b/sim/rx/trace.c
index e5db49b..caa51b7 100644
--- a/sim/rx/trace.c
+++ b/sim/rx/trace.c
@@ -143,6 +143,7 @@ load_file_and_line (const char *filename, int lineno)
FILE *file;
int i;
struct stat s;
+ size_t ret;
const char *found_filename, *slash;
found_filename = filename;
@@ -162,8 +163,8 @@ load_file_and_line (const char *filename, int lineno)
f->filename = strdup (filename);
f->data = (char *) malloc (s.st_size + 2);
file = fopen (found_filename, "rb");
- fread (f->data, 1, s.st_size, file);
- f->data[s.st_size] = 0;
+ ret = fread (f->data, 1, s.st_size, file);
+ f->data[ret] = 0;
fclose (file);
f->nlines = 1;