changeset 1290feb6745c in /home/hg/repos/gajim details:http://hg.gajim.org/gajim?cmd=changeset;node=1290feb6745c description: do not duplicate messages in the room when the connection is lost
diffstat: src/common/connection.py | 7 ++++++- src/groupchat_control.py | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diffs (45 lines): diff -r e6fe13f2bfbd -r 1290feb6745c src/common/connection.py --- a/src/common/connection.py Wed Feb 22 10:34:15 2012 +0100 +++ b/src/common/connection.py Sat Feb 18 22:48:03 2012 +0400 @@ -2316,7 +2316,8 @@ room_id=resp.getTag('unique').getData())) self.connection.SendAndCallForResponse(iq, _on_response) - def join_gc(self, nick, room_jid, password, change_nick=False): + def join_gc(self, nick, room_jid, password, change_nick=False, + rejoin=False): # FIXME: This room JID needs to be normalized; see #1364 if not gajim.account_is_connected(self.name): return @@ -2365,6 +2366,10 @@ last_date = time.strftime('%Y-%m-%dT%H:%M:%SZ', time.gmtime( last_date)) tags['since'] = last_date + if rejoin: + tags['since'] = time.strftime('%Y-%m-%dT%H:%M:%SZ', + time.gmtime(gajim.logger.get_last_date_that_has_logs( + room_jid, is_room=True) + 1)) nb = gajim.config.get('muc_restore_lines') if nb >= 0: tags['maxstanzas'] = nb diff -r e6fe13f2bfbd -r 1290feb6745c src/groupchat_control.py --- a/src/groupchat_control.py Wed Feb 22 10:34:15 2012 +0100 +++ b/src/groupchat_control.py Sat Feb 18 22:48:03 2012 +0400 @@ -1274,7 +1274,7 @@ gajim.gc_connected[obj.conn.name][self.room_jid]: return password = gajim.gc_passwords.get(self.room_jid, '') - obj.conn.join_gc(self.nick, self.room_jid, password) + obj.conn.join_gc(self.nick, self.room_jid, password, rejoin=True) def _nec_decrypted_message_received(self, obj): if obj.conn.name != self.account: @@ -1351,7 +1351,7 @@ return False password = gajim.gc_passwords.get(self.room_jid, '') gajim.connections[self.account].join_gc(self.nick, self.room_jid, - password) + password, rejoin=True) return True def draw_roster(self): _______________________________________________ Commits mailing list Commits@gajim.org http://lists.gajim.org/cgi-bin/listinfo/commits