From fc139357e18b832542f1f3c6819e65d148ae8073 Mon Sep 17 00:00:00 2001 From: Mario Limonciello Date: Thu, 13 Sep 2018 10:06:39 -0500 Subject: [PATCH] fu-engine: Don't show devices pending a reboot in GetUpgrades Fixes part of http://gitlab.gnome.org/GNOME/gnome-software/issues/341 --- src/fu-engine.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/fu-engine.c b/src/fu-engine.c index 0a71e5bb9..e6d31368a 100644 --- a/src/fu-engine.c +++ b/src/fu-engine.c @@ -2600,6 +2600,16 @@ fu_engine_get_upgrades (FuEngine *self, const gchar *device_id, GError **error) if (device == NULL) return NULL; + /* don't show upgrades again until we reboot */ + if (fu_device_get_update_state (device) == FWUPD_UPDATE_STATE_NEEDS_REBOOT) { + g_set_error (error, + FWUPD_ERROR, + FWUPD_ERROR_NOTHING_TO_DO, + "No upgrades for %s: A reboot is pending", + fu_device_get_name (device)); + return NULL; + } + /* get all the releases for the device */ releases_tmp = fu_engine_get_releases_for_device (self, device, error); if (releases_tmp == NULL)