[BUGFIX] ResourceCompressor does not persist external resources 70/51270/2
authorBenni Mack <benni@typo3.org>
Wed, 11 Jan 2017 17:05:50 +0000 (18:05 +0100)
committerChristian Kuhn <lolli@schwarzbu.ch>
Wed, 11 Jan 2017 20:27:19 +0000 (21:27 +0100)
The condition in the ResourceCompressor for fetching
external files never worked, as it was a simple typo
to update an external resource.

So the first time the local file did not exist (and thus, the md5
did not match) and the file was fetched but due to the
wrong check, the file never got updated.

Resolves: #79269
Releases: master, 7.6
Change-Id: If6942284ccd46f400e23d199e827d4e7a696961d
Reviewed-on: https://review.typo3.org/51270
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: David Greiner <hallo@davidgreiner.de>
Tested-by: David Greiner <hallo@davidgreiner.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
typo3/sysext/core/Classes/Resource/ResourceCompressor.php

index c2d7d7e..ff7f116 100644 (file)
@@ -638,9 +638,9 @@ class ResourceCompressor
     {
         $externalContent = GeneralUtility::getUrl($url);
         $filename = $this->targetDirectory . 'external-' . md5($url);
-        // write only if file does not exist and md5 of the content is not the same as fetched one
+        // Write only if file does not exist OR md5 of the content is not the same as fetched one
         if (!file_exists(PATH_site . $filename)
-            && (md5($externalContent) !== md5(file_get_contents(PATH_site . $filename)))
+            || (md5($externalContent) !== md5(file_get_contents(PATH_site . $filename)))
         ) {
             GeneralUtility::writeFile(PATH_site . $filename, $externalContent);
         }