diff --git a/lib/Cake/Cache/Engine/RedisEngine.php b/lib/Cake/Cache/Engine/RedisEngine.php index fa15b344fe6..4d6075f4cb9 100644 --- a/lib/Cake/Cache/Engine/RedisEngine.php +++ b/lib/Cake/Cache/Engine/RedisEngine.php @@ -79,7 +79,6 @@ public function init($settings = array()) { * @return boolean True if Redis server was connected */ protected function _connect() { - $return = false; try { $this->_Redis = new Redis(); if (!empty($this->settings['unix_socket'])) { @@ -91,15 +90,15 @@ protected function _connect() { $return = $this->_Redis->pconnect($this->settings['server'], $this->settings['port'], $this->settings['timeout'], $persistentId); } } catch (RedisException $e) { - return false; + $return = false; } - if ($return && $this->settings['password']) { - $return = $this->_Redis->auth($this->settings['password']); + if (!$return) { + return false; } - if ($return) { - $return = $this->_Redis->select($this->settings['database']); + if ($this->settings['password'] && !$this->_Redis->auth($this->settings['password'])) { + return false; } - return $return; + return $this->_Redis->select($this->settings['database']); } /**