diff options
author | jkh <jkh@FreeBSD.org> | 1997-10-01 01:30:35 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1997-10-01 01:30:35 +0000 |
commit | e8ee3433c32e32272b667e4971ecf1b5932a3775 (patch) | |
tree | fb69105f695ae71ea66dcc9f39a40ba0fcc02548 /usr.sbin/sysinstall/installUpgrade.c | |
parent | fb9cd79beb18abcdb23c1aaf4901fec99380b298 (diff) | |
download | FreeBSD-src-e8ee3433c32e32272b667e4971ecf1b5932a3775.zip FreeBSD-src-e8ee3433c32e32272b667e4971ecf1b5932a3775.tar.gz |
Keep fingers off /etc files until they're properly backed up.
PR: 4636
Submitted by: Jack <jack@zeus.xtalwind.net>
Diffstat (limited to 'usr.sbin/sysinstall/installUpgrade.c')
-rw-r--r-- | usr.sbin/sysinstall/installUpgrade.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/usr.sbin/sysinstall/installUpgrade.c b/usr.sbin/sysinstall/installUpgrade.c index 8a755821..6350141 100644 --- a/usr.sbin/sysinstall/installUpgrade.c +++ b/usr.sbin/sysinstall/installUpgrade.c @@ -4,7 +4,7 @@ * This is probably the last program in the `sysinstall' line - the next * generation being essentially a complete rewrite. * - * $Id: installUpgrade.c,v 1.50 1997/09/08 11:09:09 jkh Exp $ + * $Id: installUpgrade.c,v 1.51 1997/09/09 09:19:30 jkh Exp $ * * Copyright (c) 1995 * Jordan Hubbard. All rights reserved. @@ -252,20 +252,6 @@ installUpgrade(dialogMenuItem *self) systemCreateHoloshell(); } -media: - if (!mediaVerify()) - 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?")) { - mediaDevice = NULL; - goto media; - } - else - return DITEM_FAILURE | DITEM_REDRAW; - } - saved_etc = NULL; if (extractingBin) { while (!saved_etc) { @@ -281,7 +267,7 @@ media: if (saved_etc) { msgNotify("Preserving /etc directory.."); - if (vsystem("tar -cBpf - -C /etc . | tar -xBpf - -C %s", saved_etc)) + if (vsystem("tar -cBpf - -C /etc . | tar --unlink -xBpf - -C %s", saved_etc)) if (msgYesNo("Unable to backup your /etc into %s.\n" "Do you want to continue anyway?", saved_etc) != 0) return DITEM_FAILURE | DITEM_RESTORE; @@ -300,6 +286,20 @@ media: } } +media: + if (!mediaVerify()) + 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?")) { + mediaDevice = NULL; + goto media; + } + else + return DITEM_FAILURE | DITEM_REDRAW; + } + msgNotify("Beginning extraction of distributions.."); if (DITEM_STATUS(distExtractAll(self)) == DITEM_FAILURE) { msgConfirm("Hmmmm. We couldn't even extract the bin distribution. This upgrade\n" |