forked from pool/systemd
52 lines
1.9 KiB
Diff
52 lines
1.9 KiB
Diff
|
From aef831369cd2a7a1bd4a58dd96ff8628ed6a85f9 Mon Sep 17 00:00:00 2001
|
||
|
From: Lennart Poettering <lennart@poettering.net>
|
||
|
Date: Wed, 26 Feb 2014 04:28:37 +0100
|
||
|
Subject: [PATCH] mount: don't fire PropertiesChanged signals for mounts that
|
||
|
are stopped
|
||
|
|
||
|
---
|
||
|
src/core/mount.c | 9 ++++++---
|
||
|
1 file changed, 6 insertions(+), 3 deletions(-)
|
||
|
|
||
|
diff --git src/core/mount.c src/core/mount.c
|
||
|
index 98812c9..7a92e1c 100644
|
||
|
--- src/core/mount.c
|
||
|
+++ src/core/mount.c
|
||
|
@@ -1679,20 +1679,20 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents,
|
||
|
Mount *mount = MOUNT(u);
|
||
|
|
||
|
if (!mount->is_mounted) {
|
||
|
- /* This has just been unmounted. */
|
||
|
|
||
|
mount->from_proc_self_mountinfo = false;
|
||
|
|
||
|
switch (mount->state) {
|
||
|
|
||
|
case MOUNT_MOUNTED:
|
||
|
+ /* This has just been unmounted by
|
||
|
+ * somebody else, follow the state
|
||
|
+ * change. */
|
||
|
mount_enter_dead(mount, MOUNT_SUCCESS);
|
||
|
break;
|
||
|
|
||
|
default:
|
||
|
- mount_set_state(mount, mount->state);
|
||
|
break;
|
||
|
-
|
||
|
}
|
||
|
|
||
|
} else if (mount->just_mounted || mount->just_changed) {
|
||
|
@@ -1703,6 +1703,9 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents,
|
||
|
|
||
|
case MOUNT_DEAD:
|
||
|
case MOUNT_FAILED:
|
||
|
+ /* This has just been mounted by
|
||
|
+ * somebody else, follow the state
|
||
|
+ * change. */
|
||
|
mount_enter_mounted(mount, MOUNT_SUCCESS);
|
||
|
break;
|
||
|
|
||
|
--
|
||
|
1.7.9.2
|
||
|
|