pkgsrc/net/netatalk-umich/patches/patch-bf
2002-05-25 12:25:50 +00:00

61 lines
1.1 KiB
Text

$NetBSD: patch-bf,v 1.1.1.1 2002/05/25 12:25:52 markd 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));
}
}
}