[mutter] theme-parser: Use peek_required_version() for validation



commit 4bc8c70c759140b8c3b4ac852563652cb1c60885
Author: Florian Müllner <fmuellner gnome org>
Date:   Tue Jan 4 19:43:18 2011 +0100

    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

 src/ui/theme-parser.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)
---
diff --git a/src/ui/theme-parser.c b/src/ui/theme-parser.c
index 1249234..42ceeac 100644
--- a/src/ui/theme-parser.c
+++ b/src/ui/theme-parser.c
@@ -2955,6 +2955,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,
@@ -2973,13 +2974,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;
@@ -3828,7 +3830,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);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]