Author: asterix Date: 2007-08-08 18:10:38 +0200 (Wed, 08 Aug 2007) New Revision: 8471
Modified: trunk/src/common/passwords.py Log: fix gnomekeyring.DeniedError. fixes #3300
Modified: trunk/src/common/passwords.py =================================================================== --- trunk/src/common/passwords.py 2007-08-08 13:42:44 UTC (rev 8470) +++ trunk/src/common/passwords.py 2007-08-08 16:10:38 UTC (rev 8471) @@ -81,9 +81,14 @@ def save_password(self, account_name, password, update=True): display_name = _('Gajim account %s') % account_name attributes = dict(account_name=str(account_name), gajim=1) - auth_token = gnomekeyring.item_create_sync( - self.keyring, gnomekeyring.ITEM_GENERIC_SECRET, - display_name, attributes, password, update) + try: + auth_token = gnomekeyring.item_create_sync( + self.keyring, gnomekeyring.ITEM_GENERIC_SECRET, + display_name, attributes, password, update) + except gnomekeyring.DeniedError: + set_storage(SimplePasswordStorage()) + storage.save_password(account_name, password) + return token = 'gnomekeyring:%i' % auth_token gajim.config.set_per('accounts', account_name, 'password', token) if gajim.connections.has_key(account_name):