summaryrefslogtreecommitdiff
path: root/modules/openid
diff options
context:
space:
mode:
Diffstat (limited to 'modules/openid')
-rw-r--r--modules/openid/openid.inc8
-rw-r--r--modules/openid/openid.module6
2 files changed, 8 insertions, 6 deletions
diff --git a/modules/openid/openid.inc b/modules/openid/openid.inc
index 9bc4de789..debf16169 100644
--- a/modules/openid/openid.inc
+++ b/modules/openid/openid.inc
@@ -61,6 +61,10 @@ function openid_redirect_http($url, $message) {
$sep = (strpos($url, '?') === FALSE) ? '?' : '&';
header('Location: ' . $url . $sep . implode('&', $query), TRUE, 302);
+
+ // Commit session data before redirecting.
+ drupal_session_commit();
+
exit;
}
@@ -73,6 +77,10 @@ function openid_redirect($url, $message) {
$output .= '<script type="text/javascript">document.getElementById("openid-redirect-form").submit();</script>';
$output .= "</body></html>\n";
print $output;
+
+ // Commit session data before redirecting.
+ drupal_session_commit();
+
exit;
}
diff --git a/modules/openid/openid.module b/modules/openid/openid.module
index 03053333f..a879ccdb7 100644
--- a/modules/openid/openid.module
+++ b/modules/openid/openid.module
@@ -174,9 +174,6 @@ function openid_begin($claimed_id, $return_to = '', $form_values = array()) {
}
// Store discovered information in the users' session so we don't have to rediscover.
- if (!isset($_SESSION['openid'])) {
- drupal_set_session('openid', array());
- }
$_SESSION['openid']['service'] = $services[0];
// Store the claimed id
$_SESSION['openid']['claimed_id'] = $claimed_id;
@@ -434,9 +431,6 @@ function openid_authentication($response) {
// We were unable to register a valid new user, redirect to standard
// user/register and prefill with the values we received.
drupal_set_message(t('OpenID registration failed for the reasons listed. You may register now, or if you already have an account you can <a href="@login">log in</a> now and add your OpenID under "My Account"', array('@login' => url('user/login'))), 'error');
- if (!isset($_SESSION['openid'])) {
- drupal_set_session('openid', array());
- }
$_SESSION['openid']['values'] = $form_state['values'];
// We'll want to redirect back to the same place.
$destination = drupal_get_destination();