# HG changeset patch # User Eric Warmenhoven # Date 963197594 0 # Node ID 64afc8f41bcb2fd4407695d00c3563921589c0aa # Parent 320c2f9c031535a70e464d64b39e0d923047e102 [gaim-migrate @ 491] smileys don't cause dropping of font attributes. gtkhtml handles multiple text much better. committer: Tailor Script diff -r 320c2f9c0315 -r 64afc8f41bcb src/gtkhtml.c --- a/src/gtkhtml.c Mon Jul 10 01:22:57 2000 +0000 +++ b/src/gtkhtml.c Mon Jul 10 02:53:14 2000 +0000 @@ -3098,20 +3098,34 @@ *url = NULL; gint intag = 0, wpos = 0, - tpos = 0, - colorv, + tpos = 0; + static gint colorv, bold = 0, italic = 0, fixed = 0, uline = 0, strike = 0, - title = 0; - gint height; - struct font_state *current, + title = 0, + height; + static struct font_state *current = NULL, *tmp; - struct font_state def_state = { 3, 0, 0, "", NULL, NULL, NULL }; - - current = &def_state; + static struct font_state def_state = { 3, 0, 0, "", NULL, NULL, NULL }; + + if (text == NULL) { + while (current->next) + { + if (current->ownbg) + g_free(current->bgcol); + if (current->owncolor) + g_free(current->color); + tmp = current; + current = current->next; + g_free(tmp); + } + return; + } + + if (!current) current = &def_state; map = gdk_window_get_colormap(html->html_area); cfont = getfont(current->font, bold, italic, fixed, current->size); c = text; @@ -3477,16 +3491,6 @@ } c++; } - while (current->next) - { - if (current->ownbg) - g_free(current->bgcol); - if (current->owncolor) - g_free(current->color); - tmp = current; - current = current->next; - g_free(tmp); - } ws[wpos] = 0; tag[tpos] = 0; if (wpos) @@ -4188,6 +4192,8 @@ g_return_if_fail(html != NULL); g_return_if_fail(GTK_IS_HTML(html)); + gtk_html_append_text(html, NULL, 0); + html->frozen--; if (html->frozen < 0) diff -r 320c2f9c0315 -r 64afc8f41bcb src/oscar.c --- a/src/oscar.c Mon Jul 10 01:22:57 2000 +0000 +++ b/src/oscar.c Mon Jul 10 02:53:14 2000 +0000 @@ -114,7 +114,7 @@ int oscar_login(char *username, char *password) { struct aim_session_t *sess; struct aim_conn_t *conn; - struct client_info_s info = {"AOL Instant Messenger (TM), version 2.1.1187/WIN32", 4, 31, 3141, "us", "en", 0x0004, 0x0001, 0x055}; + struct client_info_s info = {"AOL Instant Messenger (TM), version 2.1.1187/WIN32", 4, 30, 3141, "us", "en", 0x0004, 0x0001, 0x055}; struct aim_user *u; char buf[256];