summaryrefslogtreecommitdiffstats
path: root/usr.sbin/sysinstall/index.c
diff options
context:
space:
mode:
authormurray <murray@FreeBSD.org>2005-03-18 00:55:12 +0000
committermurray <murray@FreeBSD.org>2005-03-18 00:55:12 +0000
commitf35fea1e3300478c368de7e96372dae68dfb8a89 (patch)
tree3fc06d9753405c7fbb660a47ca8e9c8f3377b5b2 /usr.sbin/sysinstall/index.c
parentd8999c1cc658aac51182a4d1cf842809dcc2a2a0 (diff)
downloadFreeBSD-src-f35fea1e3300478c368de7e96372dae68dfb8a89.zip
FreeBSD-src-f35fea1e3300478c368de7e96372dae68dfb8a89.tar.gz
Recover gracefully if the user puts in the wrong CD volume after being
prompted to insert another CD for a package. MFC After: 3 days
Diffstat (limited to 'usr.sbin/sysinstall/index.c')
-rw-r--r--usr.sbin/sysinstall/index.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/usr.sbin/sysinstall/index.c b/usr.sbin/sysinstall/index.c
index ac9a0ba..4c94a52 100644
--- a/usr.sbin/sysinstall/index.c
+++ b/usr.sbin/sysinstall/index.c
@@ -686,10 +686,10 @@ index_extract(Device *dev, PkgNodePtr top, PkgNodePtr who, Boolean depended)
return DITEM_SUCCESS;
/*
- * What if the package is not available on the current media volume?
- *
+ * Prompt user if the package is not available on the current volume.
*/
- if (id->volume != dev->volume) {
+
+ while (id->volume != dev->volume) {
if (!msgYesNo("This is disc #%d. Package %s is on disc #%d\n"
"Would you like to switch discs now?\n", dev->volume,
id->name, id->volume)) {
@@ -697,8 +697,6 @@ index_extract(Device *dev, PkgNodePtr top, PkgNodePtr who, Boolean depended)
msgConfirm("Please remove disc #%d from your drive, and add disc #%d\n",
dev->volume, id->volume);
DEVICE_INIT(mediaDevice);
- /* XXX, at this point we check to see if this is the
- * correct disc, and if not, we loop */
} else {
return DITEM_FAILURE;
}
OpenPOWER on IntegriCloud