On 2015/09/12 10:00, Daniel Jakots wrote:
> A few days after this email, I made a new claws-mail package on my
> laptop without the patches that were containing the link of the bug id
> 2640 or 2642 (hard way ...). I don't really understand what the patches
> should do but I haven't encountered any problem.
So how about this with those extra patches (i.e. the ones that upstream
rejected) removed?
I'm updating packages so I can test it now.
Index: Makefile
===================================================================
RCS file: /cvs/ports/mail/claws-mail/Makefile,v
retrieving revision 1.80
diff -u -p -r1.80 Makefile
--- Makefile 19 Jul 2015 02:14:57 -0000 1.80
+++ Makefile 12 Sep 2015 12:32:47 -0000
@@ -10,7 +10,7 @@ COMMENT-htmlviewer= fancy htmlviewer plu
COMMENT-pdfviewer= pdfviewer plugin
COMMENT-gdata= gdata plugin
-V= 3.11.1
+V= 3.12.0
DISTNAME= claws-mail-${V}
PKGNAME-main= ${DISTNAME}
PKGNAME-bogofilter= claws-mail-bogofilter-${V}
@@ -18,22 +18,16 @@ PKGNAME-spamassassin= claws-mail-spamass
PKGNAME-htmlviewer= claws-mail-htmlviewer-${V}
PKGNAME-pdfviewer= claws-mail-pdfviewer-${V}
PKGNAME-gdata= claws-mail-gdata-${V}
-REVISION-main= 2
-REVISION-bogofilter= 2
-REVISION-spamassassin= 2
-REVISION-htmlviewer= 2
-REVISION-pdfviewer= 2
-REVISION-gdata= 2
CATEGORIES= mail news
HOMEPAGE= http://www.claws-mail.org/
+MAINTAINER= Daniel Jakots <[email protected]>
# GPLv3+
PERMIT_PACKAGE_CDROM= Yes
-MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=claws-mail/}
-EXTRACT_SUFX= .tar.bz2
+MASTER_SITES= http://www.claws-mail.org/releases/
DIST_SUBDIR= claws
Index: distinfo
===================================================================
RCS file: /cvs/ports/mail/claws-mail/distinfo,v
retrieving revision 1.26
diff -u -p -r1.26 distinfo
--- distinfo 14 Jan 2015 12:18:42 -0000 1.26
+++ distinfo 12 Sep 2015 12:32:47 -0000
@@ -1,2 +1,2 @@
-SHA256 (claws/claws-mail-3.11.1.tar.bz2) =
PL8P2vf3k/huYk57SlYctj/gwostuK5xMWG0FPPvI3A=
-SIZE (claws/claws-mail-3.11.1.tar.bz2) = 10292022
+SHA256 (claws/claws-mail-3.12.0.tar.gz) =
/cgTUqMLT4LlDG3Qv1zLKOonEzk05txvGo00wnAQO4E=
+SIZE (claws/claws-mail-3.12.0.tar.gz) = 12071748
Index: patches/patch-src_common_defs_h
===================================================================
RCS file: patches/patch-src_common_defs_h
diff -N patches/patch-src_common_defs_h
--- patches/patch-src_common_defs_h 21 Apr 2014 17:40:19 -0000 1.3
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-src_common_defs_h,v 1.3 2014/04/21 17:40:19 sthen Exp $
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2642
---- src/common/defs.h.orig Sat Dec 14 10:15:06 2013
-+++ src/common/defs.h Mon Apr 21 18:40:02 2014
-@@ -133,6 +133,9 @@
-
- #define BUFFSIZE 8192
-
-+/* according to RFC 821 1000 characters including CRLF */
-+#define MAXSMTPTEXTLEN 1000
-+
- #ifndef MAXPATHLEN
- # define MAXPATHLEN 4095
- #endif
Index: patches/patch-src_common_quoted-printable_c
===================================================================
RCS file: patches/patch-src_common_quoted-printable_c
diff -N patches/patch-src_common_quoted-printable_c
--- patches/patch-src_common_quoted-printable_c 25 Sep 2013 08:03:14 -0000
1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,135 +0,0 @@
-$OpenBSD: patch-src_common_quoted-printable_c,v 1.2 2013/09/25 08:03:14 landry
Exp $
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
---- src/common/quoted-printable.c.orig Tue Mar 19 02:31:04 2013
-+++ src/common/quoted-printable.c Sun Sep 22 23:00:10 2013
-@@ -22,66 +22,79 @@
-
- #include "utils.h"
-
-+
- #define MAX_LINELEN 76
-
- #define IS_LBREAK(p) \
-- (*(p) == '\0' || *(p) == '\n' || (*(p) == '\r' && *((p) + 1) == '\n'))
-+ ((p)[0] == '\n' ? 1 : ((p)[0] == '\r' && (p)[1] == '\n') ? 2 : 0)
-
--#define SOFT_LBREAK_IF_REQUIRED(n) \
-- if (len + (n) > MAX_LINELEN || \
-- (len + (n) == MAX_LINELEN && (!IS_LBREAK(inp + 1)))) { \
-- *outp++ = '='; \
-- *outp++ = '\n'; \
-- len = 0; \
-- }
--
--void qp_encode_line(gchar *out, const guchar *in)
-+gint qp_encode(gboolean text, gchar *out, const guchar *in, gint len)
- {
-- const guchar *inp = in;
-- gchar *outp = out;
-- guchar ch;
-- gint len = 0;
--
-- while (*inp != '\0') {
-- ch = *inp;
--
-- if (IS_LBREAK(inp)) {
-- *outp++ = '\n';
-- len = 0;
-- if (*inp == '\r')
-- inp++;
-- inp++;
-- } else if (ch == '\t' || ch == ' ') {
-- if (IS_LBREAK(inp + 1)) {
-- SOFT_LBREAK_IF_REQUIRED(3);
-- *outp++ = '=';
-- get_hex_str(outp, ch);
-- outp += 2;
-- len += 3;
-- inp++;
-- } else {
-- SOFT_LBREAK_IF_REQUIRED(1);
-- *outp++ = *inp++;
-- len++;
-+ /* counters of input/output characters */
-+ gint inc = 0;
-+ gint outc = 1; /* one character reserved for '=' soft line break */
-+ while(inc < len) {
-+ /* allow literal linebreaks in text */
-+ if(text) {
-+ if(IS_LBREAK(in)) {
-+ /* inserting linebreaks is the job of our
caller */
-+ g_assert(outc <= MAX_LINELEN);
-+ *out = '\0';
-+ return inc + IS_LBREAK(in);
- }
-- } else if ((ch >= 33 && ch <= 60) || (ch >= 62 && ch <= 126)) {
-- SOFT_LBREAK_IF_REQUIRED(1);
-- *outp++ = *inp++;
-- len++;
-- } else {
-- SOFT_LBREAK_IF_REQUIRED(3);
-- *outp++ = '=';
-- get_hex_str(outp, ch);
-- outp += 2;
-- len += 3;
-- inp++;
-+ if(IS_LBREAK(in+1)) {
-+ /* free the reserved character since no
softbreak
-+ * will be needed after the current character */
-+ outc--;
-+ /* guard against whitespace before a literal
linebreak */
-+ if(*in == ' ' || *in == '\t') {
-+ goto escape;
-+ }
-+ }
- }
-+ if(*in == '=') {
-+ goto escape;
-+ }
-+ /* Cave: Whitespace is unconditionally output literally,
-+ * but according to the RFC it must not be output before a
-+ * linebreak.
-+ * This requirement is obeyed by quoting all linebreaks
-+ * and therefore ending all lines with '='. */
-+ else if((*in >= ' ' && *in <= '~') || *in == '\t') {
-+ if(outc + 1 <= MAX_LINELEN) {
-+ *out++ = *in++;
-+ outc++;
-+ inc++;
-+ }
-+ else break;
-+ }
-+ else {
-+escape:
-+ if(outc + 3 <= MAX_LINELEN) {
-+ *out++ = '=';
-+ outc++;
-+ get_hex_str(out, *in);
-+ out += 2;
-+ outc += 2;
-+ in++;
-+ inc++;
-+ }
-+ else break;
-+ }
- }
-+ g_assert(outc <= MAX_LINELEN);
-+ *out++ = '=';
-+ *out = '\0';
-+ return inc;
-+}
-
-- if (len > 0)
-- *outp++ = '\n';
--
-- *outp = '\0';
-+void qp_encode_line(gchar *out, const guchar *in) {
-+ while (*in != '\0') {
-+ in += qp_encode(TRUE, out, in, strlen(in));
-+ while(*out != '\0') out++;
-+ *out++ = '\n';
-+ *out++ = '\0';
-+ }
- }
-
- gint qp_decode_line(gchar *str)
Index: patches/patch-src_common_quoted-printable_h
===================================================================
RCS file: patches/patch-src_common_quoted-printable_h
diff -N patches/patch-src_common_quoted-printable_h
--- patches/patch-src_common_quoted-printable_h 25 Sep 2013 08:03:14 -0000
1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,23 +0,0 @@
-$OpenBSD: patch-src_common_quoted-printable_h,v 1.2 2013/09/25 08:03:14 landry
Exp $
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
---- src/common/quoted-printable.h.orig Tue Mar 19 02:31:04 2013
-+++ src/common/quoted-printable.h Sun Sep 22 23:00:10 2013
-@@ -22,6 +22,18 @@
-
- #include <glib.h>
-
-+/* Processes at most 78 characters from in buffer,
-+ * and stores one NULL-terminated line of at most 76 characters (excl. \0) of
-+ * quoted-printable output without terminating newline characters in out
buffer.
-+ * Except when encoding text, every output line ends in a soft line break.
-+ * Therefore the caller can chain multiple lines of encoded data resulting
from
-+ * sequential runs by glueing them together with line breaks.
-+ * The number of processed input characters is returned. */
-+gint qp_encode (gboolean text,
-+ gchar *out,
-+ const guchar *in,
-+ gint len);
-+/* Deprecated */
- void qp_encode_line (gchar *out,
- const guchar *in);
- gint qp_decode_line (gchar *str);
Index: patches/patch-src_messageview_c
===================================================================
RCS file: patches/patch-src_messageview_c
diff -N patches/patch-src_messageview_c
--- patches/patch-src_messageview_c 14 Jan 2015 12:18:43 -0000 1.4
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,16 +0,0 @@
-$OpenBSD: patch-src_messageview_c,v 1.4 2015/01/14 12:18:43 landry Exp $
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
---- src/messageview.c.orig Mon Oct 27 19:58:12 2014
-+++ src/messageview.c Mon Jan 12 23:00:15 2015
-@@ -1005,8 +1005,9 @@ static gint disposition_notification_send(MsgInfo *msg
- extract_address(orig_to);
- }
- if (msginfo->subject && *(msginfo->subject)) {
-- enc_sub = g_malloc0(strlen(msginfo->subject)*8);
-- qp_encode_line(enc_sub, (const guchar *)msginfo->subject);
-+ gint len = strlen(msginfo->subject);
-+ enc_sub = g_malloc0(len*8);
-+ qp_encode(TRUE, enc_sub, (const guchar *)msginfo->subject, len);
- g_strstrip(enc_sub);
- }
- ok = fprintf(fp,"MIME-Version: 1.0\n"
Index: patches/patch-src_procmime_c
===================================================================
RCS file: patches/patch-src_procmime_c
diff -N patches/patch-src_procmime_c
--- patches/patch-src_procmime_c 14 Jan 2015 12:18:43 -0000 1.11
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,158 +0,0 @@
-$OpenBSD: patch-src_procmime_c,v 1.11 2015/01/14 12:18:43 landry Exp $
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2640
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2641
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2642
-http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2743
---- src/procmime.c.orig Mon Oct 27 19:58:13 2014
-+++ src/procmime.c Mon Jan 12 23:00:15 2015
-@@ -634,10 +634,22 @@ gboolean procmime_encode_content(MimeInfo *mimeinfo, E
- g_free(tmp_file);
- }
- } else if (encoding == ENC_QUOTED_PRINTABLE) {
-- gchar inbuf[BUFFSIZE], outbuf[BUFFSIZE * 4];
-+ gchar inbuf[79], outbuf[77];
-+ gint n, len = 0;
-+ gboolean firstrun = TRUE;
-
-- while (SC_FGETS(inbuf, sizeof(inbuf), infp) != NULL) {
-- qp_encode_line(outbuf, inbuf);
-+ while ((len += fread(inbuf + len, 1,
-+ sizeof(inbuf) - len - 1,
-+ infp)) > 0)
-+ {
-+ if (firstrun == FALSE)
-+ if (fputs("\r\n", outfp) == EOF)
-+ err = TRUE;
-+ inbuf[len] = '\0';
-+ n = qp_encode(mimeinfo->type == MIMETYPE_TEXT,
-+ outbuf, inbuf, len);
-+ len -= n;
-+ memmove(inbuf, inbuf + n, len);
-
- if (!strncmp("From ", outbuf, sizeof("From ")-1)) {
- gchar *tmpbuf = outbuf;
-@@ -652,14 +664,39 @@ gboolean procmime_encode_content(MimeInfo *mimeinfo, E
- if (SC_FPUTS(outbuf, outfp) == EOF)
- err = TRUE;
- }
-+ firstrun = FALSE;
- }
- } else {
-- gchar buf[BUFFSIZE];
-+ gchar buf[MAXSMTPTEXTLEN+1];
-+ gint leftover = 0;
-
-- while (SC_FGETS(buf, sizeof(buf), infp) != NULL) {
-- strcrchomp(buf);
-- if (SC_FPUTS(buf, outfp) == EOF)
-+ while (fgets(buf + leftover,
-+ sizeof(buf) - leftover,
-+ infp) != NULL)
-+ {
-+ gchar *l, *c = buf;
-+ leftover = 0;
-+
-+ while (*c != '\0') {
-+ if (
-+ *c == '\n'
-+ || (*c == '\r' && *(c+1) == '\n'))
-+ {
-+ *c = '\0';
-+ break;
-+ }
-+ c++;
-+ }
-+ while (c - buf > MAXSMTPTEXTLEN - 2) {
-+ *c = *(c-1);
-+ *--c = '\0';
-+ leftover++;
-+ }
-+ if (fputs(buf, outfp) == EOF || putc('\n', outfp) ==
EOF)
-+
- err = TRUE;
-+ for (l = buf; l-buf < leftover; l++)
-+ *l = *++c;
- }
- }
-
-@@ -1203,7 +1240,7 @@ GList *procmime_get_mime_type_list(void)
- #endif
- {
- fp_is_glob_file = FALSE;
-- if ((fp = procmime_fopen("/etc/mime.types", "rb")) == NULL) {
-+ if ((fp = procmime_fopen("/var/www/conf/mime.types", "rb")) ==
NULL) {
- if ((fp = procmime_fopen(SYSCONFDIR "/mime.types",
"rb"))
- == NULL) {
- FILE_OP_ERROR(SYSCONFDIR "/mime.types",
-@@ -1283,11 +1320,12 @@ EncodingType procmime_get_encoding_for_text_file(const
- {
- FILE *fp;
- guchar buf[BUFFSIZE];
-+ gboolean cr = FALSE;
- size_t len;
-+ gint linelen = 0, maxlinelen = 0;
- size_t octet_chars = 0;
- size_t total_len = 0;
- gfloat octet_percentage;
-- gboolean force_b64 = FALSE;
-
- if ((fp = procmime_fopen(file, "rb")) == NULL) {
- FILE_OP_ERROR(file, "fopen");
-@@ -1299,11 +1337,27 @@ EncodingType procmime_get_encoding_for_text_file(const
- gint i;
-
- for (p = buf, i = 0; i < len; ++p, ++i) {
-- if (*p & 0x80)
-- ++octet_chars;
-- if (*p == '\0') {
-- force_b64 = TRUE;
-- *has_binary = TRUE;
-+ switch (*p) {
-+ case '\n':
-+ if (cr) linelen--;
-+ maxlinelen = MAX(linelen, maxlinelen);
-+ linelen = 0;
-+ cr = FALSE;
-+ break;
-+ case '\r':
-+ cr = TRUE;
-+ linelen++;
-+ break;
-+ case '\0':
-+ *has_binary = TRUE;
-+ maxlinelen = G_MAXINT;
-+ cr = FALSE;
-+ break;
-+ default:
-+ if (*p & 0x80)
-+ octet_chars++;
-+ linelen++;
-+ cr = FALSE;
- }
- }
- total_len += len;
-@@ -1317,15 +1371,20 @@ EncodingType procmime_get_encoding_for_text_file(const
- octet_percentage = 0.0;
-
- debug_print("procmime_get_encoding_for_text_file(): "
-- "8bit chars: %zd / %zd (%f%%)\n", octet_chars, total_len,
-- 100.0 * octet_percentage);
-+ "8bit chars: %zd / %zd (%f%%). "
-+ "maximum line length: %d chars\n",
-+ octet_chars, total_len, 100.0 * octet_percentage,
-+ maxlinelen);
-
-- if (octet_percentage > 0.20 || force_b64) {
-+ if (octet_percentage > 0.20) {
- debug_print("using BASE64\n");
- return ENC_BASE64;
-- } else if (octet_chars > 0) {
-+ } else if (maxlinelen > MAXSMTPTEXTLEN-2) {
- debug_print("using quoted-printable\n");
- return ENC_QUOTED_PRINTABLE;
-+ } else if (octet_chars > 0) {
-+ debug_print("using 8bit\n");
-+ return ENC_8BIT;
- } else {
- debug_print("using 7bit\n");
- return ENC_7BIT;
Index: pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/mail/claws-mail/pkg/PLIST-main,v
retrieving revision 1.30
diff -u -p -r1.30 PLIST-main
--- pkg/PLIST-main 14 Jan 2015 12:18:43 -0000 1.30
+++ pkg/PLIST-main 12 Sep 2015 12:32:47 -0000
@@ -41,7 +41,6 @@ include/claws-mail/browseldap.h
include/claws-mail/claws-features.h
include/claws-mail/codeconv.h
include/claws-mail/common/
-include/claws-mail/common/base64.h
include/claws-mail/common/claws.h
include/claws-mail/common/defs.h
include/claws-mail/common/hooks.h
@@ -285,6 +284,8 @@ lib/claws-mail/plugins/libravatar.la
lib/claws-mail/plugins/libravatar.so
lib/claws-mail/plugins/mailmbox.la
lib/claws-mail/plugins/mailmbox.so
+lib/claws-mail/plugins/managesieve.la
+lib/claws-mail/plugins/managesieve.so
lib/claws-mail/plugins/newmail.la
lib/claws-mail/plugins/newmail.so
lib/claws-mail/plugins/notification.la
@@ -373,22 +374,13 @@ share/locale/hu/LC_MESSAGES/claws-mail.m
share/locale/id_ID/
share/locale/id_ID/LC_MESSAGES/
share/locale/id_ID/LC_MESSAGES/claws-mail.mo
-share/locale/it/LC_MESSAGES/claws-mail.mo
-share/locale/ja/LC_MESSAGES/claws-mail.mo
share/locale/lt/LC_MESSAGES/claws-mail.mo
share/locale/nb/LC_MESSAGES/claws-mail.mo
share/locale/nl/LC_MESSAGES/claws-mail.mo
share/locale/pl/LC_MESSAGES/claws-mail.mo
share/locale/pt_BR/LC_MESSAGES/claws-mail.mo
-share/locale/pt_PT/
-share/locale/pt_PT/LC_MESSAGES/
-share/locale/pt_PT/LC_MESSAGES/claws-mail.mo
-share/locale/ru/LC_MESSAGES/claws-mail.mo
share/locale/sk/LC_MESSAGES/claws-mail.mo
share/locale/sv/LC_MESSAGES/claws-mail.mo
-share/locale/uk/LC_MESSAGES/claws-mail.mo
-share/locale/zh_CN/LC_MESSAGES/claws-mail.mo
-share/locale/zh_TW/LC_MESSAGES/claws-mail.mo
@exec %D/bin/update-desktop-database
@unexec-delete %D/bin/update-desktop-database
@exec %D/bin/gtk-update-icon-cache -q -t %D/share/icons/hicolor