diff options
author | khali <khali@7894878c-1315-0410-8ee3-d5d059ff63e0> | 2009-02-06 13:14:36 +0000 |
---|---|---|
committer | khali <khali@7894878c-1315-0410-8ee3-d5d059ff63e0> | 2009-02-06 13:14:36 +0000 |
commit | e842857483da87ccff18142efd20e9c31a4d51ee (patch) | |
tree | 180ab4cb705a1eb54986d51f6078773832ffb01e /lib/sysfs.c | |
parent | c50fac60619df0dfc266aa1d11d0e998bfd736c8 (diff) | |
download | lm-sensors-e842857483da87ccff18142efd20e9c31a4d51ee.tar.gz |
When looking for hwmon device attributes, skip non-file sysfs entries.
This speeds things up a little. Patch from Andre Prendel.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@5636 7894878c-1315-0410-8ee3-d5d059ff63e0
Diffstat (limited to 'lib/sysfs.c')
-rw-r--r-- | lib/sysfs.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/sysfs.c b/lib/sysfs.c index 7f805a80..4c383eb5 100644 --- a/lib/sysfs.c +++ b/lib/sysfs.c @@ -357,12 +357,15 @@ static int sensors_read_dynamic_chip(sensors_chip_features *chip, sensors_fatal_error(__func__, "Out of memory"); while ((ent = readdir(dir))) { - char *name = ent->d_name; + char *name; int nr; - if (ent->d_name[0] == '.') + /* Skip directories and symlinks */ + if (ent->d_type != DT_REG) continue; + name = ent->d_name; + sftype = sensors_subfeature_get_type(name, &nr); if (sftype == SENSORS_SUBFEATURE_UNKNOWN) continue; |