summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Müllner <[email protected]>2011-01-04 19:43:18 +0100
committerVictor Kareh <[email protected]>2018-08-28 09:38:37 -0400
commit33c75c2a39c2f6da4a76a556e55f4a4a57aa7cd4 (patch)
treeb294f2bd0adbfdb6bda754ddbec158608605de1c
parentc9c3f858e28edf0856a263941007401923adbabd (diff)
downloadmarco-33c75c2a39c2f6da4a76a556e55f4a4a57aa7cd4.tar.bz2
marco-33c75c2a39c2f6da4a76a556e55f4a4a57aa7cd4.tar.xz
theme-parser: Use peek_required_version() for validation
When validating button functions and frame styles, the required format version of the features used in the theme was compared to the major version number of the supported format, limiting additions to major theme format bumps. Use peek_required_version() instead, so the minor version number of the supported theme format is taken into account. https://bugzilla.gnome.org/show_bug.cgi?id=635683
-rw-r--r--src/ui/theme-parser.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/ui/theme-parser.c b/src/ui/theme-parser.c
index e3c044f9..49fcd732 100644
--- a/src/ui/theme-parser.c
+++ b/src/ui/theme-parser.c
@@ -2975,6 +2975,7 @@ parse_style_element (GMarkupParseContext *context,
const char *function = NULL;
const char *state = NULL;
const char *draw_ops = NULL;
+ gint required_version;
if (!locate_attributes (context, element_name, attribute_names, attribute_values,
error,
@@ -2993,13 +2994,14 @@ parse_style_element (GMarkupParseContext *context,
return;
}
+ required_version = peek_required_version (info);
if (meta_theme_earliest_version_with_button (info->button_type) >
- info->theme->format_version)
+ (guint)required_version)
{
set_error (error, context, G_MARKUP_ERROR, G_MARKUP_ERROR_PARSE,
_("Button function \"%s\" does not exist in this version (%d, need %d)"),
function,
- info->theme->format_version,
+ required_version,
meta_theme_earliest_version_with_button (info->button_type)
);
return;
@@ -3940,7 +3942,7 @@ end_element_handler (GMarkupParseContext *context,
g_assert (info->style);
if (!meta_frame_style_validate (info->style,
- info->theme->format_version,
+ peek_required_version (info),
error))
{
add_context_to_error (error, context);