diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2023-04-29 03:12:06 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2023-04-29 23:44:05 +0200 |
commit | 4390eddccfb3918291e7b8e4d708411f9b828c04 (patch) | |
tree | e5983b387ae9f9e0f75a6b6c2a83c3ff03a25221 /lib/fstree | |
parent | f21fa23162d294b1327aaa3528444c1aaceb5b5a (diff) |
gensquashfs: use prefix functionality for glob_files target node
Piece together the prefix path and pass it to the iterator. That way,
we get the full target paths back from the iterator and can use those
directly in the callback for filtering.
We also no longer need the root node for fstree_from_dir (always tree
root) and the callback can no longer return an error state.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/fstree')
-rw-r--r-- | lib/fstree/src/add_by_path.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/lib/fstree/src/add_by_path.c b/lib/fstree/src/add_by_path.c index f204836..344b586 100644 --- a/lib/fstree/src/add_by_path.c +++ b/lib/fstree/src/add_by_path.c @@ -15,23 +15,16 @@ tree_node_t *fstree_add_generic(fstree_t *fs, const char *path, const struct stat *sb, const char *extra) { - return fstree_add_generic_at(fs, fs->root, path, sb, extra); -} - -tree_node_t *fstree_add_generic_at(fstree_t *fs, tree_node_t *root, - const char *path, const struct stat *sb, - const char *extra) -{ tree_node_t *child, *parent; const char *name; if (*path == '\0') { - child = root; + child = fs->root; assert(child != NULL); goto out; } - parent = fstree_get_node_by_path(fs, root, path, true, true); + parent = fstree_get_node_by_path(fs, fs->root, path, true, true); if (parent == NULL) return NULL; |