Index: ext/standard/basic_functions.c =================================================================== --- ext/standard/basic_functions.c (revision 288893) +++ ext/standard/basic_functions.c (working copy) @@ -6037,9 +6037,10 @@ int types_len; zval *prefix = NULL; char *p; + zend_bool successful = 0; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|z/", &types, &types_len, &prefix) == FAILURE) { - return; + RETURN_FALSE; } if (ZEND_NUM_ARGS() > 1) { @@ -6059,24 +6060,31 @@ case 'g': case 'G': zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_GET]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); + successful = 1; break; case 'p': case 'P': zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_POST]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_FILES]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); + successful = 1; break; case 'c': case 'C': zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_COOKIE]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix); + successful = 1; break; + default: + php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Unsupported type character '%c'", *p); + break; } } if (ZEND_NUM_ARGS() < 2) { zval_ptr_dtor(&prefix); } + RETURN_BOOL(successful); } /* }}} */