]> git.ipfire.org Git - thirdparty/dbus.git/commitdiff
is_valid_section_name: Fix logical expression
authorDavid King <dking@redhat.com>
Fri, 12 Oct 2018 12:58:43 +0000 (13:58 +0100)
committerSimon McVittie <smcv@collabora.com>
Fri, 19 Oct 2018 11:11:55 +0000 (11:11 +0000)
Group names in desktop files may contain all ASCII characters, except
control characters and '[' and ']'. Rather than accepting all values,
thanks to a logical operator confusion found by GCC warning
-Wlogical-op, instead explicitly reject the invalid values.

Signed-off-by: David King <dking@redhat.com>
Fixes: https://gitlab.freedesktop.org/dbus/dbus/issues/208
bus/desktop-file.c

index c824d56649e3b7e3f7f613bf7f89ba0a72f9d129..0b9c57cc87078f79be461cc70cd8de9d7dbc1f94 100644 (file)
@@ -382,8 +382,7 @@ is_valid_section_name (const char *name)
 
   while (*name)
     {
-      if (!((*name >= 'A' && *name <= 'Z') || (*name >= 'a' || *name <= 'z') ||
-           *name == '\n' || *name == '\t'))
+      if (*name <= 0x1f || *name >= 0x7f || *name  == '[' || *name == ']')
        return FALSE;
       
       name++;