Merge pull request #3744 from ftwbzhao/develop

[ci skip] Cache/Redis authentication failure handling
diff --git a/system/libraries/Cache/drivers/Cache_redis.php b/system/libraries/Cache/drivers/Cache_redis.php
index 114c329..b940b76 100644
--- a/system/libraries/Cache/drivers/Cache_redis.php
+++ b/system/libraries/Cache/drivers/Cache_redis.php
@@ -302,7 +302,11 @@
 
 		if (isset($config['password']))
 		{
-			$this->_redis->auth($config['password']);
+			if ( ! $this->_redis->auth($config['password']))
+			{
+				log_message('debug', 'Cache: Redis authentication failed.');
+				return FALSE;
+			}
 		}
 
 		// Initialize the index of serialized values.
diff --git a/user_guide_src/source/changelog.rst b/user_guide_src/source/changelog.rst
index 8fa4d1e..04a0aa5 100644
--- a/user_guide_src/source/changelog.rst
+++ b/user_guide_src/source/changelog.rst
@@ -15,6 +15,7 @@
 -------------------
 
 -  Fixed a bug (#3733) - Autoloading of libraries with aliases didn't work, although it was advertised to.
+-  Fixed a bug (#3744) - Redis :doc:`Caching <libraries/caching>` driver didn't handle authentication failures properly.
 
 Version 3.0.0
 =============