mirror of
https://github.com/php/php-src.git
synced 2024-09-22 10:27:25 +00:00
MFB: Fixed bug #44394 (Last two bytes missing from output)
This commit is contained in:
parent
a6628d645a
commit
1fe7347fed
18
ext/standard/tests/general_functions/bug44394.phpt
Normal file
18
ext/standard/tests/general_functions/bug44394.phpt
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
--TEST--
|
||||||
|
Bug #44394 Last two bytes missing from output
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$string = "<a href='a?q=1'>asd</a>";
|
||||||
|
|
||||||
|
output_add_rewrite_var('a', 'b');
|
||||||
|
|
||||||
|
echo $string;
|
||||||
|
|
||||||
|
ob_flush();
|
||||||
|
|
||||||
|
ob_end_clean();
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECT--
|
||||||
|
<a href='a?q=1&a=b'>asd</a>
|
24
ext/standard/tests/general_functions/bug44394_2.phpt
Normal file
24
ext/standard/tests/general_functions/bug44394_2.phpt
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
--TEST--
|
||||||
|
Bug #44394 (Last two bytes missing from output) with session.use_trans_id
|
||||||
|
--FILE--
|
||||||
|
<?php
|
||||||
|
|
||||||
|
ini_set('session.use_trans_sid', 1);
|
||||||
|
|
||||||
|
session_start();
|
||||||
|
|
||||||
|
ob_start();
|
||||||
|
|
||||||
|
$string = "<a href='a?q=1'>asd</a>";
|
||||||
|
|
||||||
|
output_add_rewrite_var('a', 'b');
|
||||||
|
|
||||||
|
echo $string;
|
||||||
|
|
||||||
|
ob_flush();
|
||||||
|
|
||||||
|
ob_end_clean();
|
||||||
|
|
||||||
|
?>
|
||||||
|
--EXPECTF--
|
||||||
|
<a href='a?q=1&PHPSESSID=%s&a=b'>asd</a>
|
@ -1007,7 +1007,7 @@ static void php_url_scanner_output_handler(char *output, uint output_len, char *
|
|||||||
size_t len;
|
size_t len;
|
||||||
|
|
||||||
if (BG(url_adapt_state_ex).url_app.len != 0) {
|
if (BG(url_adapt_state_ex).url_app.len != 0) {
|
||||||
*handled_output = url_adapt_ext(output, output_len, &len, (zend_bool) (mode & PHP_OUTPUT_HANDLER_END ? 1 : 0) TSRMLS_CC);
|
*handled_output = url_adapt_ext(output, output_len, &len, (zend_bool) (mode & (PHP_OUTPUT_HANDLER_END | PHP_OUTPUT_HANDLER_CONT) ? 1 : 0) TSRMLS_CC);
|
||||||
if (sizeof(uint) < sizeof(size_t)) {
|
if (sizeof(uint) < sizeof(size_t)) {
|
||||||
if (len > UINT_MAX)
|
if (len > UINT_MAX)
|
||||||
len = UINT_MAX;
|
len = UINT_MAX;
|
||||||
|
Loading…
Reference in New Issue
Block a user