From 93769b9f614ea850f36eabe3403eb4118f9893ed Mon Sep 17 00:00:00 2001
From: Sascha Egerer <sascha.egerer@dkd.de>
Date: Wed, 7 Aug 2013 21:27:08 +0200
Subject: [PATCH] [BUGFIX] Create workspace placeholder with processed field
 content

The field content that is used for the workspace placeholder records
is not processed through the field configuration.

This produces annoying error messages to the user.

Resolves: #17551
Releases: 6.2, 6.1, 6.0

Change-Id: I79823cc2bd0d26a03b0850045c08999ebdbc1a9b
Reviewed-on: https://review.typo3.org/22940
Reviewed-by: Anja Leichsenring
Tested-by: Anja Leichsenring
---
 typo3/sysext/core/Classes/DataHandling/DataHandler.php | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/typo3/sysext/core/Classes/DataHandling/DataHandler.php b/typo3/sysext/core/Classes/DataHandling/DataHandler.php
index 9c3b9880387f..2e38d75108b7 100644
--- a/typo3/sysext/core/Classes/DataHandling/DataHandler.php
+++ b/typo3/sysext/core/Classes/DataHandling/DataHandler.php
@@ -1138,11 +1138,12 @@ class DataHandler {
 							if ($status == 'new' && $table == 'pages' && is_array($TSConfig['permissions.'])) {
 								$fieldArray = $this->setTSconfigPermissions($fieldArray, $TSConfig['permissions.']);
 							}
+							// Processing of all fields in incomingFieldArray and setting them in $fieldArray
+							$fieldArray = $this->fillInFieldArray($table, $id, $fieldArray, $incomingFieldArray, $theRealPid, $status, $tscPID);
 							if ($createNewVersion) {
+								// create a placeholder array with already processed field content
 								$newVersion_placeholderFieldArray = $fieldArray;
 							}
-							// Processing of all fields in incomingFieldArray and setting them in $fieldArray
-							$fieldArray = $this->fillInFieldArray($table, $id, $fieldArray, $incomingFieldArray, $theRealPid, $status, $tscPID);
 							// NOTICE! All manipulation beyond this point bypasses both "excludeFields" AND possible "MM" relations / file uploads to field!
 							// Forcing some values unto field array:
 							// NOTICE: This overriding is potentially dangerous; permissions per field is not checked!!!
-- 
GitLab