add patches from upstream repo;

- fix segfault when $message_cachedir is set and opening a POP3 mailbox.
- RFC2047 encode/decode the group name in an address list.
This commit is contained in:
sthen 2010-10-02 01:22:12 +00:00
parent 116a56ec32
commit 30de05b08a
3 changed files with 43 additions and 2 deletions

View File

@ -1,8 +1,9 @@
# $OpenBSD: Makefile,v 1.61 2010/09/15 18:42:38 sthen Exp $
# $OpenBSD: Makefile,v 1.62 2010/10/02 01:22:12 sthen Exp $
COMMENT= tty-based e-mail client, development version
DISTNAME= mutt-1.5.21
REVISION= 0
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mutt/}
WANTLIB= qdbm.>=14 z
@ -38,7 +39,6 @@ PATCH_DIST_STRIP= -p1
SUPDISTFILES+= ${DIST_SIDEBAR}
.endif
## following needed for hg snapshots
AUTOMAKE_VERSION= 1.9
CONFIGURE_STYLE= gnu
BUILD_DEPENDS+= ${MODGNU_AUTOCONF_DEPENDS} \

View File

@ -0,0 +1,16 @@
$OpenBSD: patch-muttlib_c,v 1.3 2010/10/02 01:22:12 sthen Exp $
fix segfault when $message_cachedir is set and opening a POP3 mailbox.
upstream 1a4c43138685, fixes bug#3457
--- muttlib.c.orig Sat Oct 2 01:51:47 2010
+++ muttlib.c Sat Oct 2 01:52:34 2010
@@ -1960,6 +1960,7 @@ void mutt_encode_path (char *dest, size_t dlen, const
{
char *p = safe_strdup (src);
int rc = mutt_convert_string (&p, Charset, "utf-8", 0);
- strfcpy (dest, rc == 0 ? p : src, dlen);
+ /* `src' may be NULL, such as when called from the pop3 driver. */
+ strfcpy (dest, (rc == 0) ? NONULL(p) : NONULL(src), dlen);
FREE (&p);
}

View File

@ -0,0 +1,25 @@
$OpenBSD: patch-rfc2047_c,v 1.1 2010/10/02 01:22:12 sthen Exp $
RFC2047 encode/decode the group name in an address list.
upstream f2452f1f1fef, fixes bug#3317
--- rfc2047.c.orig Sat Oct 2 01:57:10 2010
+++ rfc2047.c Sat Oct 2 01:58:41 2010
@@ -614,6 +614,8 @@ void rfc2047_encode_adrlist (ADDRESS *addr, const char
{
if (ptr->personal)
_rfc2047_encode_string (&ptr->personal, 1, col);
+ else if (ptr->group && ptr->mailbox)
+ _rfc2047_encode_string (&ptr->mailbox, 1, col);
#ifdef EXACT_ADDRESS
if (ptr->val)
_rfc2047_encode_string (&ptr->val, 1, col);
@@ -910,6 +912,8 @@ void rfc2047_decode_adrlist (ADDRESS *a)
if (a->personal && ((strstr (a->personal, "=?") != NULL) ||
(AssumedCharset && *AssumedCharset)))
rfc2047_decode (&a->personal);
+ else if (a->group && a->mailbox && (strstr (a->mailbox, "=?") != NULL))
+ rfc2047_decode (&a->mailbox);
#ifdef EXACT_ADDRESS
if (a->val && strstr (a->val, "=?") != NULL)
rfc2047_decode (&a->val);