diff --git a/src/xmpp/jid.c b/src/xmpp/jid.c index 1f3b1a66..6b5bb62c 100644 --- a/src/xmpp/jid.c +++ b/src/xmpp/jid.c @@ -190,7 +190,7 @@ get_nick_from_full_jid(const char* const full_room_jid) /* * get the fulljid, fall back to the barejid */ -char* +const char* jid_fulljid_or_barejid(Jid* jid) { if (jid->fulljid) { diff --git a/src/xmpp/jid.h b/src/xmpp/jid.h index 8c1b683d..a591b743 100644 --- a/src/xmpp/jid.h +++ b/src/xmpp/jid.h @@ -63,7 +63,7 @@ gboolean jid_is_valid_room_form(Jid* jid); char* create_fulljid(const char* const barejid, const char* const resource); char* get_nick_from_full_jid(const char* const full_room_jid); -char* jid_fulljid_or_barejid(Jid* jid); +const char* jid_fulljid_or_barejid(Jid* jid); gchar* jid_random_resource(void); #endif diff --git a/src/xmpp/presence.c b/src/xmpp/presence.c index 577a2e82..3ad2880f 100644 --- a/src/xmpp/presence.c +++ b/src/xmpp/presence.c @@ -621,7 +621,7 @@ _available_handler(xmpp_stanza_t* const stanza) } return; } else { - char* jid = jid_fulljid_or_barejid(xmpp_presence->jid); + const char* jid = jid_fulljid_or_barejid(xmpp_presence->jid); log_debug("Presence available handler fired for: %s", jid); } @@ -632,7 +632,7 @@ _available_handler(xmpp_stanza_t* const stanza) XMPPCaps* caps = stanza_parse_caps(stanza); if ((g_strcmp0(my_jid->fulljid, xmpp_presence->jid->fulljid) != 0) && caps) { log_debug("Presence contains capabilities."); - char* jid = jid_fulljid_or_barejid(xmpp_presence->jid); + const char* jid = jid_fulljid_or_barejid(xmpp_presence->jid); _handle_caps(jid, caps); } stanza_free_caps(caps); diff --git a/src/xmpp/roster_list.c b/src/xmpp/roster_list.c index 5a710997..771c7af1 100644 --- a/src/xmpp/roster_list.c +++ b/src/xmpp/roster_list.c @@ -275,7 +275,7 @@ roster_remove(const char* const name, const char* const barejid) if (contact) { GList* resources = p_contact_get_available_resources(contact); while (resources) { - auto_gchar gchar* fulljid = g_strdup_printf("%s/%s", barejid, resources->data); + auto_gchar gchar* fulljid = g_strdup_printf("%s/%s", barejid, (char*)resources->data); autocomplete_remove(roster->fulljid_ac, fulljid); resources = g_list_next(resources); } diff --git a/tests/unittests/test_jid.c b/tests/unittests/test_jid.c index 2650d5da..645a7b0a 100644 --- a/tests/unittests/test_jid.c +++ b/tests/unittests/test_jid.c @@ -219,7 +219,7 @@ returns_fulljid_when_exists(void** state) { Jid* jid = jid_create("localpart@domainpart/resourcepart"); - char* result = jid_fulljid_or_barejid(jid); + const char* result = jid_fulljid_or_barejid(jid); assert_string_equal("localpart@domainpart/resourcepart", result); @@ -231,7 +231,7 @@ returns_barejid_when_fulljid_not_exists(void** state) { Jid* jid = jid_create("localpart@domainpart"); - char* result = jid_fulljid_or_barejid(jid); + const char* result = jid_fulljid_or_barejid(jid); assert_string_equal("localpart@domainpart", result);