summaryrefslogtreecommitdiff
blob: 4e0783dc021415e9ae57c1b317373ab992aed093 (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
54
55
Index: libsylph/procmime.c
===================================================================
--- libsylph/procmime.c	(revision 2195)
+++ libsylph/procmime.c	(working copy)
@@ -1483,6 +1483,9 @@
 		g_free(dir);
 		mime_type_list = g_list_concat(mime_type_list, list);
 
+		list = procmime_get_mime_type_list(DATADIR "/mime/globs");
+		mime_type_list = g_list_concat(mime_type_list, list);
+
 		if (!mime_type_list) {
 			debug_print("mime.types not found\n");
 			return NULL;
@@ -1535,7 +1538,7 @@
 		g_strstrip(buf);
 
 		p = buf;
-		while (*p && !g_ascii_isspace(*p)) p++;
+		while (*p && !g_ascii_isspace(*p) && *p != ':') p++;
 		if (*p) {
 			*p = '\0';
 			p++;
@@ -1548,7 +1551,7 @@
 		mime_type->type = g_strdup(buf);
 		mime_type->sub_type = g_strdup(delim + 1);
 
-		while (*p && g_ascii_isspace(*p)) p++;
+		while (*p && (g_ascii_isspace(*p) || *p == '*' || *p == '.')) p++;
 		if (*p)
 			mime_type->extension = g_strdup(p);
 		else
@@ -1560,7 +1563,7 @@
 	fclose(fp);
 
 	if (!list)
-		g_warning("Can't read mime.types\n");
+		g_warning("Can't read %s\n", file);
 
 	return list;
 }
Index: libsylph/Makefile.am
===================================================================
--- libsylph/Makefile.am	(revision 2195)
+++ libsylph/Makefile.am	(working copy)
@@ -2,7 +2,8 @@
 AM_CPPFLAGS = \
 	-DG_LOG_DOMAIN=\"LibSylph\" \
 	-DSYSCONFDIR=\""$(sysconfdir)"\" \
-	-DLOCALEDIR=\""$(localedir)"\"
+	-DLOCALEDIR=\""$(localedir)"\" \
+	-DDATADIR=\""$(datadir)"\"
 
 INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir) -I$(includedir)