diff --git a/system/libraries/Loader.php b/system/libraries/Loader.php
index 90dc0f1..05ee939 100644
--- a/system/libraries/Loader.php
+++ b/system/libraries/Loader.php
@@ -611,16 +611,7 @@
 		if (substr($class, 0, 3) == 'my_')
 		{
 			$class = preg_replace("/my_(.+)/", "\\1", $class);
-			$extend = TRUE;
-		}
-		else
-		{
-			$extend = FALSE;
-		}
-				
-		// Are we extending one of the base classes?
-		if ($extend == TRUE)
-		{
+
 			// Load the requested library from the main system/libraries folder
 			if (file_exists(BASEPATH.'libraries/'.ucfirst($class).EXT))
 			{
@@ -638,22 +629,20 @@
 			
 			return $this->_ci_init_class($filename, 'MY_', $params);
 		}
-		else
-		{		
-			// Lets search for the requested library file and load it.
-			// For backward compatibility we'll test for filenames that are
-			// both uppercase and lower.
-			foreach (array(ucfirst($class), $class) as $filename)
+
+		// Lets search for the requested library file and load it.
+		// For backward compatibility we'll test for filenames that are
+		// both uppercase and lower.
+		foreach (array(ucfirst($class), $class) as $filename)
+		{
+			for ($i = 1; $i < 3; $i++)
 			{
-				for ($i = 1; $i < 3; $i++)
+				$path = ($i % 2) ? APPPATH : BASEPATH;
+			
+				if (file_exists($path.'libraries/'.$filename.EXT))
 				{
-					$path = ($i % 2) ? APPPATH : BASEPATH;
-				
-					if (file_exists($path.'libraries/'.$filename.EXT))
-					{
-						include_once($path.'libraries/'.$filename.EXT);
-						return $this->_ci_init_class($filename, '', $params);
-					}
+					include_once($path.'libraries/'.$filename.EXT);
+					return $this->_ci_init_class($filename, '', $params);
 				}
 			}
 		}
@@ -686,7 +675,7 @@
 		
 		if ($prefix == '')
 		{
-			$name = ( ! class_exists($class)) ? 'CI_'.$class : $class;
+			$name = (class_exists('CI_'.$class)) ? 'CI_'.$class : $class;
 		}
 		else
 		{
@@ -756,24 +745,28 @@
 		// Load libraries
 		if (isset($autoload['libraries']) AND count($autoload['libraries']) > 0)
 		{
+			// Load the database driver.  
 			if (in_array('database', $autoload['libraries']))
 			{
 				$this->database();
 				$autoload['libraries'] = array_diff($autoload['libraries'], array('database'));
 			}
 
+			// Load the model class.  
 			if (in_array('model', $autoload['libraries']))
 			{
 				$this->model();
 				$autoload['libraries'] = array_diff($autoload['libraries'], array('model'));
 			}
-	
+
+			// Load scaffolding
 			if (in_array('scaffolding', $autoload['libraries']))
 			{
 				$this->scaffolding();
 				$autoload['libraries'] = array_diff($autoload['libraries'], array('scaffolding'));
 			}
 		
+			// Load all other libraries
 			foreach ($autoload['libraries'] as $item)
 			{
 				$this->library($item);