comparison src/protocols/oscar/oscar.c @ 5837:a48c338dff6c

[gaim-migrate @ 6268] Possibly fixed some misbehaving typing notification or buddy icon problems, but probably not the gaim-keeps-resending-icon-to-trillian thing (it's more of a trillian bug, really). Fixed a compile warning. Made the availablemsg not show up when people are no longer available. I got my excercise today by running from my computer to the mac downstairs and then back up here 20 times testing this. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Thu, 12 Jun 2003 04:20:08 +0000
parents 09f7f23dc83a
children dbed8c87f750
comparison
equal deleted inserted replaced
5836:09f7f23dc83a 5837:a48c338dff6c
1811 bi->signon = info->onlinesince ? info->onlinesince : (info->sessionlen + time(NULL)); 1811 bi->signon = info->onlinesince ? info->onlinesince : (info->sessionlen + time(NULL));
1812 if (caps) 1812 if (caps)
1813 bi->caps = caps; 1813 bi->caps = caps;
1814 bi->typingnot = FALSE; 1814 bi->typingnot = FALSE;
1815 bi->ico_informed = FALSE; 1815 bi->ico_informed = FALSE;
1816 if (info->availablemsg) { 1816 free(bi->availablemsg);
1817 free(bi->availablemsg); 1817 if (info->availablemsg)
1818 bi->availablemsg = g_strdup(info->availablemsg); 1818 bi->availablemsg = g_strdup(info->availablemsg);
1819 } 1819 else
1820 bi->availablemsg = NULL;
1820 1821
1821 /* Server stored icon stuff */ 1822 /* Server stored icon stuff */
1822 if (info->iconcsumlen) { 1823 if (info->iconcsumlen) {
1823 char *b16, *saved_b16; 1824 char *b16, *saved_b16;
1824 struct buddy *b; 1825 struct buddy *b;
1850 return 1; 1851 return 1;
1851 } 1852 }
1852 1853
1853 static int gaim_parse_offgoing(aim_session_t *sess, aim_frame_t *fr, ...) { 1854 static int gaim_parse_offgoing(aim_session_t *sess, aim_frame_t *fr, ...) {
1854 GaimConnection *gc = sess->aux_data; 1855 GaimConnection *gc = sess->aux_data;
1856 struct oscar_data *od = gc->proto_data;
1855 va_list ap; 1857 va_list ap;
1856 aim_userinfo_t *info; 1858 aim_userinfo_t *info;
1857 1859
1858 va_start(ap, fr); 1860 va_start(ap, fr);
1859 info = va_arg(ap, aim_userinfo_t *); 1861 info = va_arg(ap, aim_userinfo_t *);
1860 va_end(ap); 1862 va_end(ap);
1861 1863
1862 serv_got_update(gc, info->sn, 0, 0, 0, 0, 0); 1864 serv_got_update(gc, info->sn, 0, 0, 0, 0, 0);
1865
1866 g_hash_table_remove(od->buddyinfo, normalize(info->sn));
1863 1867
1864 return 1; 1868 return 1;
1865 } 1869 }
1866 1870
1867 static void cancel_direct_im(struct ask_direct *d) { 1871 static void cancel_direct_im(struct ask_direct *d) {