From 1d230090c3545cfbc40f2377a22c11c383d56d45 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Thu, 4 Mar 2021 10:50:32 +0100 Subject: [PATCH] shared/kbd-util: return error on resource errors I guess we should still not fail on failure to access a directory and such. --- src/shared/kbd-util.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/shared/kbd-util.c b/src/shared/kbd-util.c index fb98dd262e8..f5669f7c03d 100644 --- a/src/shared/kbd-util.c +++ b/src/shared/kbd-util.c @@ -2,6 +2,7 @@ #include +#include "errno-util.h" #include "kbd-util.h" #include "log.h" #include "nulstr-util.h" @@ -62,8 +63,13 @@ int get_keymaps(char ***ret) { const char *dir; NULSTR_FOREACH(dir, KBD_KEYMAP_DIRS) if (nftw(dir, nftw_cb, 20, FTW_PHYS) < 0) { - if (errno != ENOENT) - log_debug_errno(errno, "Failed to read keymap list from %s, ignoring: %m", dir); + if (errno == ENOENT) + continue; + if (ERRNO_IS_RESOURCE(errno)) { + keymaps = set_free_free(keymaps); + return log_warning_errno(errno, "Failed to read keymap list from %s: %m", dir); + } + log_debug_errno(errno, "Failed to read keymap list from %s, ignoring: %m", dir); } _cleanup_strv_free_ char **l = set_get_strv(keymaps); -- 2.47.3