Update of bug #64597 (project groff):

                  Status:                    None => Fixed                  
             Open/Closed:                    Open => Closed                 
         Planned Release:                    None => 1.24.0                 

    _______________________________________________________

Follow-up Comment #5:

[comment #4 comment #4:]
> >> I just took a look at the PDF_IMAGE source code in mom, but I
> >> think it would take me a week of intense meditation to make heads
> >> and tails of it. :) 
> > 
> > I haven't even dared to try.  :D
> 
> Can't say I blame you.  The bug was introduced in 2.5, when shaded
backgrounds and frames were added.  I used '.if \n[pdfbx-running]' to test for
the presence of a shaded background/frame in PDF_IMAGE, which initialized the
register so that later, when
> '.if r pdfbx-running' was called, it returned true even though the nominal
value was zero. 
> 
> I've pushed the fix and updated the tarball on the mom website.

Cool.  Thanks!  Closing ticket as fixed.

> This isn't the first time I've been bitten by the slight difference between
'.if \n[foo]' and '.if r foo' when 'foo' does not exist.  Both return 'false'
but the first initializes the register where the second does not.  I looked in
the info docs for mention of this but can't find it.

The difference is that the escape sequences \n and \* _interpolate_ registers
and strings, respectively.  GNU _troff_'s 'r' and 'd' conditional operators
don't interpolate anything (nor do AT&T _troff_'s).

I'll see if I can find a good spot (or two) to emphasize this distinction.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?64597>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/


Reply via email to