Mercurial > ~mikael > mcabber > hg
comparison mcabber/src/jabglue.c @ 818:55cd45481a07
Fix a buddylist bug when receiving a subscription request
The buddylist wasn't refreshed when a subscription request was received,
so the buffer window message couldn't be read.
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Fri, 21 Apr 2006 19:08:04 +0200 |
parents | 898dd706cc5c |
children | c2d7d9dd4193 |
comparison
equal
deleted
inserted
replaced
817:6792164a4223 | 818:55cd45481a07 |
---|---|
1372 static void handle_packet_s10n(jconn conn, char *type, char *from, | 1372 static void handle_packet_s10n(jconn conn, char *type, char *from, |
1373 xmlnode xmldata) | 1373 xmlnode xmldata) |
1374 { | 1374 { |
1375 char *r; | 1375 char *r; |
1376 char *buf; | 1376 char *buf; |
1377 int newbuddy; | |
1377 | 1378 |
1378 r = jidtodisp(from); | 1379 r = jidtodisp(from); |
1380 | |
1381 newbuddy = !roster_find(r, jidsearch, 0); | |
1379 | 1382 |
1380 if (!strcmp(type, "subscribe")) { | 1383 if (!strcmp(type, "subscribe")) { |
1381 /* The sender wishes to subscribe to our presence */ | 1384 /* The sender wishes to subscribe to our presence */ |
1382 char *msg; | 1385 char *msg; |
1383 int isagent; | 1386 int isagent; |
1439 scr_LogPrint(LPRINT_LOGNORM, "%s", buf); | 1442 scr_LogPrint(LPRINT_LOGNORM, "%s", buf); |
1440 g_free(buf); | 1443 g_free(buf); |
1441 } else { | 1444 } else { |
1442 scr_LogPrint(LPRINT_LOGNORM, "Received unrecognized packet from <%s>, " | 1445 scr_LogPrint(LPRINT_LOGNORM, "Received unrecognized packet from <%s>, " |
1443 "type=%s", from, (type ? type : "")); | 1446 "type=%s", from, (type ? type : "")); |
1447 newbuddy = FALSE; | |
1448 } | |
1449 | |
1450 if (newbuddy) { | |
1451 buddylist_build(); | |
1452 update_roster = TRUE; | |
1444 } | 1453 } |
1445 g_free(r); | 1454 g_free(r); |
1446 } | 1455 } |
1447 | 1456 |
1448 static void packethandler(jconn conn, jpacket packet) | 1457 static void packethandler(jconn conn, jpacket packet) |