Improved parameter handling

This commit is contained in:
Ilia Alshanetsky 2009-01-05 16:24:14 +00:00
parent cc42ff9fa2
commit 9220a5eda2
4 changed files with 12 additions and 16 deletions

View file

@ -180,18 +180,17 @@ PHP_FUNCTION(apache_child_terminate)
Get and set Apache request notes */
PHP_FUNCTION(apache_note)
{
char *note_name, *note_val;
char *note_name, *note_val = NULL;
int note_name_len, note_val_len;
char *old_val;
int arg_count = ZEND_NUM_ARGS();
if (zend_parse_parameters(arg_count TSRMLS_CC, "s|s", &note_name, &note_name_len, &note_val, &note_val_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|s", &note_name, &note_name_len, &note_val, &note_val_len) == FAILURE) {
return;
}
old_val = (char *) table_get(((request_rec *)SG(server_context))->notes, note_name);
if (arg_count == 2) {
if (note_val) {
table_set(((request_rec *)SG(server_context))->notes, note_name, note_val);
}

View file

@ -193,12 +193,11 @@ PHP_FUNCTION(apache_response_headers)
PHP_FUNCTION(apache_note)
{
php_struct *ctx;
char *note_name, *note_val;
char *note_name, *note_val = NULL;
int note_name_len, note_val_len;
char *old_note_val=NULL;
int arg_count = ZEND_NUM_ARGS();
if (zend_parse_parameters(arg_count TSRMLS_CC, "s|s", &note_name, &note_name_len, &note_val, &note_val_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|s", &note_name, &note_name_len, &note_val, &note_val_len) == FAILURE) {
return;
}
@ -206,7 +205,7 @@ PHP_FUNCTION(apache_note)
old_note_val = (char *) apr_table_get(ctx->r->notes, note_name);
if (arg_count == 2) {
if (note_val) {
apr_table_set(ctx->r->notes, note_name, note_val);
}

View file

@ -221,12 +221,11 @@ PHP_FUNCTION(apache_response_headers)
PHP_FUNCTION(apache_note)
{
php_struct *ctx;
char *note_name, *note_val;
char *note_name, *note_val = NULL;
int note_name_len, note_val_len;
char *old_note_val=NULL;
int arg_count = ZEND_NUM_ARGS();
if (zend_parse_parameters(arg_count TSRMLS_CC, "s|s", &note_name, &note_name_len, &note_val, &note_val_len) == FAILURE) {
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|s", &note_name, &note_name_len, &note_val, &note_val_len) == FAILURE) {
return;
}
@ -234,7 +233,7 @@ PHP_FUNCTION(apache_note)
old_note_val = (char *) apr_table_get(ctx->r->notes, note_name);
if (arg_count == 2) {
if (note_val) {
apr_table_set(ctx->r->notes, note_name, note_val);
}

View file

@ -1551,10 +1551,9 @@ PHP_FUNCTION(apache_child_terminate)
Get and set Apache request notes */
PHP_FUNCTION(apache_note)
{
char *arg_name, *arg_val;
char *arg_name, *arg_val = NULL;
int arg_name_len, arg_val_len;
char *note_val;
int arg_count = ZEND_NUM_ARGS();
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|s", &arg_name, &arg_name_len, &arg_val, &arg_val_len) == FAILURE) {
return;
@ -1562,7 +1561,7 @@ PHP_FUNCTION(apache_note)
note_val = (char *) table_get(((request_rec *)SG(server_context))->notes, arg_name);
if (arg_count == 2) {
if (arg_val) {
table_set(((request_rec *)SG(server_context))->notes, arg_name, arg_val);
}