chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
automount: never consider our own mount point a prefix mount of us
[elogind.git]
/
src
/
automount.c
diff --git
a/src/automount.c
b/src/automount.c
index 465354f5556503f82f790c8b0f69c973ca1d1a04..32680461c24612d61ebe15c71a0d6a2169050d66 100644
(file)
--- a/
src/automount.c
+++ b/
src/automount.c
@@
-59,6
+59,8
@@
static void repeat_unmout(const char *path) {
assert(path);
for (;;) {
assert(path);
for (;;) {
+ /* If there are multiple mounts on a mount point, this
+ * removes them all */
if (umount2(path, MNT_DETACH) >= 0)
continue;
if (umount2(path, MNT_DETACH) >= 0)
continue;
@@
-118,6
+120,9
@@
int automount_add_one_mount_link(Automount *a, Mount *m) {
if (!path_startswith(a->where, m->where))
return 0;
if (!path_startswith(a->where, m->where))
return 0;
+ if (path_equal(a->where, m->where))
+ return 0;
+
if ((r = unit_add_dependency(UNIT(m), UNIT_BEFORE, UNIT(a), true)) < 0)
return r;
if ((r = unit_add_dependency(UNIT(m), UNIT_BEFORE, UNIT(a), true)) < 0)
return r;