summaryrefslogtreecommitdiff
path: root/usr/src/cmd/format/menu_fdisk.c
diff options
context:
space:
mode:
authorSharath M Srinivasan <Sharath.Srinivasan@Sun.COM>2009-12-04 11:52:47 +0530
committerSharath M Srinivasan <Sharath.Srinivasan@Sun.COM>2009-12-04 11:52:47 +0530
commit6cb5747b0a5bbfb2ecd674b4887034dbb1874391 (patch)
treeeb1cad54aa85ca312afda4a9385cae10dd2791a4 /usr/src/cmd/format/menu_fdisk.c
parentc0da627439dfb642fb41ab7d78406fc69d2c64b2 (diff)
downloadillumos-joyent-6cb5747b0a5bbfb2ecd674b4887034dbb1874391.tar.gz
6894057 cmd format Failed to initialize libfdisk
Diffstat (limited to 'usr/src/cmd/format/menu_fdisk.c')
-rw-r--r--usr/src/cmd/format/menu_fdisk.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/usr/src/cmd/format/menu_fdisk.c b/usr/src/cmd/format/menu_fdisk.c
index dab5436643..404904140c 100644
--- a/usr/src/cmd/format/menu_fdisk.c
+++ b/usr/src/cmd/format/menu_fdisk.c
@@ -952,31 +952,37 @@ extpart_init(ext_part_t **epp)
FDISK_SUCCESS) {
switch (rval) {
/*
- * FDISK_EBADLOGDRIVE and FDISK_ENOLOGDRIVE can
- * be considered as soft errors and hence
- * we do not exit
+ * FDISK_EBADLOGDRIVE, FDISK_ENOLOGDRIVE
+ * and FDISK_EBADMAGIC can be considered
+ * as soft errors and hence we do not exit.
*/
case FDISK_EBADLOGDRIVE:
break;
case FDISK_ENOLOGDRIVE:
break;
+ case FDISK_EBADMAGIC:
+ break;
case FDISK_ENOVGEOM:
err_print("Could not get virtual geometry for"
" this device\n");
+ libfdisk_fini(epp);
fullabort();
break;
case FDISK_ENOPGEOM:
err_print("Could not get physical geometry for"
" this device\n");
+ libfdisk_fini(epp);
fullabort();
break;
case FDISK_ENOLGEOM:
err_print("Could not get label geometry for "
" this device\n");
+ libfdisk_fini(epp);
fullabort();
break;
default:
err_print("Failed to initialise libfdisk.\n");
+ libfdisk_fini(epp);
fullabort();
break;
}