chiark / gitweb /
mount: don't fire PropertiesChanged signals for mounts that are stopped
authorLennart Poettering <lennart@poettering.net>
Wed, 26 Feb 2014 03:28:37 +0000 (04:28 +0100)
committerLennart Poettering <lennart@poettering.net>
Wed, 26 Feb 2014 03:32:03 +0000 (04:32 +0100)
src/core/mount.c

index 98812c9c0820e021d9d4a47829f0b534ecabbcec..7a92e1ca60133052baba6d46993fa9070a267585 100644 (file)
@@ -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;