Commit 39f030b1 authored by Tijmen de Mes's avatar Tijmen de Mes

Fixed storing/handling messages between local accounts

parent f54eb5e4
...@@ -438,13 +438,10 @@ class MessageHistory(object, metaclass=Singleton): ...@@ -438,13 +438,10 @@ class MessageHistory(object, metaclass=Singleton):
@run_in_thread('db') @run_in_thread('db')
def update(self, id, state): def update(self, id, state):
try: messages = Message.selectBy(message_id=id)
message = Message.selectBy(message_id=id)[0] for message in messages:
except IndexError:
pass
else:
if message.direction == 'outgoing' and state == 'received': if message.direction == 'outgoing' and state == 'received':
return continue
if message.state != 'displayed' and message.state != state: if message.state != 'displayed' and message.state != state:
log.info(f'== Updating {message.direction} {id} {message.state} -> {state}') log.info(f'== Updating {message.direction} {id} {message.state} -> {state}')
...@@ -457,11 +454,8 @@ class MessageHistory(object, metaclass=Singleton): ...@@ -457,11 +454,8 @@ class MessageHistory(object, metaclass=Singleton):
message_info = session.info.streams.messages message_info = session.info.streams.messages
if message_info.encryption is not None and message.is_secure: if message_info.encryption is not None and message.is_secure:
try: db_messages = Message.selectBy(message_id=message.id)
db_message = Message.selectBy(message_id=message.id)[0] for db_message in db_messages:
except IndexError:
pass
else:
encryption_type = str([f'{message_info.encryption}']) encryption_type = str([f'{message_info.encryption}'])
if db_message.encryption_type != encryption_type: if db_message.encryption_type != encryption_type:
log.debug(f'== Updating {message.id} encryption {db_message.encryption_type} -> {encryption_type}') log.debug(f'== Updating {message.id} encryption {db_message.encryption_type} -> {encryption_type}')
...@@ -506,12 +500,10 @@ class MessageHistory(object, metaclass=Singleton): ...@@ -506,12 +500,10 @@ class MessageHistory(object, metaclass=Singleton):
@run_in_thread('db') @run_in_thread('db')
def remove_message(self, id): def remove_message(self, id):
log.debug(f'== Trying to removing message: {id}') log.debug(f'== Trying to removing message: {id}')
try: result = Message.selectBy(message_id=id)
result = Message.selectBy(message_id=id)[0] for message in result:
except IndexError: log.info(f'== Removing message: {id}')
return message.destroySelf()
log.info(f'== Removing message: {id}')
result.destroySelf()
class IconDescriptor(object): class IconDescriptor(object):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment