diff options
author | Dave Korn <dave.korn@artimi.com> | 2009-06-25 12:32:10 +0000 |
---|---|---|
committer | Dave Korn <dave.korn@artimi.com> | 2009-06-25 12:32:10 +0000 |
commit | c41ba836f2cfd3e9abe2e7b19613eb96e6428feb (patch) | |
tree | f623c26e75770f2040d3b96a19bdf9ee673d6a5c /bfd | |
parent | 15f0844bac5785d3a01ce4f54530221757487657 (diff) | |
download | gdb-c41ba836f2cfd3e9abe2e7b19613eb96e6428feb.zip gdb-c41ba836f2cfd3e9abe2e7b19613eb96e6428feb.tar.gz gdb-c41ba836f2cfd3e9abe2e7b19613eb96e6428feb.tar.bz2 |
2009-06-25 Rafael Avila de Espindola <espindola@google.com>
* plugin.c (load_plugin): Use stat and S_ISREG instead of the d_type
field of struct dirent.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/plugin.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index f5cbe71..0ac2820 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2009-06-25 Rafael Avila de Espindola <espindola@google.com> + + * plugin.c (load_plugin): Use stat and S_ISREG instead of the d_type + field of struct dirent. + 2009-06-23 Tristan Gingold <gingold@adacore.com> * vms.c (vms_get_synthetic_symtab): Remove duplicate definition diff --git a/bfd/plugin.c b/bfd/plugin.c index ca47ab6..053fdd1 100644 --- a/bfd/plugin.c +++ b/bfd/plugin.c @@ -203,11 +203,11 @@ load_plugin (void) while ((ent = readdir (d))) { char *full_name; - if (ent->d_type != DT_REG && ent->d_type != DT_LNK) - continue; + struct stat s; full_name = concat (p, "/", ent->d_name, NULL); - found = try_load_plugin (full_name); + if (stat(full_name, &s) == 0 && S_ISREG (s.st_mode)) + found = try_load_plugin (full_name); free (full_name); if (found) break; |