summaryrefslogtreecommitdiff
blob: 3214faa7bba9f3784e050fefea761ed18e9cb648 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Index: src/vcalendar.c
===================================================================
RCS file: /cvsroot/sylpheed-claws/plugins/vcalendar/src/vcalendar.c,v
retrieving revision 1.2.2.31
diff -u -u -r1.2.2.31 vcalendar.c
--- src/vcalendar.c	16 Mar 2006 18:25:15 -0000	1.2.2.31
+++ src/vcalendar.c	20 Apr 2006 06:32:40 -0000
@@ -523,7 +523,8 @@
 	}
 	g_free(label);
 
-	if (event->orgname && strlen(event->orgname)) {
+	if (event->orgname && strlen(event->orgname)
+	&&  event->organizer && strlen(event->organizer)) {
 		gchar *addr = g_strconcat(event->orgname, " <", event->organizer, ">", NULL);
 		GTK_LABEL_SET_TEXT_TRIMMED(GTK_LABEL(vcalviewer->who), addr);
 		g_free(addr);
@@ -822,10 +823,12 @@
 	if (iprop) {
 		gchar *org, *orgname;
 		tmp = get_email_from_organizer_property(iprop);
-		if (!g_utf8_validate(tmp, -1, NULL))
+		if (tmp && !g_utf8_validate(tmp, -1, NULL))
 			org = conv_codeset_strdup(tmp, charset, CS_UTF_8);
-		else 
+		else if (tmp)
 			org = g_strdup(tmp);
+		else
+			org = NULL;
 		g_free(tmp);
 		tmp = get_name_from_organizer_property(iprop);
 		printf(" %s !\n", tmp);
@@ -833,13 +836,17 @@
 			orgname = conv_codeset_strdup(tmp, charset, CS_UTF_8);
 		else if (tmp)
 			orgname = g_strdup(tmp);
+		else
+			orgname = NULL;
 		g_free(tmp);
-		if (orgname) {
+		if (orgname && org) {
 			gchar *addr = g_strconcat(orgname, " <", org, ">", NULL);
 			GTK_LABEL_SET_TEXT_TRIMMED(GTK_LABEL(vcalviewer->who), addr);
 			g_free(addr);
-		} else {
+		} else if (org) {
 			GTK_LABEL_SET_TEXT_TRIMMED(GTK_LABEL(vcalviewer->who), org);
+		} else {
+			GTK_LABEL_SET_TEXT_TRIMMED(GTK_LABEL(vcalviewer->who), "-");
 		}
 		icalproperty_free(iprop);
 		g_free(org);