diff options
| author | Mina Galić <freebsd@igalic.co> | 2023-02-25 17:31:58 +0000 |
|---|---|---|
| committer | Warner Losh <imp@FreeBSD.org> | 2023-02-25 17:35:43 +0000 |
| commit | 773c13c686e4b6ae9dbbc150b342b82c3f47d73a (patch) | |
| tree | a460262fc4a2218b368389b8117580f49f483621 /usr.sbin/kldxref/kldxref.c | |
| parent | e052829e3e16dfd82d0adcbb69fd0e30f47a3a6c (diff) | |
Diffstat (limited to 'usr.sbin/kldxref/kldxref.c')
| -rw-r--r-- | usr.sbin/kldxref/kldxref.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/usr.sbin/kldxref/kldxref.c b/usr.sbin/kldxref/kldxref.c index 7a4d704356b8..933de4991e62 100644 --- a/usr.sbin/kldxref/kldxref.c +++ b/usr.sbin/kldxref/kldxref.c @@ -685,6 +685,7 @@ main(int argc, char *argv[]) { FTS *ftsp; FTSENT *p; + char *dot = NULL; int opt, fts_options, ival; struct stat sb; @@ -752,14 +753,15 @@ main(int argc, char *argv[]) fwrite(&ival, sizeof(ival), 1, fxref); reccnt = 0; } - /* skip non-files and separate debug files */ + /* skip non-files.. */ if (p->fts_info != FTS_F) continue; - if (p->fts_namelen >= 6 && - strcmp(p->fts_name + p->fts_namelen - 6, ".debug") == 0) - continue; - if (p->fts_namelen >= 8 && - strcmp(p->fts_name + p->fts_namelen - 8, ".symbols") == 0) + /* + * Skip files that generate errors like .debug, .symbol and .pkgsave + * by generally skipping all files with 2 dots. + */ + dot = strchr(p->fts_name, '.'); + if (dot && strchr(dot + 1, '.') != NULL) continue; read_kld(p->fts_path, p->fts_name); } |
