diff options
author | Benjamin Otte <otte@redhat.com> | 2012-10-01 10:32:59 +0200 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2012-10-01 10:32:59 +0200 |
commit | 2f89505b5484d7712ddc5771c754ca74e121610b (patch) | |
tree | 81ca6acc4047480ee4213de617d2142bc1051143 | |
parent | a2bef8ca516f5e9335c1133c902185e85fa66e3d (diff) | |
download | gtk+-2f89505b5484d7712ddc5771c754ca74e121610b.tar.gz |
csscomputedvalues: Unset the section when setting a new value
Otherwise we end up with the wrong section if no new one is specified.
-rw-r--r-- | gtk/gtkcsscomputedvalues.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gtk/gtkcsscomputedvalues.c b/gtk/gtkcsscomputedvalues.c index b60324eaa0..12424cc083 100644 --- a/gtk/gtkcsscomputedvalues.c +++ b/gtk/gtkcsscomputedvalues.c @@ -195,6 +195,12 @@ _gtk_css_computed_values_set_value (GtkCssComputedValues *values, if (dependencies & (GTK_CSS_DEPENDS_ON_FONT_SIZE)) values->depends_on_font_size = _gtk_bitmask_set (values->depends_on_font_size, id, TRUE); + if (values->sections && values->sections->len > id && g_ptr_array_index (values->sections, id)) + { + gtk_css_section_unref (g_ptr_array_index (values->sections, id)); + g_ptr_array_index (values->sections, id) = NULL; + } + if (section) { if (values->sections == NULL) |