One more time. I hope it's not too obvious that I'm new at this :)
This patch would add a 'Z' flag to zend_parse_parameters*().
Example:
#typdef zvar zval**
zvar a_zvar;
zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "Z", &zvar);
Josh
Index: zend_API.c
===================================================================
RCS file: /usr/src/local/master/php/Zend/zend_API.c,v
retrieving revision 1.1.1.2
diff -u -p -r1.1.1.2 zend_API.c
--- zend_API.c 22 May 2003 18:22:20 -0000 1.1.1.2
+++ zend_API.c 18 Jun 2003 20:31:35 -0000
@@ -422,7 +422,16 @@ static char *zend_parse_arg_impl(zval **
}
}
break;
-
+ case 'Z':
+ {
+ zval ***p=va_arg(*va, zval ***);
+ if(Z_TYPE_PP(arg) == IS_NULL && return_null){
+ *p = NULL;
+ } else {
+ *p = arg;
+ }
+ }
+ break;
default:
return "unknown";
}
@@ -471,7 +480,7 @@ static int zend_parse_va_args(int num_ar
case 's': case 'b':
case 'r': case 'a':
case 'o': case 'O':
- case 'z':
+ case 'z': case 'Z':
max_num_args++;
break;
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php