comparison src/protocols/oscar/oscar.c @ 5542:d6c748a19ef8

[gaim-migrate @ 5942] I think this should reduce the number of "unable to add" errors when signing on with an oscar account. It only affects the ones that have (no name) or (no item) or whatever. I also changed some mail notification stuff so you won't get that little gdk assertion failed error or whatever it was. My bad. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Thu, 29 May 2003 00:16:36 +0000
parents cfa4159e5cde
children 8ab1875e6d09
comparison
equal deleted inserted replaced
5541:aee0ee458974 5542:d6c748a19ef8
3444 havenewmail = va_arg(ap, int); 3444 havenewmail = va_arg(ap, int);
3445 va_end(ap); 3445 va_end(ap);
3446 3446
3447 if (emailinfo) { 3447 if (emailinfo) {
3448 gchar *to = g_strdup_printf("%s@%s", gc->username, emailinfo->domain); 3448 gchar *to = g_strdup_printf("%s@%s", gc->username, emailinfo->domain);
3449 if (emailinfo->unread) { 3449 if (emailinfo->unread && havenewmail)
3450 if (havenewmail) 3450 gaim_notify_emails(gc, emailinfo->nummsgs, FALSE, NULL, NULL, (const char **)&to, (const char **)&emailinfo->url, NULL, NULL);
3451 gaim_notify_emails(gc, emailinfo->nummsgs, FALSE, NULL, NULL, (const char **)&to, (const char **)&emailinfo->url, NULL, NULL);
3452 } else
3453 gaim_notify_emails(gc, 0, FALSE, NULL, NULL, (const char **)&to, (const char **)&emailinfo->url, NULL, NULL);
3454 g_free(to); 3451 g_free(to);
3455 } 3452 }
3456 3453
3457 return 1; 3454 return 1;
3458 } 3455 }
4496 g_free(gc->away); 4493 g_free(gc->away);
4497 gc->away = NULL; 4494 gc->away = NULL;
4498 } 4495 }
4499 4496
4500 if (strcmp(state, _("Invisible"))) { 4497 if (strcmp(state, _("Invisible"))) {
4501 if (aim_ssi_getpermdeny(od->sess->ssi.local) != gc->account->permdeny) 4498 if ((od->sess->ssi.received_data) && (aim_ssi_getpermdeny(od->sess->ssi.local) != gc->account->permdeny))
4502 aim_ssi_setpermdeny(od->sess, gc->account->permdeny, 0xffffffff); 4499 aim_ssi_setpermdeny(od->sess, gc->account->permdeny, 0xffffffff);
4503 gc->account->permdeny = 4; 4500 gc->account->permdeny = 4;
4504 } else { 4501 } else {
4505 if (aim_ssi_getpermdeny(od->sess->ssi.local) != 0x03) 4502 if ((od->sess->ssi.received_data) && (aim_ssi_getpermdeny(od->sess->ssi.local) != 0x03))
4506 aim_ssi_setpermdeny(od->sess, 0x03, 0xffffffff); 4503 aim_ssi_setpermdeny(od->sess, 0x03, 0xffffffff);
4507 gc->account->permdeny = 3; 4504 gc->account->permdeny = 3;
4508 } 4505 }
4509 4506
4510 if (!strcmp(state, _("Online"))) 4507 if (!strcmp(state, _("Online")))