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
This commit is contained in:
Lennart Poettering
2013-04-10 23:21:53 +02:00
parent 1ef2af5ae0
commit 0affed79d2

View File

@@ -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();