"optimized" explode_name()
diff --git a/system/libraries/Image_lib.php b/system/libraries/Image_lib.php
index 0e7f214..2896c9e 100644
--- a/system/libraries/Image_lib.php
+++ b/system/libraries/Image_lib.php
@@ -1437,26 +1437,10 @@
 	 */
 	function explode_name($source_image)
 	{
-		$x = explode('.', $source_image);
-		$ret['ext'] = '.'.end($x);
-
-		$name = '';
-
-		$ct = count($x)-1;
-
-		for ($i = 0; $i < $ct; $i++)
-		{
-			$name .= $x[$i];
-
-			if ($i < ($ct - 1))
-			{
-				$name .= '.';
-			}
-		}
-
-		$ret['name'] = $name;
-
-		return $ret;
+		$ext = strrchr($source_image, '.');
+		$name = ($ext === FALSE) ? $source_image : substr($source_image, 0, -strlen($ext));
+		
+		return array('ext' => $ext, 'name' => $name);
 	}
 
 	// --------------------------------------------------------------------