diff options
author | Jeremy Katz <katzj@redhat.com> | 2003-07-18 20:01:58 +0000 |
---|---|---|
committer | Jeremy Katz <katzj@redhat.com> | 2003-07-18 20:01:58 +0000 |
commit | ade13cdeff71a806859024fb52c6ecb171199aa7 (patch) | |
tree | 8ac591f9d31a3fade6ba2beaf1b70a1cdb384ba2 | |
parent | eb855ebf0c29c4975ccda08cc791711b522aee73 (diff) | |
download | anaconda-ade13cdeff71a806859024fb52c6ecb171199aa7.tar.gz anaconda-ade13cdeff71a806859024fb52c6ecb171199aa7.tar.xz anaconda-ade13cdeff71a806859024fb52c6ecb171199aa7.zip |
handle going back with only one source for a driver disk (#99410)
-rw-r--r-- | loader2/driverdisk.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/loader2/driverdisk.c b/loader2/driverdisk.c index 67a268471..fc5d658c6 100644 --- a/loader2/driverdisk.c +++ b/loader2/driverdisk.c @@ -214,6 +214,7 @@ int loadDriverFromMedia(int class, moduleList modLoaded, enum { DEV_DEVICE, DEV_INSERT, DEV_LOAD, DEV_PROBE, DEV_DONE } stage = DEV_DEVICE; int rc, i, num = 0; + int dir = 1; while (stage != DEV_DONE) { switch(stage) { @@ -226,9 +227,13 @@ int loadDriverFromMedia(int class, moduleList modLoaded, if (rc == 1) { device = strdup(devNames[0]); free(devNames); + if (dir == -1) + return LOADER_BACK; + stage = DEV_INSERT; break; } + dir = 1; startNewt(flags); rc = newtWinMenu(_("Driver Disk Source"), @@ -256,8 +261,10 @@ int loadDriverFromMedia(int class, moduleList modLoaded, buf); if (rc == 2) { stage = DEV_DEVICE; + dir = -1; break; } + dir = 1; devMakeInode(device, "/tmp/dddev"); logMessage("trying to mount %s", device); |