Patrick Ohly changed bug 98529
What Removed Added
Resolution --- FIXED
Status NEW RESOLVED

Comment # 1 on bug 98529 from
Fix included in master branch:

commit 59372771027ea98f59e42b2390263b077a71876c
Author: Patrick Ohly <patrick.ohly@intel.com>
Date:   Thu Nov 3 00:50:26 2016 -0700

    SignonAuthProvider: fix ref counting issue

    The account data was unreferenced once too often, or rather, a suitable ref
    count increase was missing. A debug build of glib detects that ("GLib:
    g_variant_unref: assertion 'value->ref_count > 0' failed"), but without
that
    check the code might also crash.

diff --git a/src/backends/signon/signon-accounts.cpp
b/src/backends/signon/signon-accounts.cpp
index 488a0e6..3ea9074 100644
--- a/src/backends/signon/signon-accounts.cpp
+++ b/src/backends/signon/signon-accounts.cpp
@@ -165,7 +165,7 @@ private:
         // so we have to use the "steal" variant to enable that assignment.
         GVariantStealCXX resultData;
         GErrorCXX gerror;
-        GVariantCXX sessionData(ag_auth_data_get_login_parameters(m_authData,
extraOptions), TRANSFER_REF);
+        GVariantCXX
sessionData(g_variant_ref_sink(ag_auth_data_get_login_parameters(m_authData,
extraOptions)), TRANSFER_REF);
         const char *mechanism = ag_auth_data_get_mechanism(m_authData);
         PlainGStr buffer(g_variant_print(sessionData, true));
         SE_LOG_DEBUG(NULL, "asking for authentication with method %s,
mechanism %s and parameters %s",


You are receiving this mail because: