[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[groff] 25/39: src/roff/troff/node.cpp: Improve diagnostic msg.
From: |
G. Branden Robinson |
Subject: |
[groff] 25/39: src/roff/troff/node.cpp: Improve diagnostic msg. |
Date: |
Tue, 31 May 2022 20:32:29 -0400 (EDT) |
gbranden pushed a commit to branch master
in repository groff.
commit 95bff60198eafc9f0ee326ad9f961b0528ec9610
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
AuthorDate: Mon May 30 20:25:48 2022 -0500
src/roff/troff/node.cpp: Improve diagnostic msg.
* src/roff/troff/node.cpp (font_position): If mounting a font fails and
a third argument was given (to the `fp` request), report its value in
the diagnostic message. This could reveal a prohibited attempt at
directory traversal. See commit a891161bc9, 7 November.
---
ChangeLog | 8 ++++++++
src/roff/troff/node.cpp | 12 +++++++++---
2 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index a6c5a2fd..27d28ebd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2022-05-30 G. Branden Robinson <g.branden.robinson@gmail.com>
+
+ * src/roff/troff/node.cpp (font_position): If mounting a font
+ fails and a third argument was given (to the `fp` request),
+ report its value in the diagnostic message. This could reveal a
+ prohibited attempt at directory traversal. See commit
+ a891161bc9, 7 November.
+
2022-05-30 G. Branden Robinson <g.branden.robinson@gmail.com>
* src/libs/libgroff/fontfile.cpp (font::open_file): Refactor.
diff --git a/src/roff/troff/node.cpp b/src/roff/troff/node.cpp
index 4e9fe343..a82e55cc 100644
--- a/src/roff/troff/node.cpp
+++ b/src/roff/troff/node.cpp
@@ -6049,9 +6049,15 @@ void font_position()
symbol internal_name = get_name(true /* required */);
if (!internal_name.is_null()) {
symbol external_name = get_long_name();
- if (!mount_font(n, internal_name, external_name))
- error("cannot load font '%1' for mounting",
- internal_name.contents());
+ if (!mount_font(n, internal_name, external_name)) {
+ string msg;
+ if (external_name != 0 /* nullptr */)
+ msg += string(" from file '") + external_name.contents()
+ + string("'");
+ msg += '\0';
+ error("cannot load font '%1'%2 for mounting",
+ internal_name.contents(), msg.contents());
+ }
}
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [groff] 25/39: src/roff/troff/node.cpp: Improve diagnostic msg.,
G. Branden Robinson <=