https://bugs.freedesktop.org/show_bug.cgi?id=98529

            Bug ID: 98529
           Summary: invalid reference transfer on online account
                    authentication
           Product: SyncEvolution
           Version: unspecified
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: SyncEvolution
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]

authentication process is leaking reference during the authentication:

This happens in all logs. Perhaps this is wrong:
signon-accounts.cpp:
GVariantCXX sessionData(ag_auth_data_get_login_parameters(m_authData,
extraOptions), TRANSFER_REF);


According to
http://accounts-sso.gitlab.io/libaccounts-glib/AgAuthData.html#ag-auth-data-get-login-parameters,
ag_auth_data_get_login_parameters() does not transfer ownership, so
the line above probably should be:
GVariantCXX
sessionData(g_variant_ref_sink(ag_auth_data_get_login_parameters(m_authData,
extraOptions)), TRANSFER_REF);


Not sure whether that has been broken all along or is due to an API
change. Alberto Mardegan wrote that code in SyncEvolution.

I see a commit which cleans up reference counting in libaccounts.
Perhaps the warning was not seen when writing the count because
ag_auth_data_get_login_parameters returned a GVariant where the ref
count already was too high, so decrementing once too often did no harm.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
_______________________________________________
Syncevolution-issues mailing list
[email protected]
https://lists.syncevolution.org/mailman/listinfo/syncevolution-issues

Reply via email to