aboutsummaryrefslogtreecommitdiff
path: root/release/sysinstall/disks.c
diff options
context:
space:
mode:
authorJordan K. Hubbard <jkh@FreeBSD.org>1998-03-23 05:59:18 +0000
committerJordan K. Hubbard <jkh@FreeBSD.org>1998-03-23 05:59:18 +0000
commit3d4fcaba36a414b48cc19163793f7e1ba1f9228a (patch)
treef02c35ea84fad70ced0eec134888a76fa963187c /release/sysinstall/disks.c
parentd1ecde2bbbcd377a8630bb28bafd3287c77bec70 (diff)
downloadsrc-3d4fcaba36a414b48cc19163793f7e1ba1f9228a.tar.gz
src-3d4fcaba36a414b48cc19163793f7e1ba1f9228a.zip
MF22: catch up with recent changes.
Notes
Notes: svn path=/head/; revision=34792
Diffstat (limited to 'release/sysinstall/disks.c')
-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 8727f693c548..529755108e1e 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.95 1998/02/13 08:01:01 jkh Exp $
+ * $Id: disks.c,v 1.96 1998/03/19 15:07:20 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!");