$NetBSD: patch-bf,v 1.1 2000/01/18 01:09:25 christos Exp $ --- etc/papd/printcap.c.orig Sat Aug 16 19:20:28 1997 +++ etc/papd/printcap.c Mon Jan 17 19:40:24 2000 @@ -159,6 +159,7 @@ char ibuf[BUFSIZ]; char *cp2; int tf; + int skip; hopcount = 0; tbuf = bp; @@ -177,7 +178,7 @@ cp2 = getenv("TERM"); if (cp2==(char *) 0 || strcmp(name,cp2)==0) { strcpy(bp,cp); - return(tnchktc()); + return(tnchktc(cap)); } else { tf = open(cap, 0); } @@ -191,6 +192,7 @@ #endif if (tf < 0) return (-1); + skip = 0; for (;;) { cp = bp; for (;;) { @@ -204,12 +206,20 @@ } c = ibuf[i++]; if (c == '\n') { - if (cp > bp && cp[-1] == '\\'){ + if (!skip && cp > bp && cp[-1] == '\\'){ cp--; continue; } - break; + skip = 0; + if (cp == bp) + continue; + else + break; } + if (c == '#' && cp == bp) + skip++; + if (skip) + continue; if (cp >= bp+BUFSIZ) { write(2,"Termcap entry too long\n", 23); break; @@ -223,7 +233,7 @@ */ if (tnamatch(name)) { close(tf); - return(tnchktc()); + return(tnchktc(cap)); } } }