From e0fa621b8b52da4d95bf5918eb998c9166e4bc7c Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Fri, 21 Jan 2011 01:13:09 +0100 Subject: automount: fix segfault when shutting down https://bugs.freedesktop.org/show_bug.cgi?id=32076 --- src/mount.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/mount.c') diff --git a/src/mount.c b/src/mount.c index f978a5467d..aae9d982ae 100644 --- a/src/mount.c +++ b/src/mount.c @@ -98,12 +98,21 @@ static void mount_parameters_done(MountParameters *p) { static void mount_done(Unit *u) { Mount *m = MOUNT(u); + Meta *other; assert(m); free(m->where); m->where = NULL; + /* Try to detach us from the automount unit if there is any */ + LIST_FOREACH(units_per_type, other, m->meta.manager->units_per_type[UNIT_AUTOMOUNT]) { + Automount *a = (Automount*) other; + + if (a->mount == m) + a->mount = NULL; + } + mount_parameters_done(&m->parameters_etc_fstab); mount_parameters_done(&m->parameters_proc_self_mountinfo); mount_parameters_done(&m->parameters_fragment); -- cgit v1.2.3-54-g00ecf