mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-12 08:39:01 +08:00
Handle raised error when there is no keyring backend present
CURA-7180 keyring storage
This commit is contained in:
parent
3fd3fd7c7d
commit
c462b62edc
@ -13,7 +13,12 @@ class KeyringAttribute:
|
|||||||
"""
|
"""
|
||||||
def __get__(self, instance: Type["BaseModel"], owner: type) -> str:
|
def __get__(self, instance: Type["BaseModel"], owner: type) -> str:
|
||||||
if self._store_secure:
|
if self._store_secure:
|
||||||
return keyring.get_password("cura", self._keyring_name)
|
try:
|
||||||
|
return keyring.get_password("cura", self._keyring_name)
|
||||||
|
except keyring.errors.NoKeyringError:
|
||||||
|
self._store_secure = False
|
||||||
|
Logger.logException("w", "No keyring backend present")
|
||||||
|
return getattr(instance, self._name)
|
||||||
else:
|
else:
|
||||||
return getattr(instance, self._name)
|
return getattr(instance, self._name)
|
||||||
|
|
||||||
@ -26,6 +31,10 @@ class KeyringAttribute:
|
|||||||
self._store_secure = False
|
self._store_secure = False
|
||||||
setattr(instance, self._name, value)
|
setattr(instance, self._name, value)
|
||||||
Logger.logException("w", "Keyring access denied")
|
Logger.logException("w", "Keyring access denied")
|
||||||
|
except keyring.errors.NoKeyringError:
|
||||||
|
self._store_secure = False
|
||||||
|
setattr(instance, self._name, value)
|
||||||
|
Logger.logException("w", "No keyring backend present")
|
||||||
else:
|
else:
|
||||||
setattr(instance, self._name, value)
|
setattr(instance, self._name, value)
|
||||||
|
|
||||||
@ -35,6 +44,6 @@ class KeyringAttribute:
|
|||||||
self._store_secure = False
|
self._store_secure = False
|
||||||
try:
|
try:
|
||||||
self._store_secure = keyring.backend.KeyringBackend.viable
|
self._store_secure = keyring.backend.KeyringBackend.viable
|
||||||
except keyring.errors.KeyringError:
|
except keyring.errors.NoKeyringError:
|
||||||
Logger.logException("w", "Could not use keyring")
|
Logger.logException("w", "Could not use keyring")
|
||||||
setattr(owner, self._name, None)
|
setattr(owner, self._name, None)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user