"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/irc/core/irc-cap.c" between
irssi-1.2.2.tar.gz and irssi-1.2.3.tar.gz

About: irssi is a terminal based IRC client that also supports SILC and ICB protocols via plugins.

irc-cap.c  (irssi-1.2.2):irc-cap.c  (irssi-1.2.3)
skipping to change at line 134 skipping to change at line 134
} }
/* This branch covers the '*' parameter isn't present, adjust the /* This branch covers the '*' parameter isn't present, adjust the
* parameter pointer to compensate for this */ * parameter pointer to compensate for this */
else if (list[0] == '\0') { else if (list[0] == '\0') {
multiline = FALSE; multiline = FALSE;
list = star; list = star;
} }
/* Malformed request, terminate the negotiation */ /* Malformed request, terminate the negotiation */
else { else {
irc_cap_finish_negotiation(server); irc_cap_finish_negotiation(server);
g_free(params);
g_warn_if_reached(); g_warn_if_reached();
return; return;
} }
/* The table is created only when needed */ /* The table is created only when needed */
if (server->cap_supported == NULL) { if (server->cap_supported == NULL) {
server->cap_supported = g_hash_table_new_full(g_str_hash, server->cap_supported = g_hash_table_new_full(g_str_hash,
g_str_equal, g_str_equal,
g_free, g_free); g_free, g_free);
} }
skipping to change at line 223 skipping to change at line 224
} }
else if (!g_ascii_strcasecmp(evt, "ACK")) { else if (!g_ascii_strcasecmp(evt, "ACK")) {
int got_sasl = FALSE; int got_sasl = FALSE;
/* Emit a signal for every ack'd cap */ /* Emit a signal for every ack'd cap */
for (i = 0; i < caps_length; i++) { for (i = 0; i < caps_length; i++) {
disable = (*caps[i] == '-'); disable = (*caps[i] == '-');
if (disable) if (disable)
server->cap_active = gslist_delete_string(server- >cap_active, caps[i] + 1, g_free); server->cap_active = gslist_delete_string(server- >cap_active, caps[i] + 1, g_free);
else else if (!gslist_find_string(server->cap_active, caps[i]) )
server->cap_active = g_slist_prepend(server->cap_ active, g_strdup(caps[i])); server->cap_active = g_slist_prepend(server->cap_ active, g_strdup(caps[i]));
if (!strcmp(caps[i], "sasl")) if (!strcmp(caps[i], "sasl"))
got_sasl = TRUE; got_sasl = TRUE;
cap_emit_signal(server, "ack", caps[i]); cap_emit_signal(server, "ack", caps[i]);
} }
/* Hopefully the server has ack'd all the caps requested and we'r e ready to terminate the /* Hopefully the server has ack'd all the caps requested and we'r e ready to terminate the
* negotiation, unless sasl was requested. In this case we must n ot terminate the negotiation * negotiation, unless sasl was requested. In this case we must n ot terminate the negotiation
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)