diff options
author | Dmitry Stogov <dmitry@zend.com> | 2017-11-02 14:40:28 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2017-11-02 14:40:28 +0300 |
commit | 749db50a3652d810b09a52fcdb2ce2b3a8cb56fc (patch) | |
tree | f782fee5d0484a85d2a534cc9b81942a21c54391 /sapi/cli/php_cli_server.c | |
parent | b59c9fb45baa5682e351c96c8e72c68ebc08298d (diff) | |
download | php-git-749db50a3652d810b09a52fcdb2ce2b3a8cb56fc.tar.gz |
Added exceptions for ZEND_RC_DEBUG
Diffstat (limited to 'sapi/cli/php_cli_server.c')
-rw-r--r-- | sapi/cli/php_cli_server.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c index 1097b4769c..15b79864e9 100644 --- a/sapi/cli/php_cli_server.c +++ b/sapi/cli/php_cli_server.c @@ -1574,10 +1574,13 @@ static void php_cli_server_client_save_header(php_cli_server_client *client) { /* strip off the colon */ zend_string *orig_header_name = zend_string_init(client->current_header_name, client->current_header_name_len, 1); - char *lc_header_name = zend_str_tolower_dup(client->current_header_name, client->current_header_name_len); - zend_hash_str_add_ptr(&client->request.headers, lc_header_name, client->current_header_name_len, client->current_header_value); + zend_string *lc_header_name = zend_string_alloc(client->current_header_name_len, 1); + zend_str_tolower_copy(ZSTR_VAL(lc_header_name), client->current_header_name, client->current_header_name_len); + GC_MAKE_PERSISTENT_LOCAL(orig_header_name); + GC_MAKE_PERSISTENT_LOCAL(lc_header_name); + zend_hash_add_ptr(&client->request.headers, lc_header_name, client->current_header_value); zend_hash_add_ptr(&client->request.headers_original_case, orig_header_name, client->current_header_value); - efree(lc_header_name); + zend_string_release(lc_header_name); zend_string_release(orig_header_name); if (client->current_header_name_allocated) { |