From 0affed79d2e30013f07cb94e6f07e3fcb81c02fa Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 10 Apr 2013 23:21:53 +0200 Subject: [PATCH] localctl: skip locale entries with non-UTF8 names glibc should place these in the locale archive. For now, let's just skip them from our output, since they are aliases anyway. https://bugs.freedesktop.org/show_bug.cgi?id=63389 --- src/locale/localectl.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/locale/localectl.c b/src/locale/localectl.c index 5328ac41a..095d7f7d3 100644 --- a/src/locale/localectl.c +++ b/src/locale/localectl.c @@ -37,6 +37,7 @@ #include "pager.h" #include "set.h" #include "path-util.h" +#include "utf8.h" static bool arg_no_pager = false; static enum transport { @@ -359,6 +360,9 @@ static int add_locales_from_archive(Set *locales) { if (e[i].locrec_offset == 0) continue; + if (!utf8_is_valid((char*) p + e[i].name_offset)) + continue; + z = strdup((char*) p + e[i].name_offset); if (!z) { r = log_oom(); -- 2.30.2