changeset 6771b91032cd in /home/hg/repos/gajim
details:http://hg.gajim.org/gajim?cmd=changeset;node=6771b91032cd
description: * clean roster tables when we remove an account
diffstat:
src/common/logger.py | 15 +++++++++++++--
src/config.py | 1 +
2 files changed, 14 insertions(+), 2 deletions(-)
diffs (48 lines):
diff -r b67198acb52f -r 6771b91032cd src/common/logger.py
--- a/src/common/logger.py Sat Jun 27 20:54:49 2009 +0200
+++ b/src/common/logger.py Sun Jun 28 20:43:18 2009 +0200
@@ -858,7 +858,7 @@
jid_id = self.get_jid_id(jid)
except exceptions.PysqliteOperationalError, e:
raise exceptions.PysqliteOperationalError(str(e))
- sql = 'DELETE FROM roster_entry WHERE account_jid_id = %d AND
jid_id = %d' % (account_jid_id, jid_id)
+ sql = 'DELETE FROM roster_entry WHERE account_jid_id=%d AND
jid_id=%d' % (account_jid_id, jid_id)
self.simple_commit(sql)
def add_or_update_contact(self, account_jid, jid, name, sub, ask,
groups):
@@ -875,7 +875,7 @@
# Update groups information
# First we delete all previous groups information
- sql = 'DELETE FROM roster_group WHERE account_jid_id = %d AND
jid_id = %d' % (account_jid_id, jid_id)
+ sql = 'DELETE FROM roster_group WHERE account_jid_id=%d AND
jid_id=%d' % (account_jid_id, jid_id)
self.cur.execute(sql)
# Then we add all new groups information
for group in groups:
@@ -923,4 +923,15 @@
return data
+ def remove_roster(self, account_jid):
+ account_jid_id = self.get_jid_id(account_jid)
+
+ sql = 'DELETE FROM roster_group WHERE account_jid_id=%d' % (
+ account_jid_id)
+ self.cur.execute(sql)
+
+ sql = 'DELETE FROM roster_entry WHERE account_jid_id=%d' % (
+ account_jid_id)
+ self.simple_commit(sql)
+
# vim: se ts=3:
diff -r b67198acb52f -r 6771b91032cd src/config.py
--- a/src/config.py Sat Jun 27 20:54:49 2009 +0200
+++ b/src/config.py Sun Jun 28 20:43:18 2009 +0200
@@ -2632,6 +2632,7 @@
gajim.interface.roster.close_all(self.account, force = True)
gajim.connections[self.account].disconnect(on_purpose = True)
del gajim.connections[self.account]
+
gajim.logger.remove_roster(gajim.get_jid_from_account(self.account))
gajim.config.del_per('accounts', self.account)
gajim.interface.save_config()
del gajim.interface.instances[self.account]
_______________________________________________
Commits mailing list
[email protected]
http://lists.gajim.org/cgi-bin/listinfo/commits