diff options
-rw-r--r-- | perl-install/modules.pm | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/perl-install/modules.pm b/perl-install/modules.pm index 19842bea2..6b8495da7 100644 --- a/perl-install/modules.pm +++ b/perl-install/modules.pm @@ -717,7 +717,7 @@ sub load_thiskind { ); grep { $f->($_->{description}, $_->{driver}) if $f; - eval { load($_->{driver}, $type) }; + eval { load($_->{driver}, $type, $_->{options}) }; $_->{error} = $@; !($@ && $_->{try}); @@ -729,8 +729,17 @@ sub get_that_type { my ($type) = @_; grep { - my $l = $drivers{$_->{driver}}; - ($_->{type} =~ /$type/ || $l && $l->{type} =~ /$type/) && detect_devices::check($_); + if ($type eq 'isdn') { + my $b = $_->{driver} =~ /ISDN:(.*),?(.*)/; + if ($b) { + $_->{driver} = $1; + $_->{options} = $2; + } + $b; + } else { + my $l = $drivers{$_->{driver}}; + ($_->{type} =~ /$type/ || $l && $l->{type} =~ /$type/) && detect_devices::check($_); + } } detect_devices::probeall(''); } |