css: Don't do the "all set" test
authorBenjamin Otte <otte@redhat.com>
Tue, 28 Jan 2020 16:49:37 +0000 (17:49 +0100)
committerBenjamin Otte <otte@redhat.com>
Tue, 28 Jan 2020 16:57:59 +0000 (17:57 +0100)
We have so many properties that it is basically impossible that all of
them are set and the time spent checking is higher than the time saved
if it does indeed happen.

gtk/gtkcsslookup.c
gtk/gtkcsslookupprivate.h
gtk/gtkcssprovider.c

index cfe5bfc5c5850c453a31fb18f437976e2f2b0755..8b0c33b0df7e8960558c060ad918f9213bde96df 100644 (file)
@@ -44,12 +44,6 @@ _gtk_css_lookup_is_missing (const GtkCssLookup *lookup,
   return lookup->values[id].value == NULL;
 }
 
-gboolean
-_gtk_css_lookup_all_set (const GtkCssLookup *lookup)
-{
-  return lookup->n_set_values == GTK_CSS_PROPERTY_N_PROPERTIES;
-}
-
 /**
  * _gtk_css_lookup_set:
  * @lookup: the lookup
@@ -75,7 +69,6 @@ _gtk_css_lookup_set (GtkCssLookup  *lookup,
 
   lookup->values[id].value = value;
   lookup->values[id].section = section;
-  lookup->n_set_values ++;
 }
 
 /**
index 34acd504c358dbbdf5be18b0a62c2b6cb6bb5bd8..ef29c4e9b329cbf3676f2a2259b1b9e2634575a2 100644 (file)
@@ -36,7 +36,6 @@ typedef struct {
 } GtkCssLookupValue;
 
 struct _GtkCssLookup {
-  guint              n_set_values;
   GtkCssLookupValue  values[GTK_CSS_PROPERTY_N_PROPERTIES];
 };
 
@@ -44,7 +43,6 @@ void                    _gtk_css_lookup_init                    (GtkCssLookup
 void                    _gtk_css_lookup_destroy                 (GtkCssLookup               *lookup);
 gboolean                _gtk_css_lookup_is_missing              (const GtkCssLookup         *lookup,
                                                                  guint                       id);
-gboolean                _gtk_css_lookup_all_set                 (const GtkCssLookup         *lookup);
 void                    _gtk_css_lookup_set                     (GtkCssLookup               *lookup,
                                                                  guint                       id,
                                                                  GtkCssSection              *section,
index 6db8d88ba63fe382e4b7413d2f28087a28ace990..e2388de1e1eb80645e4bb0f0e8ec729108dde579 100644 (file)
@@ -489,9 +489,6 @@ gtk_css_style_provider_lookup (GtkStyleProvider             *provider,
                                    ruleset->styles[j].section,
                                    ruleset->styles[j].value);
             }
-
-          if (_gtk_css_lookup_all_set (lookup))
-            break;
         }
 
       g_ptr_array_free (tree_rules, TRUE);