99eaf946d6
OBS-URL: https://build.opensuse.org/package/show/Base:System/bash?expand=0&rev=0e684b6d69ca471a3edec76de2eeecc1
30 lines
780 B
Diff
30 lines
780 B
Diff
--- locale.c
|
|
+++ locale.c 2004-09-03 10:56:10.000000000 +0000
|
|
@@ -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 <errno.h>
|
|
|
|
@@ -68,6 +72,15 @@ void
|
|
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);
|