$NetBSD: patch-ak,v 1.3 2000/08/15 14:48:23 abs Exp $

--- etc/papd/printcap.c.orig	Fri May 30 01:27:35 1997
+++ etc/papd/printcap.c
@@ -158,6 +158,7 @@
 	register int i = 0, cnt = 0;
 	char ibuf[BUFSIZ];
 	int tf;
+	int skip;
 
 	hopcount = 0;
 	tbuf = bp;
@@ -176,7 +177,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);
 			}
@@ -190,6 +191,7 @@
 #endif
 	if (tf < 0)
 		return (-1);
+	skip = 0;
 	for (;;) {
 		cp = bp;
 		for (;;) {
@@ -203,12 +205,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;
@@ -222,7 +232,7 @@
 		 */
 		if (tnamatch(name)) {
 			close(tf);
-			return(tnchktc());
+			return(tnchktc(cap));
 		}
 	}
 }