diff options
author | Marcus Boerger <helly@php.net> | 2006-01-25 22:03:18 +0000 |
---|---|---|
committer | Marcus Boerger <helly@php.net> | 2006-01-25 22:03:18 +0000 |
commit | 77915bc208da914b657bb7b27a95d6ac3c4db166 (patch) | |
tree | 42768dc010755ef3ae7bfa4b01da27ec3668c183 /Zend/zend_API.c | |
parent | ec605ac2ad50188465a694d9d9280f66f8a37538 (diff) | |
download | php-git-77915bc208da914b657bb7b27a95d6ac3c4db166.tar.gz |
- MFH
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r-- | Zend/zend_API.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c index 30b9c454cf..82223309ed 100644 --- a/Zend/zend_API.c +++ b/Zend/zend_API.c @@ -445,6 +445,21 @@ static char *zend_parse_arg_impl(zval **arg, va_list *va, char **spec TSRMLS_DC) } break; + case 'h': + { + HashTable **p = va_arg(*va, HashTable **); + if (Z_TYPE_PP(arg) != IS_ARRAY) { + if (Z_TYPE_PP(arg) == IS_NULL && return_null) { + *p = NULL; + } else { + return "array"; + } + } else { + *p = Z_ARRVAL_PP(arg); + } + } + break; + case 'o': { zval **p = va_arg(*va, zval **); @@ -545,6 +560,7 @@ static int zend_parse_va_args(int num_args, char *type_spec, va_list *va, int fl case 'r': case 'a': case 'o': case 'O': case 'z': case 'Z': + case 'h': max_num_args++; break; |