cache: Fix leaks in xfconf_cache_handle_property_changed
Leak report
Direct leak of 384 byte(s) in 6 object(s) allocated from:
#0 0x5e1e9bc6d599 in malloc (/usr/asan/bin/xfce4-keyboard-settings+0x178599)
#1 0x74e997513e4a in g_malloc /usr/src/debug/glib2/build/../glib/glib/gmem.c:100:13
#2 0x74e997559fff in g_variant_get_child_value /usr/src/debug/glib2/build/../glib/glib/gvariant-core.c:1204:13
#3 0x74e99755ce1e in g_variant_valist_get_nnp /usr/src/debug/glib2/build/../glib/glib/gvariant.c:5024:14
#4 0x74e99755ce1e in g_variant_valist_get_leaf /usr/src/debug/glib2/build/../glib/glib/gvariant.c:5141:16
#5 0x74e99755ce1e in g_variant_valist_get /usr/src/debug/glib2/build/../glib/glib/gvariant.c:5322:5
#6 0x74e99755ca78 in g_variant_valist_get /usr/src/debug/glib2/build/../glib/glib/gvariant.c:5357:15
#7 0x74e99755d005 in g_variant_get_va /usr/src/debug/glib2/build/../glib/glib/gvariant.c:5585:3
#8 0x74e99755d2ab in g_variant_get /usr/src/debug/glib2/build/../glib/glib/gvariant.c:5532:3
#9 0x74e998c018cc in xfconf_cache_handle_property_changed xfconf/xfconf/xfconf-cache.c:502:9
#10 0x74e998c018cc in xfconf_cache_proxy_signal_received_cb xfconf/xfconf/xfconf-cache.c:586:9
#11 0x74e99792e699 in g_closure_invoke /usr/src/debug/glib2/build/../glib/gobject/gclosure.c:834:7
[...snip...]
Steps to reproduce
- In xfce4-keyboard-settings, rapidly click on "Restore num lock state on startup" repeatedly
Testing
- No issues were detected with LSan, ASan, or Valgrind when testing the patch