diff -r 7e7432c7b0aa -r 20d5c960d48f libpurple/protocols/oscar/odc.c --- a/libpurple/protocols/oscar/odc.c Mon Feb 18 18:59:08 2013 -0800 +++ b/libpurple/protocols/oscar/odc.c Mon Feb 18 20:44:20 2013 -0800 @@ -356,7 +356,13 @@ if ((embedded_data != NULL) && (embedded_data->size == size)) { - imgid = purple_imgstore_new_with_id(g_memdup(embedded_data->data, size), size, src); + char *basename; + char *escaped; + basename = g_path_get_basename(src); + escaped = g_strdup(purple_escape_filename(basename)); + g_free(basename); + imgid = purple_imgstore_new_with_id(g_memdup(embedded_data->data, size), size, escaped); + g_free(escaped); /* Record the image number */ images = g_slist_append(images, GINT_TO_POINTER(imgid));