+ /* If LANG was specified, but not LANGUAGE, check if we should
+ * set it based on the language fallback table. */
+ if (have[LOCALE_LANG] && !have[LOCALE_LANGUAGE]) {
+ _cleanup_free_ char *language = NULL;
+
+ assert(lang);
+
+ (void) find_language_fallback(lang, &language);
+ if (language) {
+ log_debug("Converted LANG=%s to LANGUAGE=%s", lang, language);
+ if (!streq_ptr(language, c->locale[LOCALE_LANGUAGE])) {
+ r = strv_extendf(&l, "LANGUAGE=%s", language);
+ if (r < 0)
+ return r;
+
+ have[LOCALE_LANGUAGE] = true;
+ modified = true;
+ }
+ }
+ }
+