--- ../../tcsh-6.07.09/sh.func.c Wed Jul 22 01:03:33 1998 +++ sh.func.c Wed Jul 22 01:04:47 1998 @@ -1286,6 +1286,9 @@ struct command *c; { Char *vp, *lp; +#ifdef __FreeBSD__ + static int catclosed = 0; +#endif USE(c); if (*++v == 0) { @@ -1338,7 +1341,15 @@ # ifdef LC_MESSAGES (void) setlocale(LC_MESSAGES, ""); # endif /* LC_MESSAGES */ +# ifdef __FreeBSD__ + /* This code is to avoid bug. */ + if (catclosed) + (void) catclose(catd); + else + catclosed = 1; +# else (void) catclose(catd); +# endif /* __FreeBSD__ */ nlsinit(); # endif /* NLS_CATALOGS */ # ifdef LC_CTYPE