summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikic@php.net>2015-06-22 15:33:41 +0200
committerNikita Popov <nikic@php.net>2015-06-22 15:33:41 +0200
commit628d4394022d60e519377bb3b2a05722de5472ab (patch)
treee47db8bdc2776af1605c72afcfd84516a7453b74
parent4807b164fd801381ded0f13c3643f56ef427cda9 (diff)
downloadphp-git-628d4394022d60e519377bb3b2a05722de5472ab.tar.gz
Drop superfluous __toString handling code
This is already covered by the cast_object invokation above it. We do not use this kind of fallback in any other casting code anymore.
-rw-r--r--Zend/zend_API.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index f49957a7ff..a1f4ef6618 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -458,16 +458,7 @@ ZEND_API int ZEND_FASTCALL zend_parse_arg_str_weak(zval *arg, zend_string **dest
*dest = Z_STR_P(arg);
return 1;
}
- }
- /* Standard PHP objects */
- if (Z_OBJ_HT_P(arg) == &std_object_handlers || !Z_OBJ_HANDLER_P(arg, cast_object)) {
- SEPARATE_ZVAL_NOREF(arg);
- if (zend_std_cast_object_tostring(arg, arg, IS_STRING) == SUCCESS) {
- *dest = Z_STR_P(arg);
- return 1;
- }
- }
- if (!Z_OBJ_HANDLER_P(arg, cast_object) && Z_OBJ_HANDLER_P(arg, get)) {
+ } else if (Z_OBJ_HANDLER_P(arg, get)) {
zval rv;
zval *z = Z_OBJ_HANDLER_P(arg, get)(arg, &rv);