Page MenuHomePhabricator

In "array_mergev()", guarantee the "call_user_func_array()" parameter list is a natrual list
ClosedPublic

Authored by epriestley on Feb 8 2021, 6:17 PM.
Tags
None
Referenced Files
F18791324: D21551.id51297.diff
Thu, Oct 16, 9:16 AM
F18773324: D21551.diff
Thu, Oct 9, 9:02 AM
F18578076: D21551.id.diff
Sep 10 2025, 8:55 PM
F18571578: D21551.id51298.diff
Sep 10 2025, 5:10 AM
F18571577: D21551.id51297.diff
Sep 10 2025, 5:10 AM
F18287794: D21551.id51297.diff
Aug 23 2025, 7:52 AM
F18160484: D21551.diff
Aug 15 2025, 2:01 AM
F18101351: D21551.id.diff
Aug 9 2025, 12:28 PM
Subscribers
None

Details

Summary

Ref T13588. The behavior of "call_user_func_array()" has changed in PHP8, and the function now attempts to use array keys as argument names.

This always fails when calling "array_merge()" (which does not accept named parameters), and may cause misbehavior in the general case.

Guarantee the argument is a natural list (with keys "0", "1", "2", ...).

Test Plan

Diff Detail

Repository
rARC Arcanist
Branch
merge1
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 25108
Build 34648: Run Core Tests
Build 34647: arc lint + arc unit

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Feb 8 2021, 6:18 PM
epriestley requested review of this revision.
This revision was automatically updated to reflect the committed changes.