1998-09-30 08:20:57 -04:00
|
|
|
--- sh.func.c.orig Sat Sep 19 01:09:11 1998
|
|
|
|
+++ sh.func.c Sat Sep 26 19:23:40 1998
|
1998-08-30 17:14:47 -04:00
|
|
|
@@ -1286,6 +1286,9 @@
|
1997-12-27 14:04:12 -05:00
|
|
|
struct command *c;
|
|
|
|
{
|
|
|
|
Char *vp, *lp;
|
|
|
|
+#ifdef __FreeBSD__
|
|
|
|
+ static int catclosed = 0;
|
|
|
|
+#endif
|
|
|
|
|
|
|
|
USE(c);
|
|
|
|
if (*++v == 0) {
|
1998-09-30 08:20:57 -04:00
|
|
|
@@ -1337,7 +1340,15 @@
|
1998-07-03 23:20:40 -04:00
|
|
|
# ifdef LC_MESSAGES
|
1997-12-27 14:04:12 -05:00
|
|
|
(void) setlocale(LC_MESSAGES, "");
|
1998-07-03 23:20:40 -04:00
|
|
|
# endif /* LC_MESSAGES */
|
|
|
|
+# ifdef __FreeBSD__
|
1997-12-27 14:04:12 -05:00
|
|
|
+ /* This code is to avoid bug. */
|
|
|
|
+ if (catclosed)
|
1998-07-03 23:20:40 -04:00
|
|
|
+ (void) catclose(catd);
|
1997-12-27 14:04:12 -05:00
|
|
|
+ else
|
1998-07-03 23:20:40 -04:00
|
|
|
+ catclosed = 1;
|
|
|
|
+# else
|
|
|
|
(void) catclose(catd);
|
1997-12-27 14:04:12 -05:00
|
|
|
+# endif /* __FreeBSD__ */
|
|
|
|
nlsinit();
|
1998-07-03 23:20:40 -04:00
|
|
|
# endif /* NLS_CATALOGS */
|
1997-12-27 14:04:12 -05:00
|
|
|
# ifdef LC_CTYPE
|