diff options
author | NeilBrown <neilb@suse.com> | 2015-07-24 16:11:23 +1000 |
---|---|---|
committer | NeilBrown <neilb@suse.com> | 2015-07-24 16:11:23 +1000 |
commit | 27aefbdb3d52b9a4f4299b931003e4a8760b5dc2 (patch) | |
tree | 3a16c344866d024a4b4d3d3defa236cb063e7325 /xmalloc.c | |
parent | d8f82d1d88f83a706478e2d1af3736032a018421 (diff) | |
download | mdadm-27aefbdb3d52b9a4f4299b931003e4a8760b5dc2.tar.gz |
Don't ignore return value from read and write
New gcc sometimes complains about this.
Signed-off-by: NeilBrown <neilb@suse.com>
Diffstat (limited to 'xmalloc.c')
-rw-r--r-- | xmalloc.c | 24 |
1 files changed, 16 insertions, 8 deletions
@@ -35,42 +35,50 @@ void *xmalloc(size_t len) { void *rv = malloc(len); char *msg; + int n; if (rv) return rv; msg = ": memory allocation failure - aborting\n"; - write(2, Name, strlen(Name)); - exit(4+!!write(2, msg, strlen(msg))); + n = write(2, Name, strlen(Name)); + n += write(2, msg, strlen(msg)); + exit(4+!!n); } void *xrealloc(void *ptr, size_t len) { void *rv = realloc(ptr, len); char *msg; + int n; if (rv) return rv; msg = ": memory allocation failure - aborting\n"; - write(2, Name, strlen(Name)); - exit(4+!!write(2, msg, strlen(msg))); + n = write(2, Name, strlen(Name)); + n += write(2, msg, strlen(msg)); + exit(4+!!n); } void *xcalloc(size_t num, size_t size) { void *rv = calloc(num, size); char *msg; + int n; if (rv) return rv; msg = ": memory allocation failure - aborting\n"; - write(2, Name, strlen(Name)); - exit(4+!!write(2, msg, strlen(msg))); + n = write(2, Name, strlen(Name)); + n += write(2, msg, strlen(msg)); + exit(4+!!n); } char *xstrdup(const char *str) { char *rv = strdup(str); char *msg; + int n; if (rv) return rv; msg = ": memory allocation failure - aborting\n"; - write(2, Name, strlen(Name)); - exit(4+!!write(2, msg, strlen(msg))); + n = write(2, Name, strlen(Name)); + n += write(2, msg, strlen(msg)); + exit(4+!!n); } |