diff --git a/src/fu-install-task.c b/src/fu-install-task.c index 6bc56f2d5..222e6ff50 100644 --- a/src/fu-install-task.c +++ b/src/fu-install-task.c @@ -113,6 +113,7 @@ fu_install_task_check_requirements (FuInstallTask *self, const gchar *version_lowest; gboolean matches_guid = FALSE; gint vercmp; + g_autoptr(GError) error_local = NULL; g_return_val_if_fail (FU_IS_INSTALL_TASK (self), FALSE); g_return_val_if_fail (error == NULL || *error == NULL, FALSE); @@ -236,7 +237,17 @@ fu_install_task_check_requirements (FuInstallTask *self, } /* verify */ - return fu_keyring_get_release_trust_flags (release, &self->trust_flags, error); + if (!fu_keyring_get_release_trust_flags (release, &self->trust_flags, &error_local)) { + if (g_error_matches (error_local, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { + g_warning ("Ignoring verification for %s: %s", + fu_device_get_name (self->device), + error_local->message); + } else { + g_propagate_error (error, g_steal_pointer (&error_local)); + return FALSE; + } + } + return TRUE; } /**