diff --git a/typo3/sysext/core/Classes/Core/ClassLoadingInformationGenerator.php b/typo3/sysext/core/Classes/Core/ClassLoadingInformationGenerator.php index 05e5116b743e044670ddbb37897d3074ff27a3f2..7c4a9a7f09fc72b2f859113b6903f5f700669f87 100644 --- a/typo3/sysext/core/Classes/Core/ClassLoadingInformationGenerator.php +++ b/typo3/sysext/core/Classes/Core/ClassLoadingInformationGenerator.php @@ -235,7 +235,11 @@ EOF; $packageRealPath = GeneralUtility::fixWindowsFilePath(realpath($packagePath)); $relativePackagePath = rtrim(substr($packagePath, strlen($this->installationRoot)), '/'); if ($relativeToRoot) { - $relativePathToClassFile = $relativePackagePath . '/' . ltrim(substr($realPathOfClassFile, strlen($packageRealPath)), '/'); + if ($realPathOfClassFile === $packageRealPath) { + $relativePathToClassFile = $relativePackagePath; + } else { + $relativePathToClassFile = $relativePackagePath . '/' . ltrim(substr($realPathOfClassFile, strlen($packageRealPath)), '/'); + } } else { $relativePathToClassFile = ltrim(substr($realPathOfClassFile, strlen($packageRealPath)), '/'); } diff --git a/typo3/sysext/core/Tests/Unit/Core/ClassLoadingInformationGeneratorTest.php b/typo3/sysext/core/Tests/Unit/Core/ClassLoadingInformationGeneratorTest.php index 7015471c4eee41004fc2553da7d50de2aa57ee55..591f6220e0bd1758760d7e4d70866e5533cab7ba 100644 --- a/typo3/sysext/core/Tests/Unit/Core/ClassLoadingInformationGeneratorTest.php +++ b/typo3/sysext/core/Tests/Unit/Core/ClassLoadingInformationGeneratorTest.php @@ -71,7 +71,7 @@ class ClassLoadingInformationGeneratorTest extends UnitTestCase { $this->assertArrayHasKey('psr-4File', $files); $this->assertArrayHasKey('classMapFile', $files); - $this->assertContains('\'TYPO3\\\\CMS\\\\TestExtension\\\\\' => array($typo3InstallDir . \'/Fixtures/test_extension/Classes/\')', $files['psr-4File']); + $this->assertContains('\'TYPO3\\\\CMS\\\\TestExtension\\\\\' => array($typo3InstallDir . \'/Fixtures/test_extension/Classes\')', $files['psr-4File']); $this->assertContains('$typo3InstallDir . \'/Fixtures/test_extension/Resources/PHP/Test.php\'', $files['classMapFile']); } diff --git a/typo3/sysext/core/Tests/Unit/Core/Fixtures/test_extension/composer.json b/typo3/sysext/core/Tests/Unit/Core/Fixtures/test_extension/composer.json index fb6d1c88d458c32cc4ade03d2358ac7dc488c2db..215103bef4748532ad54de10e7599415efa46aa8 100644 --- a/typo3/sysext/core/Tests/Unit/Core/Fixtures/test_extension/composer.json +++ b/typo3/sysext/core/Tests/Unit/Core/Fixtures/test_extension/composer.json @@ -15,6 +15,6 @@ "psr-4": { "TYPO3\\CMS\\TestExtension\\": "Classes/" }, - "classmap": ["Resources/PHP/"] + "classmap": ["Resources/PHP/Test.php"] } }