diff options
author | wl <wl> | 2008-10-10 17:03:27 +0000 |
---|---|---|
committer | wl <wl> | 2008-10-10 17:03:27 +0000 |
commit | dbcbcd884a6456023cfcb3ef388058de5941683a (patch) | |
tree | 90711d35f88d7f6e13aae2bceccf240dae5d301c /src/preproc | |
parent | a76cd01e84e7f8a3f75a72bab5650545f67e5992 (diff) | |
download | groff-dbcbcd884a6456023cfcb3ef388058de5941683a.tar.gz |
* man/roff.man, doc/groff.texinfo: Improve the history part. This
is based on input from Tom Van Vleck <thvv@multicians.org>.
* src/preproc/eqn/sqrt.cpp (sqrt_box::compute_metrics): Assure that
value of `rst' register is not zero, as can happen for the HTML
output device. Otherwise, there are too many loops, and we get a
stack overflow because of recursion.
Diffstat (limited to 'src/preproc')
-rw-r--r-- | src/preproc/eqn/sqrt.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/preproc/eqn/sqrt.cpp b/src/preproc/eqn/sqrt.cpp index b340bd4e..26e72eb9 100644 --- a/src/preproc/eqn/sqrt.cpp +++ b/src/preproc/eqn/sqrt.cpp @@ -1,5 +1,5 @@ // -*- C++ -*- -/* Copyright (C) 1989, 1990, 1991, 1992, 2002, 2003, 2007 +/* Copyright (C) 1989, 1990, 1991, 1992, 2002, 2003, 2007, 2008 Free Software Foundation, Inc. Written by James Clark (jjc@jclark.com) @@ -93,7 +93,8 @@ int sqrt_box::compute_metrics(int style) printf(".de " TEMP_MACRO "\n" ".nr " SQRT_WIDTH_FORMAT " 0\\w" DELIMITER_CHAR "\\*[" SQRT_STRING_FORMAT "]" DELIMITER_CHAR "\n" - ".if \\\\n[rst]-\\\\n[rsb]-%dM<\\n[" TEMP_REG "]" + ".if \\\\n[rst]" + "&(\\\\n[rst]-\\\\n[rsb]-%dM<\\n[" TEMP_REG "])" "&(\\\\n[.ps]<\\n[" MAX_SIZE_REG "]) \\{" ".ps +1\n" "." TEMP_MACRO "\n" |