[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[groff] 11/14: [mm]: Add input validation to `P` macro.
From: |
G. Branden Robinson |
Subject: |
[groff] 11/14: [mm]: Add input validation to `P` macro. |
Date: |
Fri, 6 Jan 2023 16:20:13 -0500 (EST) |
gbranden pushed a commit to branch master
in repository groff.
commit 3b1afbdb8ec8252cb1bb417ca1ca91ab6d2f5101
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
AuthorDate: Fri Jan 6 09:43:47 2023 -0600
[mm]: Add input validation to `P` macro.
* m.tmac (P): Warn if argument is non-numeric, and discard it. Also
warn if argument is out of range; people accustomed to setting the
`Pt` register to 2 might mistakenly believe it to be meaningful here.
---
contrib/mm/ChangeLog | 7 +++++++
contrib/mm/m.tmac | 8 ++++++++
2 files changed, 15 insertions(+)
diff --git a/contrib/mm/ChangeLog b/contrib/mm/ChangeLog
index 13f6bb451..faa3e036e 100644
--- a/contrib/mm/ChangeLog
+++ b/contrib/mm/ChangeLog
@@ -1,3 +1,10 @@
+2023-01-06 G. Branden Robinson <g.branden.robinson@gmail.com>
+
+ * m.tmac (P): Warn if argument is non-numeric, and discard it.
+ Also warn if argument is out of range; people accustomed to
+ setting the `Pt` register to 2 might mistakenly believe it to be
+ meaningful here.
+
2023-01-03 G. Branden Robinson <g.branden.robinson@gmail.com>
* mm/0.MT:
diff --git a/contrib/mm/m.tmac b/contrib/mm/m.tmac
index dca8ccc69..c38ba983b 100644
--- a/contrib/mm/m.tmac
+++ b/contrib/mm/m.tmac
@@ -437,6 +437,14 @@ in=\\n[.i] fi=\\n[.u] .d=\\n[.d] nl=\\n[nl] pg=\\n[%]
.\"------------
.\" paragraph
.de P
+.if \\n[.$] \{
+. ie !\B'\\$1' \{\
+. @warning \\$0: expected numeric argument, got '\\$1'
+. shift
+. \}
+. el .if (\\$1 > 1) \
+. @warning \\$0: ignoring unsupported paragraph type \\$1
+.\}
.\" skip P if previous heading
.if \\n[D]>2 \{\
. tm Paragraph nl=\\n[nl], last=\\n[hd*last-pos]
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [groff] 11/14: [mm]: Add input validation to `P` macro.,
G. Branden Robinson <=