[BUGFIX] Let Extension Manager API also create folders 32/50632/2
authorHelmut Hummel <info@helhum.io>
Wed, 9 Nov 2016 21:38:20 +0000 (21:38 +0000)
committerWouter Wolters <typo3@wouterwolters.nl>
Sun, 13 Nov 2016 13:40:15 +0000 (14:40 +0100)
The API method added in for #70606 does not
create extension folders, which makes the API
incomplete and more or less useless.

Move the method call to create the folder into the API method.
Although the creation is done later then, the code in question
didn't need the folders anyway.

Resolves: #78631
Related: #70606
Releases: master, 7.6
Change-Id: I17b3527cd2c26e0bb1bdfedcb68dc7ae6064500d
Reviewed-on: https://review.typo3.org/50632
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters <typo3@wouterwolters.nl>
typo3/sysext/extensionmanager/Classes/Utility/InstallUtility.php

index 14ae3c0..ecbc7d0 100644 (file)
@@ -179,7 +179,6 @@ class InstallUtility implements \TYPO3\CMS\Core\SingletonInterface
     public function install($extensionKey)
     {
         $extension = $this->enrichExtensionWithDetails($extensionKey, false);
-        $this->ensureConfiguredDirectoriesExist($extension);
         $this->loadExtension($extensionKey);
         if (!empty($extension['clearcacheonload']) || !empty($extension['clearCacheOnLoad'])) {
             $this->cacheManager->flushCaches();
@@ -197,7 +196,8 @@ class InstallUtility implements \TYPO3\CMS\Core\SingletonInterface
      */
     public function processExtensionSetup($extensionKey)
     {
-        $extension = $this->getExtensionArray($extensionKey);
+        $extension = $this->enrichExtensionWithDetails($extensionKey, false);
+        $this->ensureConfiguredDirectoriesExist($extension);
         $this->importInitialFiles($extension['siteRelPath'], $extensionKey);
         $this->processDatabaseUpdates($extension);
         $this->processRuntimeDatabaseUpdates($extensionKey);