Permalink
Browse files

Revert some of the changes from PR #2029

We have file naming conventions and any extension filename needs to match MY_<orig_filename>,
so we don't need to check for lowercase equivalents.
  • Loading branch information...
1 parent 89ecc8a commit 7e83f32e3844ba8ee34c8a79ee6fa3f558fcb46a @narfbg narfbg committed Nov 25, 2012
Showing with 25 additions and 43 deletions.
  1. +24 −42 system/libraries/Driver.php
  2. +1 −1 tests/codeigniter/libraries/Driver_test.php
@@ -93,20 +93,16 @@ public function load_driver($child)
$child_name = $this->lib_name.'_'.$child;
// See if requested child is a valid driver
- if ( ! in_array($child, array_map('strtolower', $this->valid_drivers)))
+ if ( ! in_array($child, $this->valid_drivers))
{
// The requested driver isn't valid!
$msg = 'Invalid driver requested: '.$child_name;
log_message('error', $msg);
show_error($msg);
}
- // All driver files should be in a library subdirectory - capitalized
- $subdir = ucfirst(strtolower($this->lib_name));
-
// Get package paths and filename case variations to search
$paths = $CI->load->get_package_paths(TRUE);
- $cases = array(ucfirst($child_name), strtolower($child_name));
// Is there an extension?
$class_name = $prefix.$child_name;
@@ -116,31 +112,24 @@ public function load_driver($child)
// Check for subclass file
foreach ($paths as $path)
{
- // Extension will be in drivers subdirectory
- $path .= 'libraries/'.$subdir.'/drivers/';
-
- // Try filename with caps and all lowercase
- foreach ($cases as $name)
+ // Does the file exist?
+ $file = $path.'libraries/'.$this->lib_name.'/drivers/'.$prefix.$child_name.'.php';
+ if (file_exists($file))
{
- // Does the file exist?
- $file = $path.$prefix.$name.'.php';
- if (file_exists($file))
+ // Yes - require base class from BASEPATH
+ $basepath = BASEPATH.'libraries/'.$this->lib_name.'/drivers/'.$child_name.'.php';
+ if ( ! file_exists($basepath))
{
- // Yes - require base class from BASEPATH
- $basepath = BASEPATH.'libraries/'.$subdir.'/drivers/'.ucfirst($child_name).'.php';
- if ( ! file_exists($basepath))
- {
- $msg = 'Unable to load the requested class: CI_'.$child_name;
- log_message('error', $msg);
- show_error($msg);
- }
-
- // Include both sources and mark found
- include($basepath);
- include($file);
- $found = TRUE;
- break 2;
+ $msg = 'Unable to load the requested class: CI_'.$child_name;
+ log_message('error', $msg);
+ show_error($msg);
}
+
+ // Include both sources and mark found
+ include($basepath);
+ include($file);
+ $found = TRUE;
+ break;
}
}
}
@@ -156,20 +145,13 @@ public function load_driver($child)
// Check package paths
foreach ($paths as $path)
{
- // Class will be in drivers subdirectory
- $path .= 'libraries/'.$subdir.'/drivers/';
-
- // Try filename with caps and all lowercase
- foreach ($cases as $name)
+ // Does the file exist?
+ $file = $path.'libraries/'.$this->lib_name.'/drivers/'.$child_name.'.php';
+ if (file_exists($file))
{
- // Does the file exist?
- $file = $path.$name.'.php';
- if (file_exists($file))
- {
- // Include source
- include($file);
- break 2;
- }
+ // Include source
+ include($file);
+ break;
}
}
}
@@ -183,8 +165,8 @@ public function load_driver($child)
show_error($msg);
}
- // Instantiate, decorate, and add child
- $obj = new $class_name;
+ // Instantiate, decorate and add child
+ $obj = new $class_name();
$obj->decorate($this);
$this->$child = $obj;
return $this->$child;
@@ -72,7 +72,7 @@ public function test_load_app_driver()
$file = $this->name.'_'.$driver;
$class = 'CI_'.$file;
$content = '<?php class '.$class.' extends CI_Driver { }';
- $this->ci_vfs_create(strtolower($file), $content, $this->ci_app_root,
+ $this->ci_vfs_create($file, $content, $this->ci_app_root,
array('libraries', $this->name, 'drivers'));
// Make valid list

0 comments on commit 7e83f32

Please sign in to comment.