From: Mark D. <the...@us...> - 2003-10-15 02:51:18
|
Update of /cvsroot/gaim/gaim/src/protocols/oscar In directory sc8-pr-cvs1:/tmp/cvs-serv23288/src/protocols/oscar Modified Files: locate.c Log Message: This should fix any spurious "user info for whomever not available" messages. I actually coded this little logic hole in on purpose so that I could fix it and use the work "spurious." Also, SimGuy get's to wear the tester-of-the-week crown. Index: locate.c =================================================================== RCS file: /cvsroot/gaim/gaim/src/protocols/oscar/locate.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -p -r1.11 -r1.12 --- locate.c 14 Oct 2003 04:35:46 -0000 1.11 +++ locate.c 15 Oct 2003 02:51:14 -0000 1.12 @@ -293,11 +293,21 @@ static int aim_locate_gotuserinfo(aim_se faim_internal void aim_locate_requestuserinfo(aim_session_t *sess, const char *sn) { struct userinfo_node *cur; + /* Make sure we aren't already requesting info for this buddy */ + cur = sess->locate.request_queue; + while (cur != NULL) { + if (aim_sncmp(sn, cur->sn) == 0) + return; + cur = cur->next; + } + + /* Add a new node to our request queue */ cur = (struct userinfo_node *)malloc(sizeof(struct userinfo_node)); cur->sn = strdup(sn); cur->next = sess->locate.request_queue; sess->locate.request_queue = cur; + /* Actually request some info up in this piece */ aim_locate_dorequest(sess); } |