MDL-68696 sessions: Fixed redis session handler for readonly

In 39770792ca read-only sessions were allowed.
In the redis case, as called from the mobile application,
this can lead to returning 'false' for session rather than ''.
This commit is contained in:
Don Bowman 2020-05-14 08:38:20 -04:00
parent 206e179df5
commit cf7b00b8cf
No known key found for this signature in database
GPG key ID: D21D0E75160D9894
2 changed files with 12 additions and 2 deletions

View file

@ -259,8 +259,10 @@ class redis extends handler {
$this->lock_session($id);
}
$sessiondata = $this->connection->get($id);
if ($sessiondata === false && $this->requires_write_lock()) {
$this->unlock_session($id);
if ($sessiondata === false) {
if ($this->requires_write_lock()) {
$this->unlock_session($id);
}
return '';
}
$this->connection->expire($id, $this->timeout);