From 2ad8924413eeb8a2123eccccef4371342d19d6e4 Mon Sep 17 00:00:00 2001 From: Jeff Layton Date: Thu, 13 Jun 2019 10:55:35 -0400 Subject: getfattr: don't count terminating NULL in well_enough_printable If the value is a string with the terminating NUL included in the length, then don't count that terminating NUL when determining whether the string is printable. This is consistent with the fact that getfattr doesn't print the terminating NUL character in --encoding=text (commit 7fed4441e12d). Signed-off-by: Jeff Layton --- tools/getfattr.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/getfattr.c b/tools/getfattr.c index 72a8852..0ba5781 100644 --- a/tools/getfattr.c +++ b/tools/getfattr.c @@ -110,6 +110,10 @@ int well_enough_printable(const char *value, size_t size) { size_t n, nonpr = 0; + /* Don't count the NULL terminator if there is one */ + if (size && !value[size - 1]) + size--; + for (n=0; n < size; n++) if (!isprint(*value++)) nonpr++; -- cgit v1.2.1