From ffd36e0fc8c91c415a6e10f4f06f39c2508bfe64 Mon Sep 17 00:00:00 2001 From: Aaron Piotrowski Date: Mon, 29 Jun 2015 20:41:08 -0500 Subject: [PATCH] Throw Error on dynamic call to instance method when called statically --- Zend/zend_vm_def.h | 1 + Zend/zend_vm_execute.h | 3 +++ 2 files changed, 4 insertions(+) diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index a153d2a12d..7c7948e132 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -3237,6 +3237,7 @@ ZEND_VM_C_LABEL(try_function_name): lcname = zend_string_init(Z_STRVAL_P(function_name), cname_length, 0); + object = NULL; called_scope = zend_fetch_class_by_name(lcname, NULL, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); if (UNEXPECTED(called_scope == NULL)) { zend_string_release(lcname); diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index 64fa70dd8a..ffe90f4e22 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -1944,6 +1944,7 @@ try_function_name: lcname = zend_string_init(Z_STRVAL_P(function_name), cname_length, 0); + object = NULL; called_scope = zend_fetch_class_by_name(lcname, NULL, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); if (UNEXPECTED(called_scope == NULL)) { zend_string_release(lcname); @@ -2396,6 +2397,7 @@ try_function_name: lcname = zend_string_init(Z_STRVAL_P(function_name), cname_length, 0); + object = NULL; called_scope = zend_fetch_class_by_name(lcname, NULL, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); if (UNEXPECTED(called_scope == NULL)) { zend_string_release(lcname); @@ -2649,6 +2651,7 @@ try_function_name: lcname = zend_string_init(Z_STRVAL_P(function_name), cname_length, 0); + object = NULL; called_scope = zend_fetch_class_by_name(lcname, NULL, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); if (UNEXPECTED(called_scope == NULL)) { zend_string_release(lcname); -- 2.50.1