1818use function file_exists ;
1919use function file_get_contents ;
2020use function in_array ;
21+ use function is_array ;
22+ use function is_dir ;
2123use function preg_replace ;
2224use function scandir ;
2325use function sprintf ;
@@ -38,25 +40,28 @@ public function __invoke(Package $package, TargetPlatform $targetPlatform, Outpu
3840 }
3941
4042 $ additionalIniDirectory = $ targetPlatform ->phpBinaryPath ->additionalIniDirectory ();
41- if ($ additionalIniDirectory !== null ) {
42- $ allIniFiles = array_merge (
43- array_map (
44- static function (string $ path ) use ($ additionalIniDirectory ): string {
45- return $ additionalIniDirectory . DIRECTORY_SEPARATOR . $ path ;
46- },
47- array_filter (
48- scandir ($ additionalIniDirectory ),
49- static function (string $ path ) use ($ additionalIniDirectory ): bool {
50- if (in_array ($ path , ['. ' , '.. ' ])) {
51- return false ;
52- }
53-
54- return file_exists ($ additionalIniDirectory . DIRECTORY_SEPARATOR . $ path );
43+ if ($ additionalIniDirectory !== null && file_exists ($ additionalIniDirectory ) && is_dir ($ additionalIniDirectory )) {
44+ $ filenames = scandir ($ additionalIniDirectory );
45+ if (is_array ($ filenames )) {
46+ $ allIniFiles = array_merge (
47+ array_map (
48+ static function (string $ path ) use ($ additionalIniDirectory ): string {
49+ return $ additionalIniDirectory . DIRECTORY_SEPARATOR . $ path ;
5550 },
51+ array_filter (
52+ $ filenames ,
53+ static function (string $ path ) use ($ additionalIniDirectory ): bool {
54+ if (in_array ($ path , ['. ' , '.. ' ])) {
55+ return false ;
56+ }
57+
58+ return file_exists ($ additionalIniDirectory . DIRECTORY_SEPARATOR . $ path );
59+ },
60+ ),
5661 ),
57- ) ,
58- $ allIniFiles ,
59- );
62+ $ allIniFiles ,
63+ );
64+ }
6065 }
6166
6267 // Make sure all symlinks are resolved
0 commit comments