Package: glibc / 2.31-9

locale/locale-print-LANGUAGE.diff Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Comments tell that LANG has to be the first value, and LC_ALL the last
one.  Thus LANGUAGE is printed between them.

# DP: Dpatch author: Denis Barbier
# DP: Patch author: Denis Barbier
# DP: Upstream status: not submitted
# DP: Date: 2006-01-08

---
 locale/programs/locale.c |    4 ++++
 1 file changed, 4 insertions(+)

--- a/locale/programs/locale.c
+++ b/locale/programs/locale.c
@@ -793,11 +793,15 @@
 show_locale_vars (void)
 {
   const char *lcall = getenv ("LC_ALL") ?: "";
+  const char *language = getenv ("LANGUAGE") ?: "";
   const char *lang = getenv ("LANG") ?: "";
 
   /* LANG has to be the first value.  */
   print_assignment ("LANG", lang, false);
 
+  if (getenv ("POSIXLY_CORRECT") == NULL)
+    printf ("LANGUAGE=%s\n", language);
+
   /* Now all categories in an unspecified order.  */
   for (size_t cat_no = 0; cat_no < NCATEGORIES; ++cat_no)
     if (cat_no != LC_ALL)
--- a/locale/tst-locale-locpath.sh
+++ b/locale/tst-locale-locpath.sh
@@ -56,6 +56,7 @@ EOF
 
 cat > "$testroot/stdout-expected" <<EOF
 LANG=
+LANGUAGE=
 LC_CTYPE="invalid-locale"
 LC_NUMERIC="invalid-locale"
 LC_TIME="invalid-locale"