efreet: Accept both only_show_in and not_show_in

In one file it is allowed with both OnlyShowIn and NotShowIn, and it is
the user who has to ensure that these lists don' clash.

@fix
This commit is contained in:
Sebastian Dransfeld 2014-09-24 22:15:17 +02:00
parent 2efc718abf
commit c700192736
1 changed files with 8 additions and 9 deletions

View File

@ -823,7 +823,6 @@ static int
efreet_desktop_generic_fields_parse(Efreet_Desktop *desktop, Efreet_Ini *ini)
{
const char *val;
const char *not_show_in = NULL, *only_show_in = NULL;
val = efreet_ini_localestring_get(ini, "Name");
#ifndef STRICT_SPEC
@ -851,12 +850,10 @@ efreet_desktop_generic_fields_parse(Efreet_Desktop *desktop, Efreet_Ini *ini)
desktop->no_display = efreet_ini_boolean_get(ini, "NoDisplay");
desktop->hidden = efreet_ini_boolean_get(ini, "Hidden");
only_show_in = efreet_ini_string_get(ini, "OnlyShowIn");
not_show_in = efreet_ini_string_get(ini, "NotShowIn");
if (only_show_in && not_show_in)
WRN("Both OnlyShowIn and NotShowIn in %s, preferring OnlyShowIn", desktop->orig_path);
if (only_show_in) desktop->only_show_in = efreet_desktop_string_list_parse(only_show_in);
else if (not_show_in) desktop->not_show_in = efreet_desktop_string_list_parse(not_show_in);
val = efreet_ini_string_get(ini, "OnlyShowIn");
if (val) desktop->only_show_in = efreet_desktop_string_list_parse(val);
val = efreet_ini_string_get(ini, "NotShowIn");
if (val) desktop->not_show_in = efreet_desktop_string_list_parse(val);
return 1;
}
@ -979,7 +976,8 @@ efreet_desktop_environment_check(Efreet_Desktop *desktop)
break;
}
}
return found;
if (found)
return 1;
}
@ -993,7 +991,8 @@ efreet_desktop_environment_check(Efreet_Desktop *desktop)
break;
}
}
return !found;
if (found)
return 0;
}
return 1;