summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Boerger <helly@php.net>2004-09-29 20:57:07 +0000
committerMarcus Boerger <helly@php.net>2004-09-29 20:57:07 +0000
commitaa247a32762a69e563aa472769cf871860f50c7d (patch)
tree94d6fa3597a0117885e6a317e3a0611b78958534
parent1619178f5ee0d2309054b6a987bafd98dc2d3949 (diff)
downloadphp-git-aa247a32762a69e563aa472769cf871860f50c7d.tar.gz
- MFB (synch correctly not only for one problem)
-rw-r--r--Zend/zend_API.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index b987d2a5b9..0e1ea965d6 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -338,12 +338,13 @@ static char *zend_parse_arg_impl(zval **arg, va_list *va, char **spec TSRMLS_DC)
*pl = Z_STRLEN_PP(arg);
break;
case IS_OBJECT: {
- SEPARATE_ZVAL_IF_NOT_REF(arg);
- if (Z_OBJ_HANDLER_PP(arg, cast_object)
- && Z_OBJ_HANDLER_PP(arg, cast_object)(*arg, *arg, IS_STRING, 0 TSRMLS_CC) == SUCCESS) {
- *pl = Z_STRLEN_PP(arg);
- *p = Z_STRVAL_PP(arg);
- break;
+ if (Z_OBJ_HANDLER_PP(arg, cast_object)) {
+ SEPARATE_ZVAL_IF_NOT_REF(arg);
+ if (Z_OBJ_HANDLER_PP(arg, cast_object)(*arg, *arg, IS_STRING, 0 TSRMLS_CC) == SUCCESS) {
+ *pl = Z_STRLEN_PP(arg);
+ *p = Z_STRVAL_PP(arg);
+ break;
+ }
}
}