diff options
Diffstat (limited to 'SOURCES/bash-3.0-warn-locale.patch')
-rw-r--r-- | SOURCES/bash-3.0-warn-locale.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/SOURCES/bash-3.0-warn-locale.patch b/SOURCES/bash-3.0-warn-locale.patch new file mode 100644 index 0000000..ed6215a --- /dev/null +++ b/SOURCES/bash-3.0-warn-locale.patch @@ -0,0 +1,29 @@ +--- locale.c ++++ locale.c 2004-09-03 12:56:10.000000000 +0200 +@@ -29,6 +29,10 @@ + #include "bashintl.h" + #include "bashansi.h" + #include <stdio.h> ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <unistd.h> ++#include <errno.h> + #include "chartypes.h" + + #include "shell.h" +@@ -63,6 +67,15 @@ + set_default_locale () + { + #if defined (HAVE_SETLOCALE) ++ struct stat st; ++ ++ if (stat("/usr/lib/locale/locale-archive", &st) == 0 && st.st_size == 0) { ++ errno = EINVAL; ++ sys_error("set_default_locale: broken locale"); ++ fprintf (stderr, "%s: Please remove /usr/lib/locale/locale-archive\n", ++ get_name_for_error()); ++ sleep(1); ++ } + default_locale = setlocale (LC_ALL, ""); + if (default_locale) + default_locale = savestring (default_locale); |