From d17915cb1b9b124a99982da64d67c36f4323a0d8 Mon Sep 17 00:00:00 2001 From: wiz Date: Wed, 22 Jul 2009 10:53:51 +0000 Subject: Fix a core dump when listing an mhbox thread. From Urs Janßen (upstream). Ride update. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- news/tin/distinfo | 3 ++- news/tin/patches/patch-ac | 51 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 news/tin/patches/patch-ac (limited to 'news/tin') diff --git a/news/tin/distinfo b/news/tin/distinfo index fc218edd1bb..8048f602eab 100644 --- a/news/tin/distinfo +++ b/news/tin/distinfo @@ -1,7 +1,8 @@ -$NetBSD: distinfo,v 1.15 2009/07/22 10:00:17 wiz Exp $ +$NetBSD: distinfo,v 1.16 2009/07/22 10:53:51 wiz Exp $ SHA1 (tin-1.9.4.tar.bz2) = e1f5ff2f04923137f43119b144f8a20e733eea23 RMD160 (tin-1.9.4.tar.bz2) = 6a85e47ea06f2e86f2b8f688df137432ecb7c4e9 Size (tin-1.9.4.tar.bz2) = 1526534 bytes SHA1 (patch-aa) = a3d40ff4e38230bcf8a3814c92ec2a75f85bf44e SHA1 (patch-ab) = 34794d259ae4fb81888184ded9876ab5874d8731 +SHA1 (patch-ac) = b5e72a659414833db5f18c2e8f3404dadd03f87f diff --git a/news/tin/patches/patch-ac b/news/tin/patches/patch-ac new file mode 100644 index 00000000000..1f1a715272d --- /dev/null +++ b/news/tin/patches/patch-ac @@ -0,0 +1,51 @@ +$NetBSD: patch-ac,v 1.4 2009/07/22 10:53:51 wiz Exp $ + +--- src/refs.c.orig 2008-12-30 20:26:24.000000000 +0100 ++++ src/refs.c 2009-07-22 12:51:11.000000000 +0200 +@@ -56,7 +56,7 @@ + static struct t_msgid *add_msgid(int key, const char *msgid, struct t_msgid *newparent); + static struct t_msgid *find_next(struct t_msgid *ptr); + static struct t_msgid *parse_references(char *r); +-static t_bool valid_msgid(const char *msgid); ++static t_bool valid_msgid(char *msgid); + static unsigned int hash_msgid(const char *key); + static void add_to_parent(struct t_msgid *ptr); + static void build_thread(struct t_msgid *ptr); +@@ -176,15 +176,16 @@ + * Checks if Message-ID has valid format + * Returns TRUE if it does, FALSE if it does not + * +- * TODO: combine with post.c:damaged_id()? ++ * TODO: combine with post.c:damaged_id() + */ + static t_bool + valid_msgid( +- const char *msgid) ++ char *msgid) + { + size_t mlen = 0; + t_bool at_present = 0; + ++ str_trim(msgid); + if (!msgid || *msgid != '<') + return FALSE; + +@@ -968,6 +969,7 @@ + for_each_art(i) { + art = &arts[i]; + ++ art->refptr = add_msgid(MSGID_REF, art->msgid, NULL); /* preset art->refptr */ + if (art->refs) { + strip_line(art->refs); + +@@ -999,9 +1001,7 @@ + art->refptr = add_msgid(MSGID_REF, art->msgid, add_msgid(REF_REF, art->refs, NULL)); + FreeAndNull(art->refs); + } +- } else +- if (valid_msgid(art->msgid)) +- art->refptr = add_msgid(MSGID_REF, art->msgid, NULL); ++ } + FreeAndNull(art->msgid); /* Now cached - discard this */ + } + -- cgit v1.2.3