From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from krisdoz.my.domain (joerg@localhost [127.0.0.1]) by krisdoz.my.domain (8.14.3/8.14.3) with ESMTP id pAIH46R8012517 for ; Fri, 18 Nov 2011 12:04:06 -0500 (EST) Received: (from joerg@localhost) by krisdoz.my.domain (8.14.3/8.14.3/Submit) id pAIH46us008066; Fri, 18 Nov 2011 12:04:06 -0500 (EST) Date: Fri, 18 Nov 2011 12:04:06 -0500 (EST) Message-Id: <201111181704.pAIH46us008066@krisdoz.my.domain> X-Mailinglist: mdocml-source Reply-To: source@mdocml.bsd.lv MIME-Version: 1.0 From: joerg@mdocml.bsd.lv To: source@mdocml.bsd.lv Subject: mdocml: Don't crash if the date can't be extracted. X-Mailer: activitymail 1.26, http://search.cpan.org/dist/activitymail/ Content-Type: text/plain; charset=utf-8 Log Message: ----------- Don't crash if the date can't be extracted. Don't depend on snprintf handling NULL strings. Modified Files: -------------- mdocml: man_term.c Revision Data ------------- Index: man_term.c =================================================================== RCS file: /home/joerg/cvsroot/mdocml/man_term.c,v retrieving revision 1.123 retrieving revision 1.124 diff -Lman_term.c -Lman_term.c -u -p -r1.123 -r1.124 --- man_term.c +++ man_term.c @@ -969,8 +969,9 @@ print_man_foot(struct termp *p, const vo term_vspace(p); term_vspace(p); term_vspace(p); - snprintf(title, BUFSIZ, "%s(%s)", meta->title, meta->msec); - datelen = term_strlen(p, meta->date); + snprintf(title, BUFSIZ, "%s(%s)", meta->title ? meta->title : "", + meta->msec ? meta->msec : ""); + datelen = term_strlen(p, meta->date ? meta->date : ""); p->flags |= TERMP_NOSPACE | TERMP_NOBREAK; p->offset = 0; @@ -986,7 +987,7 @@ print_man_foot(struct termp *p, const vo if (p->offset + datelen >= p->rmargin) p->rmargin = p->offset + datelen; - term_word(p, meta->date); + term_word(p, meta->date ? meta->date : ""); term_flushln(p); p->flags &= ~TERMP_NOBREAK; @@ -1023,7 +1024,8 @@ print_man_head(struct termp *p, const vo strlcpy(buf, m->vol, BUFSIZ); buflen = term_strlen(p, buf); - snprintf(title, BUFSIZ, "%s(%s)", m->title, m->msec); + snprintf(title, BUFSIZ, "%s(%s)", m->title ? m->title : "", + m->msec ? m->msec : ""); titlen = term_strlen(p, title); p->flags |= TERMP_NOBREAK | TERMP_NOSPACE; -- To unsubscribe send an email to source+unsubscribe@mdocml.bsd.lv