Mercurial > hg
diff mcabber/src/jabglue.c @ 1255:ceada40bbe20
Update Entity Capabilities (add iq:last)
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Fri, 22 Jun 2007 20:24:19 +0200 |
parents | 401639413340 |
children | d438b56990cd |
line wrap: on
line diff
--- a/mcabber/src/jabglue.c Fri Jun 22 19:21:23 2007 +0200 +++ b/mcabber/src/jabglue.c Fri Jun 22 20:24:19 2007 +0200 @@ -335,15 +335,30 @@ { xmlnode y; const char *ver = entity_version(); + char *exts, *exts2; + + exts = NULL; y = xmlnode_insert_tag(x, "c"); xmlnode_put_attrib(y, "xmlns", NS_CAPS); xmlnode_put_attrib(y, "node", MCABBER_CAPS_NODE); xmlnode_put_attrib(y, "ver", ver); #ifdef JEP0085 - if (!chatstates_disabled) - xmlnode_put_attrib(y, "ext", "csn"); + if (!chatstates_disabled) { + exts2 = g_strjoin(" ", "csn", exts, NULL); + g_free(exts); + exts = exts2; + } #endif + if (!settings_opt_get_int("iq_last_disable")) { + exts2 = g_strjoin(" ", "iql", exts, NULL); + g_free(exts); + exts = exts2; + } + if (exts) { + xmlnode_put_attrib(y, "ext", exts); + g_free(exts); + } } static void roompresence(gpointer room, void *presencedata)