diff options
author | Rob Landley <rob@landley.net> | 2016-12-08 21:29:00 -0600 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2016-12-08 21:29:00 -0600 |
commit | a975952d885c47aeca013e76194142a47e96d49a (patch) | |
tree | dad2f585a2d9a338fdf721f492bff57d4e68e8c4 /lib | |
parent | e82d6d14fcc272041e578e8d0a2e342ee65365b3 (diff) | |
download | toybox-a975952d885c47aeca013e76194142a47e96d49a.tar.gz |
Add DIRTREE_PROC to skip non-numeric entries and make ps/top etc use it.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/dirtree.c | 1 | ||||
-rw-r--r-- | lib/lib.h | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/lib/dirtree.c b/lib/dirtree.c index 07c1cdc7..f9524a5d 100644 --- a/lib/dirtree.c +++ b/lib/dirtree.c @@ -151,6 +151,7 @@ int dirtree_recurse(struct dirtree *node, // The extra parentheses are to shut the stupid compiler up. while ((entry = readdir(dir))) { + if ((flags&DIRTREE_PROC) && !isdigit(*entry->d_name)) continue; if (!(new = dirtree_add_node(node, entry->d_name, flags))) continue; new = dirtree_handle_callback(new, callback); if (new == DIRTREE_ABORTVAL) break; @@ -73,6 +73,8 @@ void get_optflags(void); #define DIRTREE_SHUTUP 16 // Breadth first traversal, conserves filehandles at the expense of memory #define DIRTREE_BREADTH 32 +// skip non-numeric entries +#define DIRTREE_PROC 64 // Don't look at any more files in this directory. #define DIRTREE_ABORT 256 |