From fa87c2d63dea6f7db87c9e87868ebde3dca00758 Mon Sep 17 00:00:00 2001 From: Alexander Opitz Date: Mon, 1 Jun 2015 11:32:48 +0200 Subject: [PATCH] [BUGFIX] Respect _FILE/_STRING in versioning References with _FILE/_STRING as ref_table have special meanings and can't be loaded from database. Resolves: #66572 Releases: master, 6.2 Change-Id: Ibc942c600652a005368e1eab67cbc24f4efb7dde Reviewed-on: http://review.typo3.org/39856 Reviewed-by: Markus Klein Tested-by: Markus Klein Reviewed-by: Wouter Wolters Tested-by: Wouter Wolters --- .../Classes/Dependency/ElementEntity.php | 26 ++++++++++++------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/typo3/sysext/version/Classes/Dependency/ElementEntity.php b/typo3/sysext/version/Classes/Dependency/ElementEntity.php index 4056f3ecf2b..5d09f0216ee 100644 --- a/typo3/sysext/version/Classes/Dependency/ElementEntity.php +++ b/typo3/sysext/version/Classes/Dependency/ElementEntity.php @@ -213,16 +213,24 @@ class ElementEntity { $rows = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'sys_refindex', $where, '', 'sorting'); if (is_array($rows)) { foreach ($rows as $row) { - $arguments = array('table' => $row['ref_table'], 'id' => $row['ref_uid'], 'field' => $row['field'], 'scope' => self::REFERENCES_ChildOf); - $callbackResponse = $this->dependency->executeEventCallback(self::EVENT_CreateChildReference, $this, $arguments); - if ($callbackResponse !== self::RESPONSE_Skip) { - $this->children[] = $this->getDependency()->getFactory()->getReferencedElement( - $row['ref_table'], - $row['ref_uid'], - $row['field'], - array(), - $this->getDependency() + if ($row['ref_table'] !== '_FILE' && $row['ref_table'] !== '_STRING') { + $arguments = array( + 'table' => $row['ref_table'], + 'id' => $row['ref_uid'], + 'field' => $row['field'], + 'scope' => self::REFERENCES_ChildOf ); + + $callbackResponse = $this->dependency->executeEventCallback(self::EVENT_CreateChildReference, $this, $arguments); + if ($callbackResponse !== self::RESPONSE_Skip) { + $this->children[] = $this->getDependency()->getFactory()->getReferencedElement( + $row['ref_table'], + $row['ref_uid'], + $row['field'], + array(), + $this->getDependency() + ); + } } } } -- 2.20.1