chiark / gitweb /
bus: fix formatting of bus address
[elogind.git] / src / locale / localectl.c
index 5328ac41a5b704d289d40da338d5a81d35307602..095d7f7d3f7184dea82f48f32685a0628e06c48d 100644 (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();