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
Unknown Object (File)
Tue, Jul 7, 4:02 PM
Unknown Object (File)
Tue, Jul 7, 3:52 PM
Unknown Object (File)
Tue, Jul 7, 2:15 PM
Unknown Object (File)
Sun, Jul 5, 2:47 AM
Unknown Object (File)
Sat, Jul 4, 4:13 AM
Unknown Object (File)
Sat, Jul 4, 4:13 AM
Unknown Object (File)
Fri, Jul 3, 11:38 PM
Unknown Object (File)
Wed, Jul 1, 5:05 AM
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.