diff --git a/typo3/sysext/backend/Classes/Form/InlineStackProcessor.php b/typo3/sysext/backend/Classes/Form/InlineStackProcessor.php index 790f93e548828e11f0dd2ea2ce664299344613b9..babd40f0e009ac2f71a5426a373c3ecb9a0601b5 100644 --- a/typo3/sysext/backend/Classes/Form/InlineStackProcessor.php +++ b/typo3/sysext/backend/Classes/Form/InlineStackProcessor.php @@ -221,11 +221,11 @@ class InlineStackProcessor protected function calculateStructureLevel($level) { $result = false; - $inlineStructureCount = count($this->inlineStructure['stable']); + $structureCount = $this->getStructureDepth(); if ($level < 0) { - $level = $inlineStructureCount + $level; + $level = $structureCount + $level; } - if ($level >= 0 && $level < $inlineStructureCount) { + if ($level >= 0 && $level < $structureCount) { $result = $level; } return $result; @@ -259,6 +259,9 @@ class InlineStackProcessor */ public function getStructureDepth() { + if (!isset($this->inlineStructure['stable']) || !is_array($this->inlineStructure['stable'])) { + return 0; + } return count($this->inlineStructure['stable']); }