From b40a41156e4949cf06ad3e77251526d42c20adaf Mon Sep 17 00:00:00 2001 From: Helmut Hummel <typo3@helhum.io> Date: Fri, 11 Aug 2017 16:31:22 +0200 Subject: [PATCH] [BUGFIX] Remove symlink to typo3 folder in web dir When upgrading from older TYPO3 versions, composer installation from that version created a symlink to the typo3 folder. Before trying to remove typo3/sysext, we need to ensure to remove a potentially existing symlink to typo3 folder to not accidentally delete that sysext folder within the sources directory. Resolves: #82090 Releases: master Change-Id: I12ef27d6236a9dbe844803afce55247a23ee5358 Reviewed-on: https://review.typo3.org/53682 Reviewed-by: Andreas Fernandez <typo3@scripting-base.de> Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de> Tested-by: Mathias Brodala <mbrodala@pagemachine.de> Reviewed-by: Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by: Helmut Hummel <typo3@helhum.io> Tested-by: Helmut Hummel <typo3@helhum.io> --- .../core/Classes/Composer/InstallerScripts/WebDirectory.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/typo3/sysext/core/Classes/Composer/InstallerScripts/WebDirectory.php b/typo3/sysext/core/Classes/Composer/InstallerScripts/WebDirectory.php index 8bfc99005871..2c7a1dcd690f 100644 --- a/typo3/sysext/core/Classes/Composer/InstallerScripts/WebDirectory.php +++ b/typo3/sysext/core/Classes/Composer/InstallerScripts/WebDirectory.php @@ -88,6 +88,10 @@ class WebDirectory implements InstallerScript { $webDir = $this->filesystem->normalizePath($this->pluginConfig->get('web-dir')); $backendDir = $webDir . self::$typo3Dir; + // Ensure we delete a previously existing symlink to typo3 folder in web directory + if ($this->filesystem->isSymlinkedDirectory($backendDir)) { + $this->filesystem->removeDirectory($backendDir); + } $this->filesystem->ensureDirectoryExists($backendDir); $localRepository = $this->composer->getRepositoryManager()->getLocalRepository(); $package = $localRepository->findPackage('typo3/cms', new EmptyConstraint()); -- GitLab