]> granicus.if.org Git - php/commitdiff
Merge branch 'PHP-7.2' into PHP-7.3
authorNikita Popov <nikita.ppv@gmail.com>
Fri, 22 Mar 2019 11:40:21 +0000 (12:40 +0100)
committerNikita Popov <nikita.ppv@gmail.com>
Fri, 22 Mar 2019 11:41:02 +0000 (12:41 +0100)
1  2 
NEWS
ext/reflection/php_reflection.c

diff --cc NEWS
index e205855355325efecc73d39d5d005e1dc6cf7666,dbce1af2995dba7707a5035b4f7c61c56e00e32c..499a43581d05bdd25b383cf1a6802b8b5b3f3913
--- 1/NEWS
--- 2/NEWS
+++ b/NEWS
@@@ -1,8 -1,11 +1,11 @@@
  PHP                                                                        NEWS
  |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 -?? ??? 2019, PHP 7.2.18
 +?? ??? ????, PHP 7.3.5
  
 -04 Apr 2019, PHP 7.2.17
+ - Reflection:
+   . Fixed bug #77772 (ReflectionClass::getMethods(null) doesn't work). (Nikita)
 +28 Mar 2019, PHP 7.3.4
  
  - Core:
    . Fixed bug #77738 (Nullptr deref in zend_compile_expr). (Laruence)
index 748f5b3f08dbffefcab5761d85d80f066044b518,80e508c1750b214a525d015c2925de1cced1302b..2fa073cbeab5fc50357737e9bdf4b9585e3d057e
@@@ -4191,9 -4245,11 +4191,10 @@@ ZEND_METHOD(reflection_class, getMethod
  {
        reflection_object *intern;
        zend_class_entry *ce;
-       zend_long filter = ZEND_ACC_PPP_MASK | ZEND_ACC_ABSTRACT | ZEND_ACC_FINAL | ZEND_ACC_STATIC;
+       zend_long filter = 0;
+       zend_bool filter_is_null = 1;
  
-       if (zend_parse_parameters(ZEND_NUM_ARGS(), "|l", &filter) == FAILURE) {
 -      METHOD_NOTSTATIC(reflection_class_ptr);
+       if (zend_parse_parameters(ZEND_NUM_ARGS(), "|l!", &filter, &filter_is_null) == FAILURE) {
                return;
        }
  
@@@ -4377,11 -4440,17 +4382,16 @@@ ZEND_METHOD(reflection_class, getProper
  {
        reflection_object *intern;
        zend_class_entry *ce;
-       zend_long filter = ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC;
+       zend_long filter = 0;
+       zend_bool filter_is_null = 1;
  
-       if (zend_parse_parameters(ZEND_NUM_ARGS(), "|l", &filter) == FAILURE) {
 -      METHOD_NOTSTATIC(reflection_class_ptr);
+       if (zend_parse_parameters(ZEND_NUM_ARGS(), "|l!", &filter, &filter_is_null) == FAILURE) {
                return;
        }
+       
+       if (filter_is_null) {
+               filter = ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC;
+       }
  
        GET_REFLECTION_OBJECT_PTR(ce);