# HG changeset patch # User Ethan Blanton # Date 1180049854 0 # Node ID 1c62deca5958a59ffe3c99389fe33233b2200a1d # Parent baaf2cf9339c1b300090eff7411a75a75026dc9e# Parent 77b15be2179f269eb2526b4fce6351fc02bf217b merge of 'a4ba04d007c334f8f7304c5d953d6ac8084e970e' and 'ce83ae29d2e56110fafafb1186ee792b98ba9499' diff -r baaf2cf9339c -r 1c62deca5958 libpurple/debug.c --- a/libpurple/debug.c Thu May 24 23:37:05 2007 +0000 +++ b/libpurple/debug.c Thu May 24 23:37:34 2007 +0000 @@ -183,4 +183,12 @@ void purple_debug_init(void) { + purple_prefs_add_none("/purple/debug"); + + /* + * This pref is obsolete and no longer referenced anywhere. It only + * survives here because it would be an API break if we removed it. + * Remove this when we get to 3.0.0 :) + */ + purple_prefs_add_bool("/purple/debug/timestamps", TRUE); } diff -r baaf2cf9339c -r 1c62deca5958 libpurple/protocols/jabber/google.c --- a/libpurple/protocols/jabber/google.c Thu May 24 23:37:05 2007 +0000 +++ b/libpurple/protocols/jabber/google.c Thu May 24 23:37:34 2007 +0000 @@ -219,7 +219,7 @@ const char *grt = xmlnode_get_attrib_with_namespace(item, "t", "google:roster"); const char *subscription = xmlnode_get_attrib(item, "subscription"); - if (!strcmp(subscription, "none")) { + if (!subscription || !strcmp(subscription, "none")) { /* The Google Talk servers will automatically add people from your Gmail address book * with subscription=none. If we see someone with subscription=none, ignore them. */ diff -r baaf2cf9339c -r 1c62deca5958 libpurple/protocols/jabber/message.c --- a/libpurple/protocols/jabber/message.c Thu May 24 23:37:05 2007 +0000 +++ b/libpurple/protocols/jabber/message.c Thu May 24 23:37:34 2007 +0000 @@ -324,8 +324,17 @@ g_free(msg); } } else if(!strcmp(child->name, "html")) { - if(!jm->xhtml && xmlnode_get_child(child, "body")) + if(!jm->xhtml && xmlnode_get_child(child, "body")) { + char *c; jm->xhtml = xmlnode_to_str(child, NULL); + /* Convert all newlines to whitespace. Technically, even regular, non-XML HTML is supposed to ignore newlines, but Pidgin has, as convention + * treated \n as a newline for compatibility with other protocols + */ + for (c = jm->xhtml; *c != '\0'; c++) { + if (*c == '\n') + *c = ' '; + } + } } else if(!strcmp(child->name, "active")) { jm->chat_state = JM_STATE_ACTIVE; jm->typing_style |= JM_TS_JEP_0085; @@ -535,6 +544,7 @@ char *buf; char *xhtml; char *resource; + char *c; if(!who || !msg) return 0; @@ -569,7 +579,7 @@ } buf = g_strdup_printf("%s", msg); - + purple_markup_html_to_xhtml(buf, &xhtml, &jm->body); g_free(buf); diff -r baaf2cf9339c -r 1c62deca5958 libpurple/protocols/msn/notification.c --- a/libpurple/protocols/msn/notification.c Thu May 24 23:37:05 2007 +0000 +++ b/libpurple/protocols/msn/notification.c Thu May 24 23:37:34 2007 +0000 @@ -999,8 +999,10 @@ } else { - fputs("\n" - "\n" +#ifdef _WIN32 + fputs("\n", fd); +#endif + fputs("\n" "\n" "