diff --git a/src/Composer/Autoload/ClassLoader.php b/src/Composer/Autoload/ClassLoader.php index 443364959..4a56396af 100644 --- a/src/Composer/Autoload/ClassLoader.php +++ b/src/Composer/Autoload/ClassLoader.php @@ -56,7 +56,10 @@ class ClassLoader public function getPrefixes() { - return call_user_func_array('array_merge', $this->prefixesPsr0); + if (!empty($this->prefixesPsr0)) { + return call_user_func_array('array_merge', $this->prefixesPsr0); + } + return array(); } public function getPrefixesPsr4() diff --git a/tests/Composer/Test/Autoload/ClassLoaderTest.php b/tests/Composer/Test/Autoload/ClassLoaderTest.php index ad42e233a..50772101e 100644 --- a/tests/Composer/Test/Autoload/ClassLoaderTest.php +++ b/tests/Composer/Test/Autoload/ClassLoaderTest.php @@ -55,4 +55,13 @@ class ClassLoaderTest extends \PHPUnit_Framework_TestCase array('ShinyVendor\\ShinyPackage\\SubNamespace\\Bar', true), ); } + + /** + * getPrefixes method should return empty array if ClassLoader does not have any psr-0 configuration + */ + public function testGetPrefixesWithNoPSR0Configuration() + { + $loader = new ClassLoader(); + $this->assertEmpty($loader->getPrefixes()); + } }