From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from www.sonnenberger.org (www.sonnenberger.org [92.79.50.50]) by krisdoz.my.domain (8.14.3/8.14.3) with ESMTP id o4N0GaE7032201 for ; Sat, 22 May 2010 18:16:37 -0600 (MDT) Received: from britannica.bec.de (www.sonnenberger.org [192.168.1.10]) by www.sonnenberger.org (Postfix) with ESMTP id 0A9C16674D for ; Sun, 23 May 2010 02:16:30 +0200 (CEST) Received: by britannica.bec.de (Postfix, from userid 1000) id 7E5F91508A; Sun, 23 May 2010 02:14:14 +0200 (CEST) Date: Sun, 23 May 2010 02:14:14 +0200 From: Joerg Sonnenberger To: "tech@mdocml.bsd.lv" Subject: Re: .Bl and .Pp Message-ID: <20100523001413.GA1698@britannica.bec.de> Mail-Followup-To: "tech@mdocml.bsd.lv" References: <20100517220042.GA21819@britannica.bec.de> <4BF2442F.5020704@bsd.lv> X-Mailinglist: mdocml-tech Reply-To: tech@mdocml.bsd.lv MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="VS++wcV0S1rZb1Fb" Content-Disposition: inline In-Reply-To: <4BF2442F.5020704@bsd.lv> User-Agent: Mutt/1.5.20 (2009-06-14) --VS++wcV0S1rZb1Fb Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Tue, May 18, 2010 at 09:39:27AM +0200, Kristaps Dzonsons wrote: > >The file also shows another issue. > > > >.Bl -tag -compact > >.Sm off > >.It ... > >.Sm on > >.El > > > >triggers the assertion in mdoc_action.c:618 (post_bl_tagwidth). > > > >I think we have to explicitly scan forward until we find an .It child, > >but what do you think? > > Will look into it... Patch attached. Skip over non-It macros for this purpose. Joerg --VS++wcV0S1rZb1Fb Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="mdoc_action.c.diff" Index: mdoc_action.c =================================================================== RCS file: /home/joerg/cvsroot/mdocml/mdoc_action.c,v retrieving revision 1.60 diff -u -p -r1.60 mdoc_action.c --- mdoc_action.c 17 May 2010 23:57:06 -0000 1.60 +++ mdoc_action.c 23 May 2010 00:07:11 -0000 @@ -637,11 +637,14 @@ post_bl_tagwidth(POST_ARGS) /* Defaults to ten ens. */ sz = 10; /* XXX: make this a macro value. */ - nn = n->body->child; + + for (nn = n->body->child; nn; nn = nn->next) { + if (MDOC_It == nn->tok) + break; + } if (nn) { assert(MDOC_BLOCK == nn->type); - assert(MDOC_It == nn->tok); nn = nn->head->child; if (MDOC_TEXT != nn->type) { sz = mdoc_macro2len(nn->tok); --VS++wcV0S1rZb1Fb-- -- To unsubscribe send an email to tech+unsubscribe@mdocml.bsd.lv