diff options
-rw-r--r-- | sbin/fsck_ffs/pass1.c | 4 | ||||
-rw-r--r-- | sbin/fsck_ffs/setup.c | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/sbin/fsck_ffs/pass1.c b/sbin/fsck_ffs/pass1.c index 272b5f1..341d027 100644 --- a/sbin/fsck_ffs/pass1.c +++ b/sbin/fsck_ffs/pass1.c @@ -141,7 +141,7 @@ pass1(void) } info = calloc((unsigned)inosused, sizeof(struct inostat)); if (info == NULL) - pfatal("cannot alloc %u bytes for inoinfo\n", + errx(EEXIT, "cannot alloc %u bytes for inoinfo", (unsigned)(sizeof(struct inostat) * inosused)); inostathead[c].il_stat = info; /* @@ -175,7 +175,7 @@ pass1(void) } info = calloc((unsigned)inosused, sizeof(struct inostat)); if (info == NULL) - pfatal("cannot alloc %u bytes for inoinfo\n", + errx(EEXIT, "cannot alloc %u bytes for inoinfo", (unsigned)(sizeof(struct inostat) * inosused)); memmove(info, inostathead[c].il_stat, inosused * sizeof(*info)); free(inostathead[c].il_stat); diff --git a/sbin/fsck_ffs/setup.c b/sbin/fsck_ffs/setup.c index f6e541d..5fb24c1 100644 --- a/sbin/fsck_ffs/setup.c +++ b/sbin/fsck_ffs/setup.c @@ -227,6 +227,11 @@ setup(char *dev) */ asked = 0; sblock.fs_csp = calloc(1, sblock.fs_cssize); + if (sblock.fs_csp == NULL) { + printf("cannot alloc %u bytes for cg summary info\n", + (unsigned)sblock.fs_cssize); + goto badsb; + } for (i = 0, j = 0; i < sblock.fs_cssize; i += sblock.fs_bsize, j++) { size = sblock.fs_cssize - i < sblock.fs_bsize ? sblock.fs_cssize - i : sblock.fs_bsize; |