Bug #103601
Updated by Sybille Peters 8 months ago
h2. Versions * TYPO3 versions: v11 (latest 11.5 branch and latest release), *not reproducible with v13 (latest main) and v12 (latest 12.4 ranch)* main)* * PHP 8.2 * test with "Settings" Debug preset did not test with v12 and v13 h2. Reproduce Ideally use an extension which adds a field to tt_content which has allowLanguageSynchronization true, e.g. use extension https://github.com/sypets/sypets_tca_test <pre><code class="php"> 'tx_sypets_tca_test_check' => [ 'exclude' => 1, 'label' => 'Checkbox with allowLanguageSynchronization', 'config' => [ 'type' => 'check', 'default' => 0, 'behaviour' => [ 'allowLanguageSynchronization' => true ] ] ], </code></pre> (1) extension is activated, Debug mode 1. create translation page, translate with connected mode 2. edit translated element, set translate origin to empty and save Exception is thrown, change is not successful <pre> (1/1) #1476107295 TYPO3\CMS\Core\Error\Exception PHP Warning: Array to string conversion in /var/www/t3coredev11/typo3/sysext/core/Classes/DataHandling/DataHandler.php line 8141 </pre> in /var/www/t3coredev11/typo3/sysext/core/Classes/DataHandling/DataHandler.php line 8141 in function compareFieldArrayWithCurrentAndUnset <pre><code class="php"> 8137 { 8138 // No NULL values are allowed, this is the regular behaviour. 8139 // Thus, check whether strings are the same or whether integer values are empty ("0" or ""). 8140 if (!$allowNull) { 8141 $result = (string)$submittedValue === (string)$storedValue || $storedType === 'int' && (int)$storedValue === (int)$submittedValue; // Null values are allowed, but currently there's a real (not NULL) value. // Thus, ensure no NULL value was submitted and fallback to the regular behaviour. } elseif ($storedValue !== null) { $result = ( </code></pre> ------ (2) extension is activated, Live mode 1. create translation page, translate with connected mode 2. edit translated element, set translate origin to empty and save Change is successful check log: <pre> Thu, 11 Apr 2024 09:44:59 +0000 [WARNING] request="c78d853f870f9" component="TYPO3.CMS.Core.Error.ErrorHandler": Core: Error handler (BE): PHP Warning: Array to string conversion in /var/www/t3coredev11/typo3/sysext/core/Classes/DataHandling/DataHandler.php line 8141 Thu, 11 Apr 2024 09:44:59 +0000 [WARNING] request="c78d853f870f9" component="TYPO3.CMS.Core.Error.ErrorHandler": Core: Error handler (BE): PHP Warning: Array to string conversion in /var/www/t3coredev11/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/Mysqli/MysqliStatement.php line 164 Thu, 11 Apr 2024 09:44:59 +0000 [WARNING] request="c78d853f870f9" component="TYPO3.CMS.Core.Error.ErrorHandler": Core: Error handler (BE): PHP Warning: Array to string conversion in /var/www/t3coredev11/typo3/sysext/core/Classes/DataHandling/DataHandler.php line 7530 </pre>