diff -urN sylpheed-0.9.11.orig/src/procmime.c sylpheed-0.9.11/src/procmime.c --- sylpheed-0.9.11.orig/src/procmime.c 2004-01-28 15:31:02.000000000 +0900 +++ sylpheed-0.9.11/src/procmime.c 2004-05-30 13:47:15.822408644 +0900 @@ -946,6 +946,9 @@ g_free(dir); mime_type_list = g_list_concat(mime_type_list, list); + list = procmime_get_mime_type_list("/usr/share/mime/globs"); + mime_type_list = g_list_concat(mime_type_list, list); + if (!mime_type_list) { g_warning("mime.types not found\n"); return NULL; @@ -998,7 +1001,7 @@ g_strstrip(buf); p = buf; - while (*p && !isspace(*p)) p++; + while (*p && !isspace(*p) && (*p != ':')) p++; if (*p) { *p = '\0'; p++; @@ -1011,7 +1014,7 @@ mime_type->type = g_strdup(buf); mime_type->sub_type = g_strdup(delim + 1); - while (*p && isspace(*p)) p++; + while (*p && (isspace(*p) || (*p == '*') || (*p == '.'))) p++; if (*p) mime_type->extension = g_strdup(p); else @@ -1023,7 +1026,7 @@ fclose(fp); if (!list) - g_warning("Can't read mime.types\n"); + g_warning("Can't read %s\n", file); return list; }