]> granicus.if.org Git - php/commitdiff
execute_data->return_value should be initialized when call internal constructors
authorDmitry Stogov <dmitry@zend.com>
Thu, 31 Jul 2014 06:51:49 +0000 (10:51 +0400)
committerDmitry Stogov <dmitry@zend.com>
Thu, 31 Jul 2014 06:51:49 +0000 (10:51 +0400)
Zend/zend_execute_API.c

index 308d54b31d7282d56a4a762cc05378a5648b9c88..9e9bd841a032805688a0c45a45514a06a015b60e 100644 (file)
@@ -859,6 +859,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
                        EG(scope) = func->common.scope;
                }
                call->prev_execute_data = EG(current_execute_data);
+               call->return_value = NULL; /* this is not a constructor call */
                EG(current_execute_data) = call;
                if (EXPECTED(zend_execute_internal == NULL)) {
                        /* saves one function call if zend_execute_internal is not used */