mirror of
https://github.com/php/php-src.git
synced 2026-03-24 00:02:20 +01:00
Merge branch 'PHP-8.5'
* PHP-8.5: curl: Don't truncate length
This commit is contained in:
@@ -537,7 +537,7 @@ static size_t curl_write(char *data, size_t size, size_t nmemb, void *ctx)
|
||||
return fwrite(data, size, nmemb, write_handler->fp);
|
||||
case PHP_CURL_RETURN:
|
||||
if (length > 0) {
|
||||
smart_str_appendl(&write_handler->buf, data, (int) length);
|
||||
smart_str_appendl(&write_handler->buf, data, length);
|
||||
}
|
||||
break;
|
||||
case PHP_CURL_USER: {
|
||||
@@ -814,7 +814,7 @@ static size_t curl_read(char *data, size_t size, size_t nmemb, void *ctx)
|
||||
if (!Z_ISUNDEF(retval)) {
|
||||
_php_curl_verify_handlers(ch, /* reporterror */ true);
|
||||
if (Z_TYPE(retval) == IS_STRING) {
|
||||
length = MIN((size * nmemb), Z_STRLEN(retval));
|
||||
length = MIN(size * nmemb, Z_STRLEN(retval));
|
||||
memcpy(data, Z_STRVAL(retval), length);
|
||||
} else if (Z_TYPE(retval) == IS_LONG) {
|
||||
length = Z_LVAL_P(&retval);
|
||||
@@ -845,7 +845,7 @@ static size_t curl_write_header(char *data, size_t size, size_t nmemb, void *ctx
|
||||
/* Handle special case write when we're returning the entire transfer
|
||||
*/
|
||||
if (ch->handlers.write->method == PHP_CURL_RETURN && length > 0) {
|
||||
smart_str_appendl(&ch->handlers.write->buf, data, (int) length);
|
||||
smart_str_appendl(&ch->handlers.write->buf, data, length);
|
||||
} else {
|
||||
PHPWRITE(data, length);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user