diff options
| author | Marcus Boerger <helly@php.net> | 2003-11-27 19:24:38 +0000 |
|---|---|---|
| committer | Marcus Boerger <helly@php.net> | 2003-11-27 19:24:38 +0000 |
| commit | 1586f714fe5e05399a0373b7c9dbec4a36ee9a41 (patch) | |
| tree | bf06213cb656848d52361cc44986f92f379859fa /Zend/zend_API.c | |
| parent | 87577dd8810e033678f44ef89236d9e8637263a7 (diff) | |
| download | php-git-1586f714fe5e05399a0373b7c9dbec4a36ee9a41.tar.gz | |
Convert objects to string if string is required by newer parameter parsing
since we do this for older parameter parsing does so too.
Diffstat (limited to 'Zend/zend_API.c')
| -rw-r--r-- | Zend/zend_API.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index 7352bea999..0228b9ee78 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -316,8 +316,15 @@ static char *zend_parse_arg_impl(zval **arg, va_list *va, char **spec TSRMLS_DC) *pl = Z_STRLEN_PP(arg); break; + case IS_OBJECT: { + 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; + } + } + case IS_ARRAY: - case IS_OBJECT: case IS_RESOURCE: default: return "string"; |
