evolution-data-server/evolution-data-server-1.9.2-fix-name-selector-dialog.patch

46 lines
1.6 KiB
Diff
Raw Normal View History

--- evolution-data-server-1.9.2/libedataserverui/e-name-selector-dialog.c.fix-name-selector-dialog 2006-11-08 11:23:52.000000000 -0500
+++ evolution-data-server-1.9.2/libedataserverui/e-name-selector-dialog.c 2006-11-08 11:45:54.000000000 -0500
@@ -1189,30 +1189,24 @@
{
EDestinationStore *destination_store = E_DESTINATION_STORE (model);
EDestination *destination;
- gchar *string;
+ GString *buffer;
destination = e_destination_store_get_destination (destination_store, iter);
g_assert (destination);
- if (e_destination_is_evolution_list (destination)) {
- if (e_destination_list_show_addresses (destination)) {
- const gchar *name;
- const gchar *addresses;
-
- name = e_destination_get_name (destination);
- addresses = e_destination_get_address (destination);
-
- string = g_strdup_printf ("%s%s(%s)", name ? name : "",
- name ? " " : "", addresses ? addresses : "?");
- } else {
- string = g_strdup (e_destination_get_name (destination));
- }
- } else {
- string = g_strdup (e_destination_get_address (destination));
+ buffer = g_string_new (e_destination_get_name (destination));
+
+ if (!e_destination_is_evolution_list (destination)) {
+ const gchar *email;
+
+ email = e_destination_get_email (destination);
+ if (email == NULL || *email == '\0')
+ email = "?";
+ g_string_append_printf (buffer, " <%s>", email);
}
- g_object_set (cell, "text", string, NULL);
- g_free (string);
+ g_object_set (cell, "text", buffer->str, NULL);
+ g_string_free (buffer, TRUE);
}
/* ----------------------- *