* array_init(&PG(http_globals)[TRACK_VARS_FILES])
*/
Z_TRY_ADDREF(PG(http_globals)[TRACK_VARS_FILES]);
- zend_hash_str_update(&EG(symbol_table).ht, "_FILES", lenof("_FILES"), &PG(http_globals)[TRACK_VARS_FILES]);
+ zend_hash_str_update(&EG(symbol_table), "_FILES", lenof("_FILES"), &PG(http_globals)[TRACK_VARS_FILES]);
}
}
zend_hash_destroy(¶ms);
zend_string *key_str = zend_string_init(key, key_len, 0);
zend_is_auto_global(key_str);
- hsv = zend_hash_find(&EG(symbol_table).ht, key_str);
+ hsv = zend_hash_find(&EG(symbol_table), key_str);
zend_string_release(key_str);
if (Z_TYPE_P(hsv) != IS_ARRAY) {
&& !strncmp(header->header, args->name_str, args->name_len)
) {
args->value_ptr = &header->header[args->name_len + 1];
+ while (PHP_HTTP_IS_CTYPE(space, *args->value_ptr)) {
+ ++args->value_ptr;
+ }
}
}
zval *data_ptr;
HashTable *ht = HASH_OF(value);
- ZEND_HASH_FOREACH_VAL(ht, data_ptr)
+ ZEND_HASH_FOREACH_VAL_IND(ht, data_ptr)
{
if (SUCCESS != php_http_env_set_response_header_value(http_code, name_str, name_len, data_ptr, first)) {
return FAILURE;
static PHP_METHOD(HttpEnv, setResponseHeader)
{
char *header_name_str;
- int header_name_len;
+ size_t header_name_len;
zval *header_value = NULL;
- long code = 0;
+ zend_long code = 0;
zend_bool replace_header = 1;
if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS(), "s|z!lb", &header_name_str, &header_name_len, &header_value, &code, &replace_header)) {
return;
}
- RETURN_BOOL(SUCCESS == php_http_env_set_response_header_value(code, header_name_str, header_name_len, header_value, replace_header TSRMLS_CC));
+ RETURN_BOOL(SUCCESS == php_http_env_set_response_header_value(code, header_name_str, header_name_len, header_value, replace_header));
}
ZEND_BEGIN_ARG_INFO_EX(ai_HttpEnv_setResponseCode, 0, 0, 1)
if (json) {
if (json->len) {
- zval zjson;
+ zval tmp;
+
+ ZVAL_NULL(&tmp);
+ php_json_decode(&tmp, json->val, json->len, 1, PG(max_input_nesting_level));
- ZVAL_NULL(&zjson);
- php_json_decode(&zjson, json->val, json->len, 1, PG(max_input_nesting_level));
- if (Z_TYPE(zjson) != IS_NULL) {
- zval_dtor(zarg);
- ZVAL_COPY_VALUE(zarg, (&zjson));
+ if (Z_TYPE(tmp) == IS_ARRAY) {
+ array_copy(Z_ARRVAL(tmp), Z_ARRVAL_P(zarg));
}
+ zval_ptr_dtor(&tmp);
}
zend_string_release(json);
}