Skip to content
  • Allison Karlitskaya's avatar
    GVariant: add g_variant_take_ref() · 58c247e5
    Allison Karlitskaya authored
    This function implements the following logic:
    
      if (g_variant_is_floating (value))
        g_variant_ref_sink (value);
    
    which is used for consuming the return value of callbacks that may or
    may not return floating references.
    
    This patch also replaces a few instances of the above code with the new
    function (GSettings, GDBus) and lifts a long-standing restriction on the
    use of floating values as the return value for signal handlers by
    improving g_value_take_variant().
    
    https://bugzilla.gnome.org/show_bug.cgi?id=627974
    58c247e5