bug 1250704 relax suppresion of GtkStyle set_color leak to accept change in caller r?njn draft
authorKarl Tomlinson <karlt+@karlt.net>
Thu, 09 Jun 2016 18:54:50 +1200
changeset 376934 8d04b5a9907526505f437819b3e3d2525de4767e
parent 376933 1096f104f171f376ce16348f3f0887ded13bf02d
child 523287 a35b47a0bec7a8d9348cd52a67c792bdd6d5f641
push id20721
push userktomlinson@mozilla.com
push dateThu, 09 Jun 2016 08:18:57 +0000
reviewersnjn
bugs1250704
milestone50.0a1
bug 1250704 relax suppresion of GtkStyle set_color leak to accept change in caller r?njn MozReview-Commit-ID: 3onLEoIvMb5
build/valgrind/x86_64-redhat-linux-gnu.sup
--- a/build/valgrind/x86_64-redhat-linux-gnu.sup
+++ b/build/valgrind/x86_64-redhat-linux-gnu.sup
@@ -47,22 +47,21 @@
    Memcheck:Leak
    match-leak-kinds: definite
    fun:malloc
    fun:_cairo_freelist_alloc
    fun:_cairo_xlib_display_queue_resource
    fun:_cairo_xlib_surface_finish
    ...
 }
-# The three following leaks are deep in Gtk+3, and it doesn't seem we're doing
-# anything wrong on our end with the container objects. Those suppressions
-# are purposefully verbose so as to avoid them catching actual leaks due to
+# The following leak is deep in Gtk+3, and it doesn't seem we're doing
+# anything wrong on our end with the container objects. This suppression
+# is purposefully verbose so as to avoid catching actual leaks due to
 # Gecko code.
-# Note: valgrind doesn't support more than 24 elements in a suppression stack,
-# which explains why the second has an ellipsis above g_slice_alloc.
+# Note: valgrind doesn't support more than 24 elements in a suppression stack.
 {
    Bug 1187649
    Memcheck:Leak
    match-leak-kinds: definite
    fun:malloc
    fun:g_malloc
    fun:g_slice_alloc
    fun:g_list_prepend
@@ -80,63 +79,36 @@
    fun:g_signal_emit
    fun:gtk_combo_box_constructor
    fun:g_object_newv
    fun:g_object_new_valist
    fun:g_object_new
    fun:_ZN13nsLookAndFeel4InitEv
    ...
 }
+# set_color() in gtkstyle.c of GTK version 3.4.4 only can leak GdkRGBA
+# allocations when the theme has transparent colors:
+# https://git.gnome.org/browse/gtk+/tree/gtk/deprecated/gtkstyle.c?h=3.4.4#n676
 {
-   Bug 1187649
-   Memcheck:Leak
-   match-leak-kinds: definite
-   ...
-   fun:g_slice_alloc
-   fun:g_slice_copy
-   fun:boxed_proxy_lcopy_value
-   fun:gtk_style_context_get_valist
-   fun:gtk_style_context_get
-   fun:set_color
-   fun:gtk_style_update_from_context
-   fun:gtk_style_constructed
-   fun:g_object_newv
-   fun:g_object_new_valist
-   fun:g_object_new
-   fun:_gtk_style_new_for_path
-   fun:gtk_style_new
-   fun:gtk_widget_get_default_style
-   fun:gtk_widget_init
-   fun:g_type_create_instance
-   fun:g_object_constructor
-   fun:g_object_newv
-   fun:g_object_new
-   fun:gtk_accel_label_new
-   fun:_ZN13nsLookAndFeel4InitEv
-   ...
-}
-{
-   Bug 1187649
+   Bug 1250704
    Memcheck:Leak
    match-leak-kinds: definite
    fun:malloc
    fun:g_malloc
    fun:g_slice_alloc
    fun:g_slice_copy
    fun:boxed_proxy_lcopy_value
    fun:gtk_style_context_get_valist
    fun:gtk_style_context_get
    fun:set_color
    fun:gtk_style_update_from_context
    fun:gtk_style_constructed
    fun:g_object_newv
    fun:g_object_new_valist
    fun:g_object_new
-   fun:gtk_widget_get_style
-   fun:_ZN13nsIconChannel4InitEP6nsIURI
    ...
 }
 {
    Bug 794366
    Memcheck:Leak
    ...
    obj:/usr/lib64/libgtk-x11-2.0.so.0.1800.9
    ...