aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/tbl/tg.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/tbl/tg.c')
-rw-r--r--src/cmd/tbl/tg.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/cmd/tbl/tg.c b/src/cmd/tbl/tg.c
index 6abb1490..3afc88c6 100644
--- a/src/cmd/tbl/tg.c
+++ b/src/cmd/tbl/tg.c
@@ -6,9 +6,10 @@ gettext(char *sp, int ilin, int icol, char *fn, char *sz)
{
/* get a section of text */
char line[4096];
- int oname;
+ int oname, startline;
char *vs;
+ startline = iline;
if (texname == 0)
error("Too many text block diversions");
if (textflg == 0) {
@@ -42,7 +43,11 @@ gettext(char *sp, int ilin, int icol, char *fn, char *sz)
if (ctype(ilin, icol) == 'a')
Bprint(&tabout, ".ll -2n\n");
Bprint(&tabout, ".in 0\n");
- while (gets1(line, sizeof(line))) {
+ for (;;) {
+ if (gets1(line, sizeof(line)) == nil) {
+ iline = startline;
+ error("missing closing T}");
+ }
if (line[0] == 'T' && line[1] == '}' && line[2] == tab)
break;
if (match("T}", line))