summaryrefslogtreecommitdiffstats
path: root/urpm
diff options
context:
space:
mode:
Diffstat (limited to 'urpm')
-rw-r--r--urpm/media.pm8
-rw-r--r--urpm/removable.pm15
2 files changed, 9 insertions, 14 deletions
diff --git a/urpm/media.pm b/urpm/media.pm
index f182a2c7..0ee2eba9 100644
--- a/urpm/media.pm
+++ b/urpm/media.pm
@@ -51,6 +51,7 @@ sub _only_media_opts_read {
my ($m) = @_;
my $c = only_media_opts($m);
$c->{media_info_dir} ||= 'media_info';
+ $c->{iso} = delete $c->{removable} if $c->{removable} && urpm::removable::is_iso($c->{removable});
$c;
}
sub _only_media_opts_write {
@@ -58,6 +59,7 @@ sub _only_media_opts_write {
my $c = only_media_opts($m);
delete $c->{media_info_dir} if $c->{media_info_dir} eq 'media_info';
delete $c->{url} if $c->{mirrorlist};
+ $c->{removable} = delete $c->{iso} if $c->{iso};
$c;
}
@@ -403,9 +405,7 @@ sub probe_removable_device {
#- try to find device to open/close for removable medium.
if (my $dir = file_from_local_url($medium->{url})) {
- if (urpm::removable::is_iso($medium->{removable})) {
- $urpm->{log}(N("Medium \"%s\" is an ISO image, will be mounted on-the-fly", $medium->{name}));
- } elsif (my $entry = urpm::sys::find_a_mntpoint($dir)) {
+ if (my $entry = urpm::sys::find_a_mntpoint($dir)) {
if ($medium->{removable} && $medium->{removable} ne $entry->{device}) {
$urpm->{log}(N("using different removable device [%s] for \"%s\"",
$entry->{device}, $medium->{name}));
@@ -1246,7 +1246,7 @@ sub _update_medium__parse_if_unmodified__local {
#- everything that might be necessary.
urpm::removable::try_mounting($urpm,
$dir,
- $medium->{removable},
+ $medium->{iso},
) or $urpm->{error}(N("unable to access medium \"%s\",
this could happen if you mounted manually the directory when creating the medium.", $medium->{name})), return;
}
diff --git a/urpm/removable.pm b/urpm/removable.pm
index bddd8e1d..77fb5300 100644
--- a/urpm/removable.pm
+++ b/urpm/removable.pm
@@ -18,18 +18,13 @@ sub is_iso {
$removable_dev && $removable_dev =~ /\.iso$/i;
}
-sub is_cdrom {
- my ($removable_dev) = @_;
- $removable_dev && !is_iso($removable_dev);
-}
-
#- side-effects:
#- + those of try_mounting_ ($urpm->{removable_mounted}, "mount")
#- + those of try_mounting_iso ($urpm->{removable_mounted}, "mount")
sub try_mounting {
- my ($urpm, $dir, $o_removable) = @_;
+ my ($urpm, $dir, $o_iso) = @_;
- is_iso($o_removable) ? try_mounting_iso($urpm, $dir, $o_removable) : try_mounting_($urpm, $dir);
+ $o_iso ? try_mounting_iso($urpm, $dir, $o_iso) : try_mounting_($urpm, $dir);
}
#- side-effects: $urpm->{removable_mounted}, "mount"
@@ -223,7 +218,7 @@ sub try_mounting_non_cdroms {
my @used_media = map { $_->{medium} } _create_blists($urpm->{media}, $list);
- foreach my $medium (grep { !is_cdrom($_->{removable}) } @used_media) {
+ foreach my $medium (grep { !$_->{removable} } @used_media) {
try_mounting_non_cdrom($urpm, $medium);
}
}
@@ -235,7 +230,7 @@ sub try_mounting_non_cdrom {
my $dir = file_from_local_url($medium->{url}) or return;
- -e $dir || try_mounting($urpm, $dir, $medium->{removable}) or
+ -e $dir || try_mounting($urpm, $dir, $medium->{iso}) or
$urpm->{error}(N("unable to access medium \"%s\"", $medium->{name})), return;
1;
@@ -250,7 +245,7 @@ sub _get_cdroms {
foreach (@$blists) {
#- examine non removable device but that may be mounted.
if (my $device = $_->{medium}{removable}) {
- next if is_iso($device) || $device =~ m![^a-zA-Z0-9_./-]!; #- bad path
+ next if $device =~ m![^a-zA-Z0-9_./-]!; #- bad path
push @{$removables{$device} ||= []}, $_;
}
}