"method", method, NULL);
auth_session->priv->proxy = proxy;
auth_session->priv->identity_info = g_hash_table_ref ((GHashTable *)info);
- auth_session->priv->token_data = token_data;
+ auth_session->priv->token_data = token_data ? gsignond_dictionary_ref(token_data)
+ : gsignond_dictionary_new();
return auth_session;
}
if ( (identity_id = gsignond_identity_info_get_id (identity->priv->info)) !=
GSIGNOND_IDENTITY_INFO_NEW_IDENTITY) {
token_data = gsignond_daemon_load_identity_data (identity->priv->owner, identity_id, method);
- } else {
- token_data = gsignond_dictionary_new();
- }
+ }
+ if (!token_data) token_data = gsignond_dictionary_new();
session = gsignond_auth_session_new (identity->priv->info, method, token_data);