Fixed select_driver(), cookie sess_destroy(), and native cookie name conflict
diff --git a/system/core/Loader.php b/system/core/Loader.php
index a62cf06..01d99dd 100644
--- a/system/core/Loader.php
+++ b/system/core/Loader.php
@@ -911,7 +911,7 @@
$class = substr($class, $last_slash);
// Check for match and driver base class
- if (strtolower($subdir) == strtolower($class) && ! class_exists('CI_Driver_Library'))
+ if (strtolower(trim($subdir, '/')) == strtolower($class) && ! class_exists('CI_Driver_Library'))
{
// We aren't instantiating an object here, just making the base class available
require BASEPATH.'libraries/Driver.php';
@@ -1005,6 +1005,12 @@
$path = strtolower($class).'/'.$class;
return $this->_ci_load_class($path, $params);
}
+ else if (ucfirst($subdir) != $subdir)
+ {
+ // Lowercase subdir failed - retry capitalized
+ $path = ucfirst($subdir).$class;
+ return $this->_ci_load_class($path, $params);
+ }
// If we got this far we were unable to find the requested class.
// We do not issue errors if the load call failed due to a duplicate request