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/