From 8e184ad6e23a8248e149cd5bf4f9bf56089a6dd1 Mon Sep 17 00:00:00 2001 From: Martin Pitt Date: Fri, 13 Mar 2015 08:35:59 +0100 Subject: [PATCH] core: don't change removed devices to state "tentative" Commit 628c89c introduced the "tentative" device state, which caused devices to go from "plugged" to "tentative" on a remove uevent. This breaks the cleanup of stale mounts (see commit 3b48ce4), as that only applies to "dead" devices. The "tentative" state only really makes sense on adding a device when we don't know where it was coming from (i. e. not from udev). But when we get a device removal from udev we definitively know that it's gone, so change the device state back to "dead" as before 628c89c. (cherry picked from commit 496068a8288084ab3ecf8b179a8403ecff1a6be8) --- src/core/device.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/device.c b/src/core/device.c index 4ff8827219..cc4ebd2c87 100644 --- a/src/core/device.c +++ b/src/core/device.c @@ -421,7 +421,7 @@ static void device_update_found_one(Device *d, bool add, DeviceFound found, bool if (now) { if (d->found & DEVICE_FOUND_UDEV) device_set_state(d, DEVICE_PLUGGED); - else if (d->found != DEVICE_NOT_FOUND) + else if (add && d->found != DEVICE_NOT_FOUND) device_set_state(d, DEVICE_TENTATIVE); else device_set_state(d, DEVICE_DEAD);