comparison mcabber/mcabber/xmpp_iq.c @ 2290:71ec41732035

Fix small memory leak 'servername' was not freed (and jidtodisp() was unnecessary. (Spotted by franky)
author Mikael Berthe <mikael@lilotux.net>
date Wed, 21 Dec 2016 20:43:58 +0100
parents 6e1ead98930d
children 0d350e979bde
comparison
equal deleted inserted replaced
2289:a63814f2e4c8 2290:71ec41732035
583 guint roster_type; 583 guint roster_type;
584 584
585 const gchar *from = lm_message_get_from(m); 585 const gchar *from = lm_message_get_from(m);
586 586
587 if (from) { 587 if (from) {
588 gchar *self_bjid = jidtodisp(lm_connection_get_jid(c)); 588 const gchar *self_jid = lm_connection_get_jid(c);
589 gchar *servername = get_servername(self_bjid, ""); 589 gchar *servername = get_servername(self_jid, "");
590 if ((!jid_equal(self_bjid, from)) && 590 if ((!jid_equal(self_jid, from)) &&
591 (!servername || strcasecmp(from, servername))) { 591 (!servername || strcasecmp(from, servername))) {
592 scr_LogPrint(LPRINT_LOGNORM, "Received invalid roster IQ request"); 592 scr_LogPrint(LPRINT_LOGNORM, "Received invalid roster IQ request");
593 g_free(self_bjid); 593 g_free(servername);
594 return LM_HANDLER_RESULT_REMOVE_MESSAGE; 594 return LM_HANDLER_RESULT_REMOVE_MESSAGE;
595 } 595 }
596 g_free(self_bjid); 596 g_free(servername);
597 } 597 }
598 598
599 y = lm_message_node_find_child(lm_message_node_find_xmlns(m->node, NS_ROSTER), 599 y = lm_message_node_find_child(lm_message_node_find_xmlns(m->node, NS_ROSTER),
600 "item"); 600 "item");
601 for ( ; y; y = y->next) { 601 for ( ; y; y = y->next) {