diff options
author | Joe Marcus Clarke <marcus@FreeBSD.org> | 2002-09-17 02:54:53 +0000 |
---|---|---|
committer | Joe Marcus Clarke <marcus@FreeBSD.org> | 2002-09-17 02:54:53 +0000 |
commit | 6420da7d1afb99cfd7af8c8c4bc7ebe5bd847d53 (patch) | |
tree | 311b9ace963ce6fb4453b42ad0aef06093a10da3 /news | |
parent | Upgrade to 1.0b6. (diff) |
Fix the charset tag for ISO locales. Thanks to
Matthias Andree <matthias.andree@web.de> for help with this patch and with
testing. Bump PORTREVISION.
PR: 42825
Diffstat (limited to 'news')
-rw-r--r-- | news/pan/Makefile | 1 | ||||
-rw-r--r-- | news/pan/files/patch-gmime_gmime-charset.c | 30 |
2 files changed, 31 insertions, 0 deletions
diff --git a/news/pan/Makefile b/news/pan/Makefile index 713490c0698b..1410f84fb48c 100644 --- a/news/pan/Makefile +++ b/news/pan/Makefile @@ -7,6 +7,7 @@ PORTNAME= pan PORTVERSION= 0.11.4 +PORTREVISION= 1 CATEGORIES= news gnome MASTER_SITES= http://pan.rebelbase.com/download/releases/${PORTVERSION}/SOURCE/ \ http://pan.rebelbase.com/download/obsolete/${PORTVERSION}/SOURCE/ \ diff --git a/news/pan/files/patch-gmime_gmime-charset.c b/news/pan/files/patch-gmime_gmime-charset.c new file mode 100644 index 000000000000..b5e338155795 --- /dev/null +++ b/news/pan/files/patch-gmime_gmime-charset.c @@ -0,0 +1,30 @@ +--- gmime/gmime-charset.c.orig Tue Dec 18 15:09:40 2001 ++++ gmime/gmime-charset.c Mon Sep 16 22:48:48 2002 +@@ -69,15 +69,23 @@ + * codeset is a character set or encoding identifier like + * ISO-8859-1 or UTF-8. + */ +- char *codeset, *p; ++ char *codeset, *tmp = NULL; + + codeset = strchr (locale, '.'); + if (codeset) { + codeset++; + +- /* ; is a hack for debian systems and / is a hack for Solaris systems */ +- for (p = codeset; *p && !strchr ("@;/", *p); p++); +- locale_charset = g_strndup (codeset, (unsigned) (p - codeset)); ++ if (strncasecmp(codeset, "iso", 3) == 0 && ++ strlen(codeset) > 3 && ++ strncasecmp(codeset, "iso-", 4) != 0) { ++ tmp = (char *)g_malloc(strlen(codeset) + 2); ++ strcpy(tmp, "iso"); ++ strcat(tmp, "-"); ++ strcat(tmp, (codeset + 3)); ++ codeset = tmp; ++ } ++ locale_charset = g_strndup (codeset, strcspn(codeset, "@;/")); ++ if (tmp != NULL) g_free(tmp); + g_strdown (locale_charset); + } else { + /* charset unknown */ |