prevent traceback when obj.msg_id is not set

This commit is contained in:
Yann Leboulanger 2011-10-16 11:14:40 +02:00
parent e7c377dd9f
commit d00eb5d112
1 changed files with 6 additions and 8 deletions

View File

@ -73,7 +73,7 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
if self.control and self.control.resource: if self.control and self.control.resource:
self.control.change_resource(self.resource) self.control.change_resource(self.resource)
msg_id = None obj.msg_id = None
if obj.mtype == 'chat': if obj.mtype == 'chat':
if not obj.stanza.getTag('body') and obj.chatstate is None: if not obj.stanza.getTag('body') and obj.chatstate is None:
@ -89,7 +89,7 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
msg_to_log = obj.xhtml msg_to_log = obj.xhtml
else: else:
msg_to_log = obj.msgtxt msg_to_log = obj.msgtxt
msg_id = gajim.logger.write(log_type, obj.fjid, obj.msg_id = gajim.logger.write(log_type, obj.fjid,
msg_to_log, tim=obj.timestamp, subject=obj.subject) msg_to_log, tim=obj.timestamp, subject=obj.subject)
except exceptions.PysqliteOperationalError, e: except exceptions.PysqliteOperationalError, e:
self.conn.dispatch('ERROR', (_('Disk WriteError'), str(e))) self.conn.dispatch('ERROR', (_('Disk WriteError'), str(e)))
@ -101,8 +101,6 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
common.logger.LOG_DB_PATH common.logger.LOG_DB_PATH
self.conn.dispatch('ERROR', (pritext, sectext)) self.conn.dispatch('ERROR', (pritext, sectext))
obj.msg_id = msg_id
treat_as = gajim.config.get('treat_incoming_messages') treat_as = gajim.config.get('treat_incoming_messages')
if treat_as: if treat_as:
obj.mtype = treat_as obj.mtype = treat_as
@ -132,8 +130,8 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
# Brand new message, incoming. # Brand new message, incoming.
contact.our_chatstate = obj.chatstate contact.our_chatstate = obj.chatstate
contact.chatstate = obj.chatstate contact.chatstate = obj.chatstate
if msg_id: # Do not overwrite an existing msg_id with None if obj.msg_id: # Do not overwrite an existing msg_id with None
contact.msg_id = msg_id contact.msg_id = obj.msg_id
# THIS MUST BE AFTER chatstates handling # THIS MUST BE AFTER chatstates handling
# AND BEFORE playsound (else we ear sounding on chatstates!) # AND BEFORE playsound (else we ear sounding on chatstates!)
@ -166,8 +164,8 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
if gajim.interface.remote_ctrl: if gajim.interface.remote_ctrl:
gajim.interface.remote_ctrl.raise_signal('NewMessage', ( gajim.interface.remote_ctrl.raise_signal('NewMessage', (
self.conn.name, [obj.fjid, obj.msgtxt, obj.timestamp, self.conn.name, [obj.fjid, obj.msgtxt, obj.timestamp,
obj.encrypted, obj.mtype, obj.subject, obj.chatstate, msg_id, obj.encrypted, obj.mtype, obj.subject, obj.chatstate,
obj.user_nick, obj.xhtml, obj.form_node])) obj.msg_id, obj.user_nick, obj.xhtml, obj.form_node]))
def roster_message2(self, obj): def roster_message2(self, obj):
""" """