1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Merge branch 'PHP-8.5'

* PHP-8.5:
  Fix replacement of class signatures when a packagesynopsis element is present
This commit is contained in:
Máté Kocsis
2026-03-20 23:30:35 +01:00

View File

@@ -5779,6 +5779,19 @@ function replaceClassSynopses(
continue;
}
$className = $child->textContent;
if ($classSynopsis->parentElement->nodeName === "packagesynopsis" &&
$classSynopsis->parentElement->firstElementChild->nodeName === "package"
) {
$package = $classSynopsis->parentElement->firstElementChild;
$namespace = $package->textContent;
$className = $namespace . "\\" . $className;
$elementToReplace = $classSynopsis->parentElement;
} else {
$elementToReplace = $classSynopsis;
}
if (!isset($classMap[$className])) {
continue;
}
@@ -5794,7 +5807,7 @@ function replaceClassSynopses(
// Check if there is any change - short circuit if there is not any.
if (replaceAndCompareXmls($doc, $classSynopsis, $newClassSynopsis)) {
if (replaceAndCompareXmls($doc, $elementToReplace, $newClassSynopsis)) {
continue;
}