From: ceriel Date: Tue, 30 Aug 1988 11:37:32 +0000 (+0000) Subject: better checks for recursion in tc= X-Git-Tag: release-5-5~2884 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=e102a3f5cb96bfc2b5368c9587fc94ed96a4f491;p=ack.git better checks for recursion in tc= --- diff --git a/lang/cem/libcc/stdio/termcap.c b/lang/cem/libcc/stdio/termcap.c index 835e50be8..2ce923715 100644 --- a/lang/cem/libcc/stdio/termcap.c +++ b/lang/cem/libcc/stdio/termcap.c @@ -112,12 +112,17 @@ check_for_tc() return(0); /* no : in termcap entry */ if (p[1] != 't' || p[2] != 'c') return(1); - if (++count > 16) return(0); /* recursion in tc= definitions */ + if (count > 16) return(0); /* recursion in tc= definitions */ + count++; strcpy(terminalname, &p[4]); q = terminalname; while (*q && *q != ':') q++; *q = 0; - if (tgetent(buf, terminalname) != 1) return(0); + if (tgetent(buf, terminalname) != 1) { + ---count; + return(0); + } + --count; for (q = buf; *q && *q != ':'; q++) { } strcpy(p, q); capab = savcapab;