diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index 1aa6e8d26987960a54c8c32d4bbb73f16a1320e2..56a8d8b3b60faa105928482f54f946cda31435e6 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -615,12 +615,13 @@ function drupal_is_denied($type, $mask) { * * @return Object - the user object. */ -function drupal_anonymous_user() { +function drupal_anonymous_user($session = '') { $user = new stdClass(); $user->uid = 0; $user->hostname = $_SERVER['REMOTE_ADDR']; $user->roles = array(); $user->roles[DRUPAL_ANONYMOUS_RID] = 'anonymous user'; + $user->session = $session; return $user; } diff --git a/includes/session.inc b/includes/session.inc index 42f5e826b183c6d97f0d25b3042cc2df41e7e041..78ec82051b030fad4429711c40951cc68373d1b5 100644 --- a/includes/session.inc +++ b/includes/session.inc @@ -41,7 +41,7 @@ function sess_read($key) { } // We didn't find the client's record (session has expired), or they are an anonymous user. else { - $user = drupal_anonymous_user(); + $user = drupal_anonymous_user($user->session); } return $user->session;