summaryrefslogtreecommitdiffstats
path: root/pciusb.c
diff options
context:
space:
mode:
authorOlivier Blin <oblin@mandriva.com>2007-09-09 14:51:02 +0000
committerOlivier Blin <oblin@mandriva.com>2007-09-09 14:51:02 +0000
commit0d47791547ef5a45b2120075e512cc99f89ee8c3 (patch)
treeaf59726109a84665c82d7ba94ce2f32b4b7072e8 /pciusb.c
parentb49add27b1004efaa5a35d956a3a6275035c65a0 (diff)
downloadldetect-0d47791547ef5a45b2120075e512cc99f89ee8c3.tar
ldetect-0d47791547ef5a45b2120075e512cc99f89ee8c3.tar.gz
ldetect-0d47791547ef5a45b2120075e512cc99f89ee8c3.tar.bz2
ldetect-0d47791547ef5a45b2120075e512cc99f89ee8c3.tar.xz
ldetect-0d47791547ef5a45b2120075e512cc99f89ee8c3.zip
do not read depends twice
Diffstat (limited to 'pciusb.c')
-rw-r--r--pciusb.c28
1 files changed, 15 insertions, 13 deletions
diff --git a/pciusb.c b/pciusb.c
index 5c1a2b6..2c42a04 100644
--- a/pciusb.c
+++ b/pciusb.c
@@ -70,26 +70,28 @@ static void find_modules_through_aliases(struct pciusb_entries *entries) {
read_toplevel_config(config, modalias, 0,
0, &modoptions, &commands, &aliases, &blacklist);
- char *alias_filelist[] = {
- table_name_to_file("preferred-modules.alias"),
- aliasdefault,
- table_name_to_file("dkms-modules.alias"),
- NULL,
- };
- char **alias_file = alias_filelist;
- while (!aliases && *alias_file) {
+ if (!aliases) {
/* We only use canned aliases as last resort. */
read_depends(dirname, modalias, &list);
if (list_empty(&list)
&& !find_command(modalias, commands))
{
- read_config(*alias_file, modalias, 0,
- 0, &modoptions, &commands,
- &aliases, &blacklist);
- aliases = apply_blacklist(aliases, blacklist);
+ char *alias_filelist[] = {
+ table_name_to_file("preferred-modules.alias"),
+ aliasdefault,
+ table_name_to_file("dkms-modules.alias"),
+ NULL,
+ };
+ char **alias_file = alias_filelist;
+ while (!aliases && *alias_file) {
+ read_config(*alias_file, modalias, 0,
+ 0, &modoptions, &commands,
+ &aliases, &blacklist);
+ aliases = apply_blacklist(aliases, blacklist);
+ alias_file++;
+ }
}
- alias_file++;
}
if (aliases) {
// take the last one because we find eg: generic/ata_generic/sata_sil