summaryrefslogtreecommitdiff
path: root/libsecret
diff options
context:
space:
mode:
authorSlava Aseev <ptrnine@altlinux.org>2021-08-16 19:25:56 +0300
committerSlava Aseev <ptrnine@altlinux.org>2021-08-16 19:25:56 +0300
commitd620c79d83acc1bae0bbd7153a691f952b74ca31 (patch)
tree501ffb3741e114a31fcd706e6904a8d850da638d /libsecret
parent34dac1e80581acc8874be067da639aa67d275de7 (diff)
downloadlibsecret-d620c79d83acc1bae0bbd7153a691f952b74ca31.tar.gz
Create default collection after DBus.Error.UnknownObject
Some Secret Service API backend implementations (like keepassxc) throws UnknownObject (instead of UnknownMethod as gnome-keyring do) after creating an item in the non-existent /org/freedesktop/secrets/aliases/default.
Diffstat (limited to 'libsecret')
-rw-r--r--libsecret/secret-methods.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libsecret/secret-methods.c b/libsecret/secret-methods.c
index c4decf8..b9b696e 100644
--- a/libsecret/secret-methods.c
+++ b/libsecret/secret-methods.c
@@ -1050,7 +1050,8 @@ on_store_create (GObject *source,
if (!store->created_collection &&
(g_error_matches (error, SECRET_ERROR, SECRET_ERROR_NO_SUCH_OBJECT) ||
- g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD)) &&
+ g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_METHOD) ||
+ g_error_matches (error, G_DBUS_ERROR, G_DBUS_ERROR_UNKNOWN_OBJECT)) &&
g_strcmp0 (store->collection_path, SECRET_ALIAS_PREFIX "default") == 0) {
properties = _secret_collection_properties_new (_("Default keyring"));
secret_service_create_collection_dbus_path (service, properties, "default",