summaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorG. Branden Robinson <g.branden.robinson@gmail.com>2020-10-21 00:29:24 +1100
committerG. Branden Robinson <g.branden.robinson@gmail.com>2020-10-21 00:43:31 +1100
commitbcdf2f4c7c28328c711c6a7ac2ea17f2ecd5cdd4 (patch)
tree477382c6a16a8ec21603ba25fbf9c5703b33140b /ChangeLog
parent7964eb52debd3f09ce9125ca063c742448854fa8 (diff)
downloadgroff-git-bcdf2f4c7c28328c711c6a7ac2ea17f2ecd5cdd4.tar.gz
src/roff/troff/env.cpp: Avoid infinite loop.
* src/roff/troff/env.cpp (environment::possibly_break_line): Emit break warning and return if the output width is not positive. The code assumes that it will be and loops infinitely if it isn't. I _think_ this is because we're not able to get width data for (some?) CJK glyphs. Based on a patch by Osamu Sayama. Fixes <https://savannah.gnu.org/bugs/index.php?44018>.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog15
1 files changed, 15 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index ce0b7ea83..d9ccebcbc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,20 @@
2020-10-20 G. Branden Robinson <g.branden.robinson@gmail.com>
+ * src/roff/troff/env.cpp (environment::possibly_break_line):
+ Emit break warning and return if the output width is not
+ positive. The code assumes that it will be and loops infinitely
+ if it isn't. I _think_ this is because we're not able to get
+ width data for (some?) CJK glyphs. Based on a patch by Osamu
+ Sayama.
+
+ * src/roff/groff/tests/\
+ do_not_loop_infinitely_when_breaking_cjk.sh: Test it.
+ * src/roff/groff/groff.am: Run test.
+
+ Fixes <https://savannah.gnu.org/bugs/index.php?44018>.
+
+2020-10-20 G. Branden Robinson <g.branden.robinson@gmail.com>
+
* src/preproc/tbl/table.cpp (table::init_output): Save the value
of \n[.tabs] when starting a table. In the reset macro, restore
the saved value.