From a7a3a4efca883107a3a496bb0e4734aa421a3857 Mon Sep 17 00:00:00 2001 From: Jussi Laako Date: Wed, 27 Mar 2013 15:52:14 +0200 Subject: [PATCH] - Properly update local info cache when storing to avoid roundtrip timing problems - White space fixes --- libsignon-glib/signon-identity.c | 7 +++++++ libsignon-glib/signon-identity.h | 32 ++++++++++++++++---------------- 2 files changed, 23 insertions(+), 16 deletions(-) diff --git a/libsignon-glib/signon-identity.c b/libsignon-glib/signon-identity.c index bcb70ab..6cb7c70 100644 --- a/libsignon-glib/signon-identity.c +++ b/libsignon-glib/signon-identity.c @@ -741,6 +741,11 @@ signon_identity_store_credentials_with_info(SignonIdentity *self, g_return_if_fail (SIGNON_IS_IDENTITY (self)); g_return_if_fail (info != NULL); + SignonIdentityPrivate *priv = self->priv; + if (priv->identity_info) + signon_identity_info_free (priv->identity_info); + priv->identity_info = signon_identity_info_copy (info); + cb_data = g_slice_new0 (IdentityStoreCredentialsCbData); cb_data->self = self; cb_data->cb = cb; @@ -1051,6 +1056,8 @@ identity_process_updated (SignonIdentity *self) signon_identity_info_free (priv->identity_info); priv->identity_info = NULL; priv->updated = FALSE; + + DEBUG ("%s info freed, to be updated", __func__); } static void diff --git a/libsignon-glib/signon-identity.h b/libsignon-glib/signon-identity.h index 9dfac4a..507644f 100644 --- a/libsignon-glib/signon-identity.h +++ b/libsignon-glib/signon-identity.h @@ -4,7 +4,7 @@ * This file is part of libsignon-glib * * Copyright (C) 2009-2010 Nokia Corporation. - * Copyright (C) 2012 Intel Corporation. + * Copyright (C) 2012-2013 Intel Corporation. * * Contact: Alberto Mardegan * Contact: Jussi Laako @@ -162,9 +162,9 @@ typedef void (*SignonIdentityVerifyCb) (SignonIdentity *self, gpointer user_data); void signon_identity_verify_secret(SignonIdentity *self, - const gchar *secret, - SignonIdentityVerifyCb cb, - gpointer user_data); + const gchar *secret, + SignonIdentityVerifyCb cb, + gpointer user_data); /** * SignonIdentityInfoCb: @@ -181,26 +181,26 @@ typedef void (*SignonIdentityInfoCb) (SignonIdentity *self, gpointer user_data); void signon_identity_query_info(SignonIdentity *self, - SignonIdentityInfoCb cb, - gpointer user_data); + SignonIdentityInfoCb cb, + gpointer user_data); void signon_identity_remove(SignonIdentity *self, - SignonIdentityRemovedCb cb, - gpointer user_data); + SignonIdentityRemovedCb cb, + gpointer user_data); void signon_identity_signout(SignonIdentity *self, - SignonIdentitySignedOutCb cb, - gpointer user_data); + SignonIdentitySignedOutCb cb, + gpointer user_data); void signon_identity_add_reference(SignonIdentity *self, - const gchar *reference, - SignonIdentityReferenceAddedCb cb, - gpointer user_data); + const gchar *reference, + SignonIdentityReferenceAddedCb cb, + gpointer user_data); void signon_identity_remove_reference(SignonIdentity *self, - const gchar *reference, - SignonIdentityReferenceRemovedCb cb, - gpointer user_data); + const gchar *reference, + SignonIdentityReferenceRemovedCb cb, + gpointer user_data); typedef void (*SignonIdentitySessionReadyCb) (SignonAuthSession *self, GError *error, -- 2.34.1