diff --git a/src/single_sign_on.c b/src/single_sign_on.c index 0f9b6b2..2967e30 100644 --- a/src/single_sign_on.c +++ b/src/single_sign_on.c @@ -288,13 +288,6 @@ int single_sign_on() } free(reauth_time); - rc = save_profile_dumps(LASSO_PROFILE(login)); - if (rc) { - lasso_login_destroy(login); - lasso_server_destroy(server); - return error_page("failed to save dumps"); - } - rc = db_save_name_identifier( LASSO_PROFILE(login)->nameIdentifier, user_id); if (rc) { @@ -303,6 +296,13 @@ int single_sign_on() return error_page("failed to save name identifier"); } + rc = save_profile_dumps(LASSO_PROFILE(login)); + if (rc) { + lasso_login_destroy(login); + lasso_server_destroy(server); + return error_page("failed to save dumps"); + } + if (login->protocolProfile == lassoLoginProtocolProfileBrwsArt) { rc = db_save_assertion(