diff -r ced50832d0c7 -r 5014cd8d58e3 pidgin/plugins/disco/gtkdisco.c --- a/pidgin/plugins/disco/gtkdisco.c Tue May 08 19:00:23 2018 -0500 +++ b/pidgin/plugins/disco/gtkdisco.c Tue May 08 19:27:52 2018 -0500 @@ -114,10 +114,13 @@ { GdkPixbuf *pixbuf = NULL; char *filename = NULL; + gchar *tmp_size; g_return_val_if_fail(service != NULL, NULL); g_return_val_if_fail(size != NULL, NULL); + tmp_size = g_strdup_printf("%sx%s", size, size); + if (service->type == XMPP_DISCO_SERVICE_TYPE_GATEWAY && service->gateway_type) { char *tmp = g_strconcat(service->gateway_type, ".png", NULL); filename = g_build_filename(PURPLE_DATADIR, @@ -130,9 +133,12 @@ #endif } else if (service->type == XMPP_DISCO_SERVICE_TYPE_CHAT) { filename = g_build_filename(PURPLE_DATADIR, - "pixmaps", "pidgin", "status", size, "chat.png", NULL); + "pidgin", "icons", "hicolor", tmp_size, "status", + "chat.png", NULL); } + g_free(tmp_size); + if (filename) { pixbuf = gdk_pixbuf_new_from_file(filename, NULL); g_free(filename);