File tree Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Original file line number Diff line number Diff line change @@ -596,6 +596,21 @@ static inline int ct_eval_func_call(
596
596
&& ((num_args == 1 && Z_TYPE_P (args [0 ]) == IS_ARRAY )
597
597
|| (num_args == 2 && Z_TYPE_P (args [0 ]) == IS_STRING && Z_TYPE_P (args [1 ]) == IS_ARRAY )
598
598
|| (num_args == 2 && Z_TYPE_P (args [0 ]) == IS_ARRAY && Z_TYPE_P (args [1 ]) == IS_STRING ))) {
599
+ zval * entry ;
600
+
601
+ if (Z_TYPE_P (args [0 ]) == IS_ARRAY ) {
602
+ ZEND_HASH_FOREACH_VAL (Z_ARRVAL_P (args [0 ]), entry ) {
603
+ if (Z_TYPE_P (entry ) > IS_STRING ) {
604
+ return FAILURE ;
605
+ }
606
+ } ZEND_HASH_FOREACH_END ();
607
+ } else {
608
+ ZEND_HASH_FOREACH_VAL (Z_ARRVAL_P (args [1 ]), entry ) {
609
+ if (Z_TYPE_P (entry ) > IS_STRING ) {
610
+ return FAILURE ;
611
+ }
612
+ } ZEND_HASH_FOREACH_END ();
613
+ }
599
614
/* pass */
600
615
} else {
601
616
return FAILURE ;
You can’t perform that action at this time.
0 commit comments