diff options
author | jkh <jkh@FreeBSD.org> | 1997-01-29 03:30:24 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1997-01-29 03:30:24 +0000 |
commit | 2c34f16609bcd2dd619eecc5dcc177df5a32d5e5 (patch) | |
tree | af3a4d306585307a98fd39584b72707f398273b9 /release | |
parent | bfe2c2933595179da4499f68624984a9fee9a316 (diff) | |
download | FreeBSD-src-2c34f16609bcd2dd619eecc5dcc177df5a32d5e5.zip FreeBSD-src-2c34f16609bcd2dd619eecc5dcc177df5a32d5e5.tar.gz |
Make media re-init a user choice.
Diffstat (limited to 'release')
-rw-r--r-- | release/sysinstall/dist.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/release/sysinstall/dist.c b/release/sysinstall/dist.c index f1c56b6..d876771 100644 --- a/release/sysinstall/dist.c +++ b/release/sysinstall/dist.c @@ -440,15 +440,20 @@ distExtract(char *parent, Distribution *me) continue; } else if (fp == (FILE *)IO_ERROR || intr) { /* Hard error, can't continue */ - msgConfirm("Unable to open %s: %s.\nReinitializing media.", - buf, !intr ? "I/O error." : "User interrupt."); - mediaDevice->shutdown(mediaDevice); - if (!mediaDevice->init(mediaDevice)) { + if (!msgYesNo("Unable to open %s: %s.\nReinitialize media?", + buf, !intr ? "I/O error." : "User interrupt.")) { + mediaDevice->shutdown(mediaDevice); + if (!mediaDevice->init(mediaDevice)) { + status = FALSE; + goto done; + } + else + goto getinfo; + } + else { status = FALSE; goto done; } - else - goto getinfo; } else { /* Try to get the distribution as a single file */ |