Mercurial > ~mikael > mcabber > hg
diff mcabber/mcabber/xmpp_iqrequest.c @ 2346:7921c8d671c8
Implemented another helper function jid_get_resource_name
author | franky |
---|---|
date | Tue, 14 May 2019 22:19:33 +0200 |
parents | 4f3821bda633 |
children |
line wrap: on
line diff
--- a/mcabber/mcabber/xmpp_iqrequest.c Sat May 11 23:06:34 2019 +0200 +++ b/mcabber/mcabber/xmpp_iqrequest.c Tue May 14 22:19:33 2019 +0200 @@ -233,7 +233,8 @@ { LmMessageNode *ansqry; const char *p, *bjid; - char *buf, *tmp; + char *bare_jid; + char *buf; // Check IQ result sender bjid = lm_message_get_from(m); @@ -262,34 +263,34 @@ scr_LogPrint(LPRINT_LOGNORM, "%s", buf); // bjid should now really be the "bare JID", let's strip the resource - tmp = strchr(bjid, JID_RESOURCE_SEPARATOR); - if (tmp) *tmp = '\0'; + bare_jid = jidtodisp(bjid); - scr_WriteIncomingMessage(bjid, buf, 0, HBB_PREFIX_INFO, 0); + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO, 0); g_free(buf); // Get result data... p = lm_message_node_get_child_value(ansqry, "name"); if (p && *p) { buf = g_strdup_printf("Name: %s", p); - scr_WriteIncomingMessage(bjid, buf, + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); g_free(buf); } p = lm_message_node_get_child_value(ansqry, "version"); if (p && *p) { buf = g_strdup_printf("Version: %s", p); - scr_WriteIncomingMessage(bjid, buf, + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); g_free(buf); } p = lm_message_node_get_child_value(ansqry, "os"); if (p && *p) { buf = g_strdup_printf("OS: %s", p); - scr_WriteIncomingMessage(bjid, buf, + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); g_free(buf); } + g_free(bare_jid); return LM_HANDLER_RESULT_REMOVE_MESSAGE; } @@ -298,7 +299,8 @@ { LmMessageNode *ansqry; const char *p, *bjid; - char *buf, *tmp; + char *bare_jid; + char *buf; // Check IQ result sender bjid = lm_message_get_from(m); @@ -327,34 +329,34 @@ scr_LogPrint(LPRINT_LOGNORM, "%s", buf); // bjid should now really be the "bare JID", let's strip the resource - tmp = strchr(bjid, JID_RESOURCE_SEPARATOR); - if (tmp) *tmp = '\0'; + bare_jid = jidtodisp(bjid); - scr_WriteIncomingMessage(bjid, buf, 0, HBB_PREFIX_INFO, 0); + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO, 0); g_free(buf); // Get result data... p = lm_message_node_get_child_value(ansqry, "utc"); if (p && *p) { buf = g_strdup_printf("UTC: %s", p); - scr_WriteIncomingMessage(bjid, buf, + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); g_free(buf); } p = lm_message_node_get_child_value(ansqry, "tzo"); if (p && *p) { buf = g_strdup_printf("TZ: %s", p); - scr_WriteIncomingMessage(bjid, buf, + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); g_free(buf); } p = lm_message_node_get_child_value(ansqry, "display"); if (p && *p) { buf = g_strdup_printf("Time: %s", p); - scr_WriteIncomingMessage(bjid, buf, + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); g_free(buf); } + g_free(bare_jid); return LM_HANDLER_RESULT_REMOVE_MESSAGE; } @@ -363,7 +365,8 @@ { LmMessageNode *ansqry; const char *p, *bjid; - char *buf, *tmp; + char *bare_jid; + char *buf; // Check IQ result sender bjid = lm_message_get_from(m); @@ -392,10 +395,9 @@ scr_LogPrint(LPRINT_LOGNORM, "%s", buf); // bjid should now really be the "bare JID", let's strip the resource - tmp = strchr(bjid, JID_RESOURCE_SEPARATOR); - if (tmp) *tmp = '\0'; + bare_jid = jidtodisp(bjid); - scr_WriteIncomingMessage(bjid, buf, 0, HBB_PREFIX_INFO, 0); + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO, 0); g_free(buf); // Get result data... @@ -414,19 +416,20 @@ g_string_append_printf(sbuf, "%02ld:", s/3600L); s %= 3600L; g_string_append_printf(sbuf, "%02ld:%02ld", s/60L, s%60L); - scr_WriteIncomingMessage(bjid, sbuf->str, + scr_WriteIncomingMessage(bare_jid, sbuf->str, 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); g_string_free(sbuf, TRUE); } else { - scr_WriteIncomingMessage(bjid, "No idle time reported.", + scr_WriteIncomingMessage(bare_jid, "No idle time reported.", 0, HBB_PREFIX_INFO | HBB_PREFIX_CONT, 0); } p = lm_message_node_get_value(ansqry); if (p) { buf = g_strdup_printf("Status message: %s", p); - scr_WriteIncomingMessage(bjid, buf, 0, HBB_PREFIX_INFO, 0); + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO, 0); g_free(buf); } + g_free(bare_jid); return LM_HANDLER_RESULT_REMOVE_MESSAGE; } @@ -546,7 +549,8 @@ { LmMessageNode *ansqry; const char *bjid; - char *buf, *tmp; + char *bare_jid; + char *buf; // Check IQ result sender bjid = lm_message_get_from(m); @@ -576,14 +580,14 @@ } // bjid should really be the "bare JID", let's strip the resource - tmp = strchr(bjid, JID_RESOURCE_SEPARATOR); - if (tmp) *tmp = '\0'; + bare_jid = jidtodisp(bjid); - scr_WriteIncomingMessage(bjid, buf, 0, HBB_PREFIX_INFO, 0); + scr_WriteIncomingMessage(bare_jid, buf, 0, HBB_PREFIX_INFO, 0); g_free(buf); // Get result data... - handle_vcard_node(bjid, ansqry); + handle_vcard_node(bare_jid, ansqry); + g_free(bare_jid); return LM_HANDLER_RESULT_REMOVE_MESSAGE; }