| 343 case 192: /* Pictures, aka Buddy Icons, checksum */ |
343 case 192: /* Pictures, aka Buddy Icons, checksum */ |
| 344 { |
344 { |
| 345 /* FIXME: Please, if you know this protocol, |
345 /* FIXME: Please, if you know this protocol, |
| 346 * FIXME: fix up the strtol() stuff if possible. */ |
346 * FIXME: fix up the strtol() stuff if possible. */ |
| 347 int cksum = strtol(pair->value, NULL, 10); |
347 int cksum = strtol(pair->value, NULL, 10); |
| |
348 const char *locksum = NULL; |
| 348 PurpleBuddy *b; |
349 PurpleBuddy *b; |
| 349 |
350 |
| 350 if (!name) |
351 if (!name) |
| 351 break; |
352 break; |
| 352 |
353 |
| 361 |
362 |
| 362 if (!f) |
363 if (!f) |
| 363 break; |
364 break; |
| 364 |
365 |
| 365 yahoo_friend_set_buddy_icon_need_request(f, FALSE); |
366 yahoo_friend_set_buddy_icon_need_request(f, FALSE); |
| 366 if (b && cksum != strtol(purple_buddy_icons_get_checksum_for_user(b), NULL, 10)) |
367 if (b && (locksum = purple_buddy_icons_get_checksum_for_user(b)) != NULL && |
| |
368 cksum != strtol(locksum, NULL, 10)) |
| 367 yahoo_send_picture_request(gc, name); |
369 yahoo_send_picture_request(gc, name); |
| 368 |
370 |
| 369 break; |
371 break; |
| 370 } |
372 } |
| 371 case 16: /* Custom error message */ |
373 case 16: /* Custom error message */ |