# HG changeset patch # User Evan Schoenberg # Date 1212061328 0 # Node ID 6c22faa7f9193a56ed24209a4c813421eaa656ba # Parent 56b39f1a15bf095f17d828e72f1a97a7771e272d# Parent eab5bbc5031c7f49304c5f0a4f52a682b2a96e09 merge of 'cc409aa9063c22b3cf65c9e2a3399a121c6b50a5' and 'dde47619c5574f42aca27bf71d79520541c713a0' diff -r 56b39f1a15bf -r 6c22faa7f919 libpurple/protocols/oscar/oscar.c --- a/libpurple/protocols/oscar/oscar.c Thu May 29 11:39:42 2008 +0000 +++ b/libpurple/protocols/oscar/oscar.c Thu May 29 11:42:08 2008 +0000 @@ -1067,8 +1067,8 @@ if (source < 0) { - purple_debug_error("oscar", "unable to connect FLAP server " - "of type 0x%04hx\n", conn->type); + purple_debug_error("oscar", "unable to connect to FLAP " + "server of type 0x%04hx\n", conn->type); if (conn->type == SNAC_FAMILY_AUTH) { gchar *msg; diff -r 56b39f1a15bf -r 6c22faa7f919 pidgin/gtkaccount.c --- a/pidgin/gtkaccount.c Thu May 29 11:39:42 2008 +0000 +++ b/pidgin/gtkaccount.c Thu May 29 11:42:08 2008 +0000 @@ -2191,8 +2191,7 @@ G_TYPE_STRING, /* COLUMN_SCREENNAME */ G_TYPE_BOOLEAN, /* COLUMN_ENABLED */ G_TYPE_STRING, /* COLUMN_PROTOCOL */ - G_TYPE_POINTER, /* COLUMN_DATA */ - G_TYPE_POINTER /* COLUMN_PULSE_DATA */ + G_TYPE_POINTER /* COLUMN_DATA */ ); /* And now the actual treeview */ diff -r 56b39f1a15bf -r 6c22faa7f919 pidgin/gtkimhtml.c --- a/pidgin/gtkimhtml.c Thu May 29 11:39:42 2008 +0000 +++ b/pidgin/gtkimhtml.c Thu May 29 11:42:08 2008 +0000 @@ -514,6 +514,7 @@ tmp); g_free(tmp); + g_object_unref(layout); return FALSE; } @@ -551,6 +552,7 @@ gtk_widget_show (imhtml->tip_window); pango_font_metrics_unref(font_metrics); + g_object_unref(font); g_object_unref(layout); return FALSE; diff -r 56b39f1a15bf -r 6c22faa7f919 pidgin/gtksmiley.c --- a/pidgin/gtksmiley.c Thu May 29 11:39:42 2008 +0000 +++ b/pidgin/gtksmiley.c Thu May 29 11:42:08 2008 +0000 @@ -96,6 +96,18 @@ gtksmiley->smile = g_strdup(purple_smiley_get_shortcut(smiley)); } +static void +image_changed_cb(PurpleSmiley *smiley, gpointer dontcare, GtkIMHtmlSmiley *gtksmiley) +{ + const char *file; + + g_free(gtksmiley->file); + + file = purple_imgstore_get_filename(purple_smiley_get_stored_image(smiley)); + gtksmiley->file = g_build_filename(purple_smileys_get_storing_dir(), file, NULL); + gtk_imhtml_smiley_reload(gtksmiley); +} + static GtkIMHtmlSmiley *smiley_purple_to_gtkimhtml(PurpleSmiley *smiley) { GtkIMHtmlSmiley *gtksmiley; @@ -114,6 +126,10 @@ g_signal_connect(G_OBJECT(smiley), "notify::shortcut", G_CALLBACK(shortcut_changed_cb), gtksmiley); + /* And update the pixbuf too when the image is changed */ + g_signal_connect(G_OBJECT(smiley), "notify::image", + G_CALLBACK(image_changed_cb), gtksmiley); + return gtksmiley; }