Fix bug that made automount(8) never unmount stale autofs(5) mounts,
ie mounts for entries that were there in auto_master(5), and then got removed. MFC after: 1 month Sponsored by: The FreeBSD Foundation
This commit is contained in:
parent
da0ba09710
commit
cc4026a45c
@ -676,8 +676,8 @@ node_print(const struct node *n)
|
||||
node_print_indent(child, 0);
|
||||
}
|
||||
|
||||
struct node *
|
||||
node_find(struct node *node, const char *path)
|
||||
static struct node *
|
||||
node_find_x(struct node *node, const char *path)
|
||||
{
|
||||
struct node *child, *found;
|
||||
char *tmp;
|
||||
@ -702,7 +702,7 @@ node_find(struct node *node, const char *path)
|
||||
free(tmp);
|
||||
|
||||
TAILQ_FOREACH(child, &node->n_children, n_next) {
|
||||
found = node_find(child, path);
|
||||
found = node_find_x(child, path);
|
||||
if (found != NULL)
|
||||
return (found);
|
||||
}
|
||||
@ -710,6 +710,17 @@ node_find(struct node *node, const char *path)
|
||||
return (node);
|
||||
}
|
||||
|
||||
struct node *
|
||||
node_find(struct node *root, const char *path)
|
||||
{
|
||||
struct node *node;
|
||||
|
||||
node = node_find_x(root, path);
|
||||
if (node == root)
|
||||
return (NULL);
|
||||
return (node);
|
||||
}
|
||||
|
||||
/*
|
||||
* Canonical form of a map entry looks like this:
|
||||
*
|
||||
|
Loading…
x
Reference in New Issue
Block a user