From d53c477e4e2589e15267fe2b3de4bc59fe32aa3e Mon Sep 17 00:00:00 2001 From: Michael Vetter Date: Wed, 5 Jun 2019 09:56:00 +0200 Subject: [PATCH] Reduce timestamp call when saving last muc message Let's test for mucwin earlier. --- src/event/server_events.c | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/event/server_events.c b/src/event/server_events.c index b496e3e2..85c0e6ca 100644 --- a/src/event/server_events.c +++ b/src/event/server_events.c @@ -273,20 +273,21 @@ sv_ev_room_history(const char *const room_jid, const char *const nick, GDateTime *timestamp, const char *const message) { ProfMucWin *mucwin = wins_get_muc(room_jid); - - // if this is the first successful connection - if (_success_connections_counter == 1) { - // save timestamp of last received muc message - // so we dont display, if there was no activity in channel, once we reconnect - if (_last_muc_message) { - g_date_time_unref(_last_muc_message); + if (mucwin) { + // if this is the first successful connection + if (_success_connections_counter == 1) { + // save timestamp of last received muc message + // so we dont display, if there was no activity in channel, once we reconnect + if (_last_muc_message) { + g_date_time_unref(_last_muc_message); + } + _last_muc_message = g_date_time_new_now_local(); } - _last_muc_message = g_date_time_new_now_local(); - } - gboolean younger = g_date_time_compare(_last_muc_message, timestamp) < 0 ? TRUE : FALSE; - if (mucwin && (_success_connections_counter == 1 || younger )) { - mucwin_history(mucwin, nick, timestamp, message); + gboolean younger = g_date_time_compare(_last_muc_message, timestamp) < 0 ? TRUE : FALSE; + if (_success_connections_counter == 1 || younger ) { + mucwin_history(mucwin, nick, timestamp, message); + } } }