]> granicus.if.org Git - php/commitdiff
- MFB: Fixed bug #45180 ('class::method' works differently than array('class', 'method'))
authorFelipe Pena <felipe@php.net>
Thu, 5 Jun 2008 19:14:25 +0000 (19:14 +0000)
committerFelipe Pena <felipe@php.net>
Thu, 5 Jun 2008 19:14:25 +0000 (19:14 +0000)
Zend/zend_execute_API.c

index 00cc88743b1ba5d185e2dcad0a1f45ec17afa743..b33f63857ae9adb53e6423220e4e7c6bcd01cc0d 100644 (file)
@@ -1001,6 +1001,10 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
                                } else {
                                        EX(function_state).function = zend_std_get_static_method(calling_scope, Z_TYPE_P(fci->function_name), fname, fname_len TSRMLS_CC);
                                }
+                               
+                               if (((zend_internal_function*)EX(function_state).function)->handler == zend_std_call_user_call)  {
+                                       fci->object_pp = &EG(This);
+                               }
 
                                if (check_scope_or_static && EX(function_state).function
                                && !(EX(function_state).function->common.fn_flags & ZEND_ACC_STATIC)