Instead of zerodivide, give a useful error message.

This commit is contained in:
christos 2014-12-04 01:41:37 +00:00
parent 23702e9629
commit 3747949d9f

View File

@ -1,4 +1,4 @@
/* $NetBSD: setup.c,v 1.31 2013/06/23 02:06:04 dholland Exp $ */
/* $NetBSD: setup.c,v 1.32 2014/12/04 01:41:37 christos Exp $ */
/*
* Copyright (c) 1980, 1986, 1993
@ -58,7 +58,7 @@
#if 0
static char sccsid[] = "@(#)setup.c 8.5 (Berkeley) 11/23/94";
#else
__RCSID("$NetBSD: setup.c,v 1.31 2013/06/23 02:06:04 dholland Exp $");
__RCSID("$NetBSD: setup.c,v 1.32 2014/12/04 01:41:37 christos Exp $");
#endif
#endif /* not lint */
@ -490,6 +490,10 @@ calcsb(const char *dev, int devfd, struct m_ext2fs *fs)
fstypenames[pp->p_fstype] : "unknown");
return 0;
}
if (pp->p_fsize == 0) {
pfatal("%s: PARTITION SIZE IS 0\n", dev);
return 0;
}
memset(fs, 0, sizeof(struct m_ext2fs));
fs->e2fs_bsize = pp->p_fsize;
fs->e2fs.e2fs_log_bsize = pp->p_fsize / 1024;