Skip to content

Commit f52f471

Browse files
committed
Fix F1 type information in OPCache
Closes GH-5025
1 parent d59bc80 commit f52f471

File tree

1 file changed

+63
-65
lines changed

1 file changed

+63
-65
lines changed

ext/opcache/Optimizer/zend_func_info.c

Lines changed: 63 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ static const func_info_t func_infos[] = {
106106
F1("get_declared_classes", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING),
107107
F1("get_declared_interfaces", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING),
108108
F1("get_defined_functions", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ARRAY),
109-
F1("get_defined_vars", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY | MAY_BE_ARRAY_OF_REF),
109+
F1("get_defined_vars", MAY_BE_NULL | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY | MAY_BE_ARRAY_OF_REF),
110110
F1("get_resource_type", MAY_BE_STRING),
111111
F1("get_defined_constants", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_DOUBLE | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_RESOURCE | MAY_BE_ARRAY_OF_ARRAY),
112112
F1("debug_backtrace", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_ARRAY),
@@ -196,11 +196,11 @@ static const func_info_t func_infos[] = {
196196
F1("str_getcsv", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_STRING),
197197
FN("str_pad", MAY_BE_STRING),
198198
F1("strchr", MAY_BE_FALSE | MAY_BE_STRING),
199-
F1("sprintf", MAY_BE_FALSE | MAY_BE_STRING),
200-
F1("vsprintf", MAY_BE_FALSE | MAY_BE_STRING),
199+
F1("sprintf", MAY_BE_STRING),
200+
F1("vsprintf", MAY_BE_STRING),
201201
F1("sscanf", MAY_BE_NULL | MAY_BE_LONG | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_ANY),
202202
F1("fscanf", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_LONG | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_ANY),
203-
F1("parse_url", MAY_BE_FALSE | MAY_BE_LONG | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_LONG),
203+
F1("parse_url", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_LONG | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_LONG),
204204
F1("urlencode", MAY_BE_STRING),
205205
F1("urldecode", MAY_BE_STRING),
206206
F1("rawurlencode", MAY_BE_STRING),
@@ -228,7 +228,7 @@ static const func_info_t func_infos[] = {
228228
#endif
229229
F1("base64_decode", MAY_BE_FALSE | MAY_BE_STRING),
230230
F1("base64_encode", MAY_BE_STRING),
231-
F1("password_hash", MAY_BE_NULL | MAY_BE_STRING),
231+
F1("password_hash", MAY_BE_STRING),
232232
F1("password_get_info", MAY_BE_NULL | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY),
233233
F1("convert_uuencode", MAY_BE_FALSE | MAY_BE_STRING),
234234
F1("convert_uudecode", MAY_BE_FALSE | MAY_BE_STRING),
@@ -273,14 +273,14 @@ static const func_info_t func_infos[] = {
273273
FN("call_user_method_array", UNKNOWN_INFO),
274274
FN("forward_static_call", UNKNOWN_INFO),
275275
FN("forward_static_call_array", UNKNOWN_INFO),
276-
F1("serialize", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
276+
F1("serialize", MAY_BE_STRING),
277277
FN("unserialize", UNKNOWN_INFO),
278278
F1("var_export", MAY_BE_NULL | MAY_BE_STRING),
279279
F1("print_r", MAY_BE_TRUE | MAY_BE_STRING),
280280
F0("register_shutdown_function", MAY_BE_NULL | MAY_BE_FALSE),
281-
F1("highlight_file", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
282-
F1("show_source", MAY_BE_FALSE | MAY_BE_STRING),
283-
F1("highlight_string", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
281+
F1("highlight_file", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
282+
F1("show_source", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
283+
F1("highlight_string", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
284284
F1("php_strip_whitespace", MAY_BE_STRING),
285285
FN("ini_get", MAY_BE_FALSE | MAY_BE_STRING),
286286
F1("ini_get_all", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY),
@@ -317,7 +317,7 @@ static const func_info_t func_infos[] = {
317317
F1("tmpfile", MAY_BE_FALSE | MAY_BE_RESOURCE),
318318
F1("file", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING),
319319
F1("file_get_contents", MAY_BE_FALSE | MAY_BE_STRING),
320-
F1("stream_context_create", MAY_BE_FALSE | MAY_BE_RESOURCE),
320+
F1("stream_context_create", MAY_BE_RESOURCE),
321321
F0("stream_context_set_params", MAY_BE_FALSE | MAY_BE_TRUE),
322322
F1("stream_context_get_params", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY),
323323
FN("stream_context_get_options", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY),
@@ -444,8 +444,6 @@ static const func_info_t func_infos[] = {
444444
F1("str_rot13", MAY_BE_STRING),
445445
F1("stream_get_filters", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING),
446446
F1("stream_bucket_make_writeable", MAY_BE_NULL | MAY_BE_OBJECT),
447-
F1("stream_bucket_prepend", MAY_BE_FALSE | MAY_BE_OBJECT),
448-
F1("stream_bucket_append", MAY_BE_FALSE | MAY_BE_OBJECT),
449447
F1("stream_bucket_new", MAY_BE_FALSE | MAY_BE_OBJECT),
450448
F1("sys_get_temp_dir", MAY_BE_STRING),
451449

@@ -599,8 +597,8 @@ static const func_info_t func_infos[] = {
599597
F0("mysqli_warning_count", MAY_BE_NULL | MAY_BE_LONG),
600598

601599
/* ext/curl */
602-
F1("curl_init", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_RESOURCE),
603-
F1("curl_copy_handle", MAY_BE_NULL | MAY_BE_RESOURCE),
600+
F1("curl_init", MAY_BE_FALSE | MAY_BE_RESOURCE),
601+
F1("curl_copy_handle", MAY_BE_FALSE | MAY_BE_RESOURCE),
604602
F1("curl_version", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY),
605603
FN("curl_exec", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
606604
F1("curl_getinfo", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING | MAY_BE_LONG | MAY_BE_DOUBLE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_ANY),
@@ -621,7 +619,7 @@ static const func_info_t func_infos[] = {
621619
F1("mb_strtolower", MAY_BE_FALSE | MAY_BE_STRING),
622620
F1("mb_language", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
623621
F1("mb_internal_encoding", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
624-
F1("mb_http_input", MAY_BE_FALSE | MAY_BE_STRING),
622+
F1("mb_http_input", MAY_BE_FALSE | MAY_BE_STRING| MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING),
625623
F1("mb_http_output", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING),
626624
F1("mb_detect_order", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING),
627625
F1("mb_substitute_character", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_LONG | MAY_BE_STRING),
@@ -708,41 +706,41 @@ static const func_info_t func_infos[] = {
708706
F1("hash_pbkdf2", MAY_BE_STRING),
709707
F1("mhash_keygen_s2k", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
710708
F1("mhash_get_hash_name", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
711-
F1("mhash", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
709+
F1("mhash", MAY_BE_FALSE | MAY_BE_FALSE | MAY_BE_STRING),
712710

713711
/* ext/sodium */
714-
F1("sodium_crypto_shorthash", MAY_BE_NULL | MAY_BE_STRING),
715-
F1("sodium_crypto_secretbox", MAY_BE_NULL | MAY_BE_STRING),
716-
F1("sodium_crypto_secretbox_open", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
717-
F1("sodium_crypto_generichash", MAY_BE_NULL | MAY_BE_STRING),
718-
F1("sodium_crypto_generichash_init", MAY_BE_NULL | MAY_BE_STRING),
712+
F1("sodium_crypto_shorthash", MAY_BE_STRING),
713+
F1("sodium_crypto_secretbox", MAY_BE_STRING),
714+
F1("sodium_crypto_secretbox_open", MAY_BE_FALSE | MAY_BE_STRING),
715+
F1("sodium_crypto_generichash", MAY_BE_STRING),
716+
F1("sodium_crypto_generichash_init", MAY_BE_STRING),
719717
F0("sodium_crypto_generichash_update", MAY_BE_TRUE),
720-
F1("sodium_crypto_generichash_final", MAY_BE_NULL | MAY_BE_STRING),
718+
F1("sodium_crypto_generichash_final", MAY_BE_STRING),
721719
F1("sodium_crypto_box_keypair", MAY_BE_STRING),
722-
F1("sodium_crypto_box_seed_keypair", MAY_BE_NULL | MAY_BE_STRING),
723-
F1("sodium_crypto_box_secretkey", MAY_BE_NULL | MAY_BE_STRING),
724-
F1("sodium_crypto_box_publickey", MAY_BE_NULL | MAY_BE_STRING),
725-
F1("sodium_crypto_box", MAY_BE_NULL | MAY_BE_STRING),
726-
F1("sodium_crypto_box_open", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
727-
F1("sodium_crypto_box_seal", MAY_BE_NULL | MAY_BE_STRING),
728-
F1("sodium_crypto_box_seal_open", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
720+
F1("sodium_crypto_box_seed_keypair", MAY_BE_STRING),
721+
F1("sodium_crypto_box_secretkey", MAY_BE_STRING),
722+
F1("sodium_crypto_box_publickey", MAY_BE_STRING),
723+
F1("sodium_crypto_box", MAY_BE_STRING),
724+
F1("sodium_crypto_box_open", MAY_BE_FALSE | MAY_BE_STRING),
725+
F1("sodium_crypto_box_seal", MAY_BE_STRING),
726+
F1("sodium_crypto_box_seal_open", MAY_BE_FALSE | MAY_BE_STRING),
729727
F1("sodium_crypto_sign_keypair", MAY_BE_STRING),
730-
F1("sodium_crypto_sign_seed_keypair", MAY_BE_NULL | MAY_BE_STRING),
731-
F1("sodium_crypto_sign_secretkey", MAY_BE_NULL | MAY_BE_STRING),
732-
F1("sodium_crypto_sign_publickey", MAY_BE_NULL | MAY_BE_STRING),
733-
F1("sodium_crypto_sign", MAY_BE_NULL | MAY_BE_STRING),
734-
F1("sodium_crypto_sign_open", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
735-
F1("sodium_crypto_sign_detached", MAY_BE_NULL | MAY_BE_STRING),
736-
F1("sodium_crypto_stream", MAY_BE_NULL | MAY_BE_STRING),
737-
F1("sodium_crypto_stream_xor", MAY_BE_NULL | MAY_BE_STRING),
738-
F1("sodium_crypto_pwhash", MAY_BE_NULL | MAY_BE_STRING),
739-
F1("sodium_crypto_pwhash_str", MAY_BE_NULL | MAY_BE_STRING),
740-
F1("sodium_crypto_aead_aes256gcm_encrypt", MAY_BE_NULL | MAY_BE_STRING),
741-
F1("sodium_crypto_aead_aes256gcm_decrypt", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
742-
F1("sodium_bin2hex", MAY_BE_NULL | MAY_BE_STRING),
743-
F1("sodium_hex2bin", MAY_BE_NULL | MAY_BE_STRING),
744-
F1("sodium_crypto_scalarmult", MAY_BE_NULL | MAY_BE_STRING),
745-
F1("sodium_crypto_kx_seed_keypair", MAY_BE_NULL | MAY_BE_STRING),
728+
F1("sodium_crypto_sign_seed_keypair", MAY_BE_STRING),
729+
F1("sodium_crypto_sign_secretkey", MAY_BE_STRING),
730+
F1("sodium_crypto_sign_publickey", MAY_BE_STRING),
731+
F1("sodium_crypto_sign", MAY_BE_STRING),
732+
F1("sodium_crypto_sign_open", MAY_BE_FALSE | MAY_BE_STRING),
733+
F1("sodium_crypto_sign_detached", MAY_BE_STRING),
734+
F1("sodium_crypto_stream", MAY_BE_STRING),
735+
F1("sodium_crypto_stream_xor", MAY_BE_STRING),
736+
F1("sodium_crypto_pwhash", MAY_BE_STRING),
737+
F1("sodium_crypto_pwhash_str", MAY_BE_STRING),
738+
F1("sodium_crypto_aead_aes256gcm_encrypt", MAY_BE_STRING),
739+
F1("sodium_crypto_aead_aes256gcm_decrypt", MAY_BE_FALSE | MAY_BE_STRING),
740+
F1("sodium_bin2hex", MAY_BE_STRING),
741+
F1("sodium_hex2bin", MAY_BE_STRING),
742+
F1("sodium_crypto_scalarmult", MAY_BE_STRING),
743+
F1("sodium_crypto_kx_seed_keypair", MAY_BE_STRING),
746744
F1("sodium_crypto_kx_keypair", MAY_BE_STRING),
747745
F1("sodium_crypto_kx_secretkey", MAY_BE_NULL | MAY_BE_STRING),
748746
F1("sodium_crypto_kx_publickey", MAY_BE_NULL | MAY_BE_STRING),
@@ -756,23 +754,23 @@ static const func_info_t func_infos[] = {
756754
F1("sodium_crypto_secretbox_keygen", MAY_BE_STRING),
757755
F1("sodium_crypto_shorthash_keygen", MAY_BE_STRING),
758756
F1("sodium_crypto_stream_keygen", MAY_BE_STRING),
759-
F1("sodium_crypto_kdf_derive_from_key", MAY_BE_NULL | MAY_BE_STRING),
760-
F1("sodium_pad", MAY_BE_NULL | MAY_BE_STRING),
761-
F1("sodium_unpad", MAY_BE_NULL | MAY_BE_STRING),
757+
F1("sodium_crypto_kdf_derive_from_key", MAY_BE_STRING),
758+
F1("sodium_pad", MAY_BE_STRING),
759+
F1("sodium_unpad", MAY_BE_STRING),
762760

763-
F1("sodium_crypto_box_keypair_from_secretkey_and_publickey", MAY_BE_NULL | MAY_BE_STRING),
764-
F1("sodium_crypto_box_publickey_from_secretkey", MAY_BE_NULL | MAY_BE_STRING),
765-
F1("sodium_crypto_sign_keypair_from_secretkey_and_publickey", MAY_BE_NULL | MAY_BE_STRING),
766-
F1("sodium_crypto_sign_publickey_from_secretkey", MAY_BE_NULL | MAY_BE_STRING),
767-
F1("sodium_crypto_pwhash_scryptsalsa208sha256", MAY_BE_NULL | MAY_BE_STRING),
768-
F1("sodium_crypto_pwhash_scryptsalsa208sha256_str", MAY_BE_NULL | MAY_BE_STRING),
769-
F1("sodium_crypto_sign_ed25519_sk_to_curve25519", MAY_BE_NULL | MAY_BE_STRING),
770-
F1("sodium_crypto_sign_ed25519_pk_to_curve25519", MAY_BE_NULL | MAY_BE_STRING),
771-
F1("sodium_crypto_aead_chacha20poly1305_encrypt", MAY_BE_NULL | MAY_BE_STRING),
772-
F1("sodium_crypto_aead_chacha20poly1305_decrypt", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
773-
F1("sodium_crypto_aead_chacha20poly1305_ietf_encrypt", MAY_BE_NULL | MAY_BE_STRING),
774-
F1("sodium_crypto_aead_chacha20poly1305_ietf_decrypt", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
775-
F1("sodium_crypto_aead_xchacha20poly1305_ietf_encrypt", MAY_BE_NULL | MAY_BE_STRING),
761+
F1("sodium_crypto_box_keypair_from_secretkey_and_publickey", MAY_BE_STRING),
762+
F1("sodium_crypto_box_publickey_from_secretkey", MAY_BE_STRING),
763+
F1("sodium_crypto_sign_keypair_from_secretkey_and_publickey", MAY_BE_STRING),
764+
F1("sodium_crypto_sign_publickey_from_secretkey", MAY_BE_STRING),
765+
F1("sodium_crypto_pwhash_scryptsalsa208sha256", MAY_BE_STRING),
766+
F1("sodium_crypto_pwhash_scryptsalsa208sha256_str", MAY_BE_STRING),
767+
F1("sodium_crypto_sign_ed25519_sk_to_curve25519", MAY_BE_STRING),
768+
F1("sodium_crypto_sign_ed25519_pk_to_curve25519", MAY_BE_STRING),
769+
F1("sodium_crypto_aead_chacha20poly1305_encrypt", MAY_BE_STRING),
770+
F1("sodium_crypto_aead_chacha20poly1305_decrypt", MAY_BE_FALSE | MAY_BE_STRING),
771+
F1("sodium_crypto_aead_chacha20poly1305_ietf_encrypt", MAY_BE_STRING),
772+
F1("sodium_crypto_aead_chacha20poly1305_ietf_decrypt", MAY_BE_FALSE | MAY_BE_STRING),
773+
F1("sodium_crypto_aead_xchacha20poly1305_ietf_encrypt", MAY_BE_STRING),
776774
F1("sodium_crypto_aead_xchacha20poly1305_ietf_decrypt", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING),
777775
F1("sodium_crypto_aead_chacha20poly1305_keygen", MAY_BE_STRING),
778776
F1("sodium_crypto_aead_chacha20poly1305_ietf_keygen", MAY_BE_STRING),
@@ -957,16 +955,16 @@ static const func_info_t func_infos[] = {
957955
F1("imagecolorsforindex", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_LONG),
958956
F1("imagegetclip", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
959957
F1("imageftbbox", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
960-
F1("imagefttext", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
961-
F1("imagettfbbox", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
962-
F1("imagettftext", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
958+
F1("imagefttext", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
959+
F1("imagettfbbox", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
960+
F1("imagettftext", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
963961
F1("imagecrop", MAY_BE_FALSE | MAY_BE_OBJECT),
964962
F1("imagecropauto", MAY_BE_FALSE | MAY_BE_OBJECT),
965963
F1("imagescale", MAY_BE_FALSE | MAY_BE_OBJECT),
966964
F1("imageaffine", MAY_BE_FALSE | MAY_BE_OBJECT),
967965
F1("imageaffinematrixget", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_DOUBLE),
968966
F1("imageaffinematrixconcat", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_DOUBLE),
969-
F1("imageresolution", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
967+
F1("imageresolution", MAY_BE_TRUE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG),
970968

971969
/* ext/spl */
972970
F1("class_implements", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_STRING),

0 commit comments

Comments
 (0)