# HG changeset patch # User Jeffrey Connelly # Date 1187848974 0 # Node ID 5461821ac122314a601d3b1e45723172f11a0048 # Parent 8839775bad3e23030f851ef84f6f1047244f1b6d g_memdup() the icon data before setting it as the buddy icon. Closes #2725. diff -r 8839775bad3e -r 5461821ac122 libpurple/protocols/myspace/myspace.c --- a/libpurple/protocols/myspace/myspace.c Thu Aug 23 04:43:04 2007 +0000 +++ b/libpurple/protocols/myspace/myspace.c Thu Aug 23 06:02:54 2007 +0000 @@ -1784,7 +1784,7 @@ return rc; } -/* Process an incoming media (buddy icon) message. */ +/* Process an incoming media (message background?) message. */ static gboolean msim_incoming_media(MsimSession *session, MsimMessage *msg) { @@ -2656,11 +2656,18 @@ purple_debug_info("msim_downloaded_buddy_icon", "Downloaded %d bytes\n", len); + if (!url_text) { + purple_debug_info("msim_downloaded_buddy_icon", + "failed to download icon for %s", + user->buddy->name); + return; + } + purple_buddy_icons_set_for_user(user->buddy->account, user->buddy->name, - (gchar *)url_text, len, - /* Use URL itself as buddy icon "checksum" */ - user->image_url); + g_memdup((gchar *)url_text, len), len, + /* Use URL itself as buddy icon "checksum" (TODO: ETag) */ + user->image_url); /* checksum */ } /** Store a field of information about a buddy. */