From: Simon McVittie Date: Thu, 18 Oct 2018 14:34:09 +0000 (+0100) Subject: desktop-file: Justify implementation of is_valid_section_name() X-Git-Tag: dbus-1.12.14~5^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2e4a72ed51684225c8de7047e415744c2113ed6d;p=thirdparty%2Fdbus.git desktop-file: Justify implementation of is_valid_section_name() Signed-off-by: Simon McVittie (cherry picked from commit 99580298f305e1e2426f0c016d797a1ff9ea0b79) --- diff --git a/bus/desktop-file.c b/bus/desktop-file.c index d91439b3f..fd4f0d319 100644 --- a/bus/desktop-file.c +++ b/bus/desktop-file.c @@ -378,7 +378,12 @@ parse_comment_or_blank (BusDesktopFileParser *parser) static dbus_bool_t is_valid_section_name (const char *name) { - /* 5. Group names may contain all ASCII characters except for control characters and '[' and ']'. */ + /* 5. Group names may contain all ASCII characters except for control characters and '[' and ']'. + * + * We don't use isprint() here because it's locale-dependent. ASCII + * characters <= 0x1f and 0x7f are control characters, and bytes with + * values >= 0x80 aren't ASCII. 0x20 is a space, which we must allow, + * not least because DBUS_SERVICE_SECTION contains one. */ while (*name) {