diff options
author | jkh <jkh@FreeBSD.org> | 1997-01-29 01:23:05 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1997-01-29 01:23:05 +0000 |
commit | cb0391dcad998534fe857eb5f19f7045fce07949 (patch) | |
tree | 816b8b7d8685ddb27066726ffd633ebc160199f6 | |
parent | 9506febea94f4e9740f03d39778d9a964fe10efa (diff) | |
download | FreeBSD-src-cb0391dcad998534fe857eb5f19f7045fce07949.zip FreeBSD-src-cb0391dcad998534fe857eb5f19f7045fce07949.tar.gz |
Do media initialization at correct time for upgrade too.
Update /stand.
-rw-r--r-- | release/sysinstall/installUpgrade.c | 33 | ||||
-rw-r--r-- | usr.sbin/sysinstall/installUpgrade.c | 33 |
2 files changed, 36 insertions, 30 deletions
diff --git a/release/sysinstall/installUpgrade.c b/release/sysinstall/installUpgrade.c index 2dcc66f..6737628 100644 --- a/release/sysinstall/installUpgrade.c +++ b/release/sysinstall/installUpgrade.c @@ -185,21 +185,6 @@ installUpgrade(dialogMenuItem *self) if (!(Dists & DIST_BIN)) extractingBin = FALSE; - if (!mediaVerify()) { - msgConfirm("Now you must specify an installation medium for the upgrade."); -media: - if (!dmenuOpenSimple(&MenuMedia, FALSE) || !mediaDevice) - return DITEM_FAILURE | DITEM_RESTORE; - } - - if (!mediaDevice->init(mediaDevice)) { - if (!msgYesNo("Couldn't initialize the media. Would you like\n" - "to adjust your media selection and try again?")) - goto media; - else - return DITEM_FAILURE | DITEM_REDRAW; - } - if (RunningAsInit) { Device **devs; int i, cnt; @@ -244,6 +229,9 @@ media: return DITEM_FAILURE | DITEM_RESTORE; } + msgNotify("Updating /stand on root filesystem"); + (void)vsystem("find -x /stand | cpio %s -pdum /mnt", cpioVerbosity()); + if (DITEM_STATUS(chroot("/mnt")) == DITEM_FAILURE) { msgConfirm("Unable to chroot to /mnt - something is wrong with the\n" "root partition or the way it's mounted if this doesn't work."); @@ -254,6 +242,21 @@ media: systemCreateHoloshell(); } + if (!mediaVerify()) { + msgConfirm("Now you must specify an installation medium for the upgrade."); +media: + if (!dmenuOpenSimple(&MenuMedia, FALSE) || !mediaDevice) + return DITEM_FAILURE | DITEM_RESTORE; + } + + if (!mediaDevice->init(mediaDevice)) { + if (!msgYesNo("Couldn't initialize the media. Would you like\n" + "to adjust your media selection and try again?")) + goto media; + else + return DITEM_FAILURE | DITEM_REDRAW; + } + saved_etc = NULL; if (extractingBin) { while (!saved_etc) { diff --git a/usr.sbin/sysinstall/installUpgrade.c b/usr.sbin/sysinstall/installUpgrade.c index 2dcc66f..6737628 100644 --- a/usr.sbin/sysinstall/installUpgrade.c +++ b/usr.sbin/sysinstall/installUpgrade.c @@ -185,21 +185,6 @@ installUpgrade(dialogMenuItem *self) if (!(Dists & DIST_BIN)) extractingBin = FALSE; - if (!mediaVerify()) { - msgConfirm("Now you must specify an installation medium for the upgrade."); -media: - if (!dmenuOpenSimple(&MenuMedia, FALSE) || !mediaDevice) - return DITEM_FAILURE | DITEM_RESTORE; - } - - if (!mediaDevice->init(mediaDevice)) { - if (!msgYesNo("Couldn't initialize the media. Would you like\n" - "to adjust your media selection and try again?")) - goto media; - else - return DITEM_FAILURE | DITEM_REDRAW; - } - if (RunningAsInit) { Device **devs; int i, cnt; @@ -244,6 +229,9 @@ media: return DITEM_FAILURE | DITEM_RESTORE; } + msgNotify("Updating /stand on root filesystem"); + (void)vsystem("find -x /stand | cpio %s -pdum /mnt", cpioVerbosity()); + if (DITEM_STATUS(chroot("/mnt")) == DITEM_FAILURE) { msgConfirm("Unable to chroot to /mnt - something is wrong with the\n" "root partition or the way it's mounted if this doesn't work."); @@ -254,6 +242,21 @@ media: systemCreateHoloshell(); } + if (!mediaVerify()) { + msgConfirm("Now you must specify an installation medium for the upgrade."); +media: + if (!dmenuOpenSimple(&MenuMedia, FALSE) || !mediaDevice) + return DITEM_FAILURE | DITEM_RESTORE; + } + + if (!mediaDevice->init(mediaDevice)) { + if (!msgYesNo("Couldn't initialize the media. Would you like\n" + "to adjust your media selection and try again?")) + goto media; + else + return DITEM_FAILURE | DITEM_REDRAW; + } + saved_etc = NULL; if (extractingBin) { while (!saved_etc) { |