diff options
-rw-r--r-- | perl-install/install_any.pm | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm index 2b49f4df2..36942fa6b 100644 --- a/perl-install/install_any.pm +++ b/perl-install/install_any.pm @@ -834,7 +834,12 @@ sub loadO { if ($f =~ /^(floppy|patch)$/) { my $f = $f eq "floppy" ? 'auto_inst.cfg' : "patch"; unless ($::testing) { - fs::mount(devices::make(detect_devices::floppy()), "/mnt", (arch() =~ /sparc/ ? "romfs" : "vfat"), 'readonly'); + my $dev = devices::make(detect_devices::floppy()); + foreach my $fs (arch() =~ /sparc/ ? 'romfs' : ('ext2', 'vfat')) { + eval { fs::mount($dev, '/mnt', $fs, 'readonly'); 1 } and goto mount_ok; + } + die "Couldn't mount floppy [$dev]"; + mount_ok: $f = "/mnt/$f"; } -e $f or $f .= '.pl'; |