From c10efc8164dcdf8596315ce98f60405f8c2e17c0 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Tue, 14 Jun 2022 09:05:00 +0900 Subject: [PATCH] locale-util: check if enumerated locales are valid (cherry picked from commit a2f7937747f12634d93049f645cdae88f89ff233) Related: #2087652 --- src/basic/locale-util.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/basic/locale-util.c b/src/basic/locale-util.c index abbebc7666..bd36cdd1cd 100644 --- a/src/basic/locale-util.c +++ b/src/basic/locale-util.c @@ -199,6 +199,15 @@ int get_locales(char ***ret) { if (r < 0) return r; + char *locale; + SET_FOREACH(locale, locales) { + r = locale_is_installed(locale); + if (r < 0) + return r; + if (r == 0) + free(set_remove(locales, locale)); + } + l = set_get_strv(locales); if (!l) return -ENOMEM;