summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan K. Hubbard <jkh@FreeBSD.org>1998-03-21 21:20:40 +0000
committerJordan K. Hubbard <jkh@FreeBSD.org>1998-03-21 21:20:40 +0000
commite6989a19cf89211136d7e7296fabce8313ed8576 (patch)
tree135517dd44fc6f54cee2388acc783f18b4bbcde7
parentf2e45911e4efdcdbf3caf84ef4f85637a3384687 (diff)
Notes
-rw-r--r--release/sysinstall/disks.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/release/sysinstall/disks.c b/release/sysinstall/disks.c
index d939791309991..df1fd361021b3 100644
--- a/release/sysinstall/disks.c
+++ b/release/sysinstall/disks.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: disks.c,v 1.70.2.24 1998/03/19 15:07:47 jkh Exp $
+ * $Id: disks.c,v 1.70.2.25 1998/03/21 01:36:42 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -441,8 +441,19 @@ diskPartition(Device *dev)
* disk (i.e., the disklabel starts at sector 0), even in cases where the user has requested
* booteasy or a "standard" MBR -- both would be fatal in this case.
*/
- if (!(d->chunks->part->flags & CHUNK_FORCE_ALL) && (mbrContents = getBootMgr(d->name)) != NULL)
+#if 0
+ if ((d->chunks->part->flags & CHUNK_FORCE_ALL) != CHUNK_FORCE_ALL
+ && (mbrContents = getBootMgr(d->name)) != NULL)
Set_Boot_Mgr(d, mbrContents);
+#else
+ /*
+ * Don't offer to update the MBR on this disk if the first "real" chunk looks like
+ * a FreeBSD "all disk" partition, or the disk is entirely FreeBSD.
+ */
+ if (((d->chunks->part->type != freebsd) || (d->chunks->part->offset > 1)) &&
+ (mbrContents = getBootMgr(d->name)) != NULL)
+ Set_Boot_Mgr(d, mbrContents);
+#endif
if (DITEM_STATUS(diskPartitionWrite(NULL)) != DITEM_SUCCESS)
msgConfirm("Disk partition write returned an error status!");