[BUGFIX] Wrong whitespace handling in RTE-enabled fields upgrade wizard 00/28600/4
authorFrans Saris <franssaris@gmail.com>
Fri, 21 Mar 2014 11:36:14 +0000 (12:36 +0100)
committerMarkus Klein <klein.t3@mfc-linz.at>
Tue, 25 Mar 2014 15:25:39 +0000 (16:25 +0100)
The upgrade wizards searches for all filepaths in the RTE-enabled fields
as these are found in sys_refindex.ref_string. But in the RTE-enabled
fields spaces are replaced by %20 and in sys_refindex.ref_string not.

This patch replaces whitespaces with %20 in the regularExpression
used the find the occurrences of the filepath.

Resolves: #57143
Releases: 6.2
Change-Id: I6631b476defe7e3faa78914338fce70372ad1fb5
Reviewed-on: https://review.typo3.org/28600
Reviewed-by: Markus Klein
Tested-by: Markus Klein
typo3/sysext/install/Classes/Updates/RteFileLinksUpdateWizard.php

index 591e25c..f543c85 100644 (file)
@@ -213,7 +213,7 @@ class RteFileLinksUpdateWizard extends AbstractUpdate {
                if ($fileObject instanceof \TYPO3\CMS\Core\Resource\AbstractFile) {
                        // Next, match the reference path in the content to be sure it's present inside a <link> tag
                        $content = $record[$reference['field']];
-                       $regularExpression = '$<(link ' . $reference['ref_string'] . ').*>$';
+                       $regularExpression = '$<(link ' . str_replace(' ', '%20', $reference['ref_string']) . ').*>$';
                        $matches = array();
                        $result = preg_match($regularExpression, $content, $matches);
                        if ($result) {