* clean roster tables when we remove an account

This commit is contained in:
Anaël Verrier 2009-06-28 20:43:18 +02:00
parent b3fbd59866
commit ff2be61483
2 changed files with 14 additions and 2 deletions

View file

@ -923,4 +923,15 @@ class Logger:
return data 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: # vim: se ts=3:

View file

@ -2632,6 +2632,7 @@ class RemoveAccountWindow:
gajim.interface.roster.close_all(self.account, force = True) gajim.interface.roster.close_all(self.account, force = True)
gajim.connections[self.account].disconnect(on_purpose = True) gajim.connections[self.account].disconnect(on_purpose = True)
del gajim.connections[self.account] del gajim.connections[self.account]
gajim.logger.remove_roster(gajim.get_jid_from_account(self.account))
gajim.config.del_per('accounts', self.account) gajim.config.del_per('accounts', self.account)
gajim.interface.save_config() gajim.interface.save_config()
del gajim.interface.instances[self.account] del gajim.interface.instances[self.account]