groff-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[groff] 14/26: [mm]: Fix Savannah #24049.


From: G. Branden Robinson
Subject: [groff] 14/26: [mm]: Fix Savannah #24049.
Date: Sun, 18 Dec 2022 20:41:32 -0500 (EST)

gbranden pushed a commit to branch master
in repository groff.

commit b37c1e440ab839b62a04df57f9df65a654701ed3
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
AuthorDate: Sat Dec 17 14:58:44 2022 -0600

    [mm]: Fix Savannah #24049.
    
    * m.tmac (let*mt-sign): Check strings populated by optional arguments to
      `AU` macro for existence before interpolating them.
    
    Fixes <https://savannah.gnu.org/bugs/?24049>.  Thanks to Werner Lemberg
    for the report.
---
 contrib/mm/ChangeLog |  8 ++++++++
 contrib/mm/m.tmac    | 11 ++++++++---
 2 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/contrib/mm/ChangeLog b/contrib/mm/ChangeLog
index cfa68df42..17f5ac8a5 100644
--- a/contrib/mm/ChangeLog
+++ b/contrib/mm/ChangeLog
@@ -1,3 +1,11 @@
+2022-12-17  G. Branden Robinson <g.branden.robinson@gmail.com>
+
+       * m.tmac (let*mt-sign): Check strings populated by optional
+       arguments to `AU` macro for existence before interpolating them.
+
+       Fixes <https://savannah.gnu.org/bugs/?24049>.  Thanks to Werner
+       Lemberg for the report.
+
 2022-11-22  G. Branden Robinson <g.branden.robinson@gmail.com>
 
        * mse.tmac: Set `pg*footer-size` to four vees, not four basic
diff --git a/contrib/mm/m.tmac b/contrib/mm/m.tmac
index e31a8acb7..cf9d9da53 100644
--- a/contrib/mm/m.tmac
+++ b/contrib/mm/m.tmac
@@ -3333,11 +3333,16 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
 .ne \\n[cov*au]u*4v
 .ie \\n[.$]>1 .nr let*k 1
 .el .nr let*k \\n[cov*au]
-.ds let*tmp \\*[cov*au!\\n[let*k]!3]-\\*[cov*au!\\n[let*k]!4]-
+.ds let*tmp \" empty
+.if d cov*au!\\n[let*k]!3 \{\
+.      as let*tmp \\*[cov*au!\\n[let*k]!3]\"
+.      if d cov*au!\\n[let*k]!4 \
+.              as let*tmp -\\*[cov*au!\\n[let*k]!4]-\"
+.\}
 .nr let*i 0 1
 .while \\n+[let*i]<=\\n[cov*au] \{\
-.      if \\n[let*i]>1 .as let*tmp /
-.      as let*tmp \\*[cov*au!\\n[let*i]!2]
+.      if \\n[let*i]>1 .as let*tmp /\"
+.      if d cov*au!\\n[let*i]!2 .as let*tmp \\*[cov*au!\\n[let*i]!2]\"
 .\}
 .if !''\\$1' .as let*tmp -\\$1
 .in (u;\\n[.l]/2)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]