diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/bltin/test.c | 3 | ||||
-rw-r--r-- | src/mkinit.c | 9 |
2 files changed, 8 insertions, 4 deletions
diff --git a/src/bltin/test.c b/src/bltin/test.c index 9b09094..f16c819 100644 --- a/src/bltin/test.c +++ b/src/bltin/test.c @@ -489,7 +489,8 @@ bash_group_member(gid_t gid) ngroups = getgroups(0, NULL); group_array = stalloc(ngroups * sizeof(gid_t)); - getgroups(ngroups, group_array); + if ((getgroups(ngroups, group_array)) != ngroups) + return (0); /* Search through the list looking for GID. */ for (i = 0; i < ngroups; i++) diff --git a/src/mkinit.c b/src/mkinit.c index e803751..9714bee 100644 --- a/src/mkinit.c +++ b/src/mkinit.c @@ -427,9 +427,12 @@ writetext(struct text *text, FILE *fp) struct block *bp; if (text->start != NULL) { - for (bp = text->start ; bp != text->last ; bp = bp->next) - fwrite(bp->text, sizeof (char), BLOCKSIZE, fp); - fwrite(bp->text, sizeof (char), BLOCKSIZE - text->nleft, fp); + for (bp = text->start ; bp != text->last ; bp = bp->next) { + if ((fwrite(bp->text, sizeof (char), BLOCKSIZE, fp)) != BLOCKSIZE) + error("Can't write data\n"); + } + if ((fwrite(bp->text, sizeof (char), BLOCKSIZE - text->nleft, fp)) != (BLOCKSIZE - text->nleft)) + error("Can't write data\n"); } } |