$NetBSD: patch-ak,v 1.1 2006/07/19 19:34:37 adrianp Exp $ --- misc.c.orig 1991-07-16 16:52:54.000000000 +0100 +++ misc.c @@ -135,11 +135,17 @@ if available, else the short filename is char *fullpath (direntry) struct direntry *direntry; { - static char result[PATHSIZE]; + static char result[PATHSIZE+LFNAMESIZE+12]; /* Room for enough space.*/ combine (result, direntry->dirlen != 0 ? direntry->dirname : "", (direntry->namlen != 0) ? direntry->lfname : direntry->fname ); + + if (strlen (result) >= PATHSIZE) { + prterror ('f', "Combined dirname and filename too long!\n"); + *result = '\0'; + } + return (result); }