Bug #90241
closedArrayUtility "array_key_exists() expects parameter 2 to be array"
100%
Description
Inside \TYPO3\CMS\Core\Utility\ArrayUtility::getValueByPath() no type check is executed when working with array.
This can lead to the PHP warning "array_key_exists() expects parameter 2 to be array".
Example call causing the warning:
\TYPO3\CMS\Core\Utility\ArrayUtility::getValueByPath(
[
'foo' => [
'baz' => 42
],
],
'foo/baz/baz'
);
as during 2nd baz, the "array" is an integer.
The expected behaviour would be throw new MissingArrayPathException('Segment ' . $segment . ' of path ' . implode($delimiter, $path) . ' does not exist in array', 1341397869);, just like when the segment does not exist. As it does not exist.
Updated by Gerrit Code Review almost 5 years ago
- Status changed from New to Under Review
Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63066
Updated by Gerrit Code Review almost 5 years ago
Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63066
Updated by Gerrit Code Review almost 5 years ago
Patch set 1 for branch 9.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/62983
Updated by Gerrit Code Review almost 5 years ago
Patch set 1 for branch TYPO3_8-7 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/62984
Updated by Daniel Siepmann almost 5 years ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset ae685ef90d6b8231be930808718048d16f44eadb.
Updated by Netresearch DTT GmbH over 3 years ago
- Related to Bug #94378: PHP Warning: array_key_exists() expects parameter 2 to be array, null given in /var/www/public/typo3/sysext/core/Classes/Utility/ArrayUtility.php line 297 added