php-src/ext
Alex Dowad f3c8efd711 In legacy text conversion filters, reset filter state in 'flush' function
Up until now, I believed that mbstring had been designed such
that (legacy) text conversion filter objects should not be
re-used after the 'flush' function is called to complete a
text conversion operation.

However, it turns out that the implementation of
_php_mb_encoding_handler_ex DID re-use filter objects
after flush. That means that functions which were based on
_php_mb_encoding_handler_ex, including mb_parse_str and
php_mb_post_handler, would break in some cases; state left
over from converting one substring (perhaps a variable name)
would affect the results of converting another substring
(perhaps the value of the same variable), and could cause
extraneous characters to get inserted into the output.

All this code should be deleted soon, but fixing it helps me
to avoid spurious failures when fuzzing the new/old code to
look for differences in behavior.
2022-08-16 16:43:27 +02:00
..
bcmath Deprecate zend_atol() / add zend_ini_parse_quantity() (#7951) 2022-06-17 14:12:53 +02:00
bz2 Merge branch 'PHP-8.1' 2022-06-25 07:40:19 +01:00
calendar Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
com_dotnet Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
ctype Skip locale tests /w musl libc (#9141) 2022-07-25 23:56:14 +01:00
curl Convert return type of various object handlers from int to zend_result (#8755) 2022-06-26 01:00:19 +02:00
date Merge branch 'PHP-8.1' 2022-08-11 16:26:46 +01:00
dba Add conflict markers for dba tests 2022-08-04 16:23:26 +02:00
dl_test Add clean_module_functions() (#8763) 2022-06-17 16:33:20 +02:00
dom Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
enchant Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
exif Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
ffi Merge branch 'PHP-8.1' 2022-08-11 09:32:18 +03:00
fileinfo Skip locale tests /w musl libc (#9141) 2022-07-25 23:56:14 +01:00
filter Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
ftp Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
gd Declare ext/gd constants in stubs (#9180) 2022-07-30 15:18:06 +02:00
gettext
gmp Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
hash Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
iconv Skip locale tests /w musl libc (#9141) 2022-07-25 23:56:14 +01:00
imap Merge branch 'PHP-8.1' 2022-08-12 16:25:46 +02:00
intl Merge branch 'PHP-8.1' 2022-08-15 18:10:54 +02:00
json Windows arm64 zend and standard extension support 2022-08-09 12:45:14 +02:00
ldap Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
libxml Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
mbstring In legacy text conversion filters, reset filter state in 'flush' function 2022-08-16 16:43:27 +02:00
mysqli Rename @cname to @cvalue in stubs (#9043) 2022-07-19 15:11:42 +02:00
mysqlnd Merge branch 'PHP-8.1' 2022-06-10 12:45:30 -04:00
oci8 Fix typo in lob_prefetch_ini.phpt test (#9099) 2022-07-22 17:17:03 +01:00
odbc Fix parentheses warnings 2022-07-28 21:09:18 +02:00
opcache Merge branch 'PHP-8.1' 2022-08-12 17:12:28 +01:00
openssl Merge branch 'PHP-8.1' 2022-08-07 14:22:33 +01:00
pcntl QA - pcntl - adjust tests set/get priority check env vars and root user 2022-08-09 21:16:21 +01:00
pcre Skip locale tests /w musl libc (#9141) 2022-07-25 23:56:14 +01:00
pdo Save previous observer on the VM stack 2022-08-04 17:16:27 +02:00
pdo_dblib
pdo_firebird Fix parentheses warnings 2022-07-28 21:09:18 +02:00
pdo_mysql Fix debug output 2022-06-09 13:42:45 +02:00
pdo_oci
pdo_odbc Merge branch 'PHP-8.1' 2022-06-13 14:44:49 +02:00
pdo_pgsql Remove SIZEOF_OFF_T undef in PDO PGSQL driver (#8301) 2022-06-09 13:29:20 +01:00
pdo_sqlite Merge branch 'PHP-8.1' 2022-07-27 13:11:58 +02:00
pgsql Improve DBA test suite (#8904) 2022-07-28 19:36:04 +01:00
phar Declare ext/phar constants in stubs (#9094) 2022-07-22 13:09:23 +02:00
posix Declare ext/posix constants in stubs (#9095) 2022-07-22 13:08:58 +02:00
pspell Declare ext/pspell constants in stubs (#9096) 2022-07-22 13:08:44 +02:00
random random left rotates annotating as const. (#9346) 2022-08-16 05:31:58 +01:00
readline Declare ext/readline constants in stubs (#9110) 2022-07-23 12:33:44 +02:00
reflection Merge branch 'PHP-8.1' 2022-07-29 12:15:38 +02:00
session Update expires format for session cookie (#9304) 2022-08-12 19:52:04 +02:00
shmop
simplexml Convert return type of various object handlers from int to zend_result (#8755) 2022-06-26 01:00:19 +02:00
skeleton
snmp Declare ext/snmp constants in stubs (#9113) 2022-07-26 14:48:16 +02:00
soap Declare ext/soap constants in stubs (#9124) 2022-07-25 16:40:41 +02:00
sockets Declare ext/sockets constants in stubs (#9349) 2022-08-16 13:18:31 +02:00
sodium Declare ext/sodium constants in stubs (#9225) 2022-08-02 13:57:52 +02:00
spl Declare ext/spl constants in stubs (#9226) 2022-08-02 16:37:12 +02:00
sqlite3 Declare ext/sqlite3 constants in stubs (#9181) 2022-07-28 18:18:08 +02:00
standard zend introduce const GNUC attribute. sub optimisation where there is no pointers, nor particular memory layout, thread local/volatile ... involved. usage concealed for now into little pack helpers. 2022-08-15 19:49:24 +01:00
sysvmsg Declare ext/sysvmsg constants in stubs (#9125) 2022-07-25 16:21:01 +02:00
sysvsem
sysvshm Fix value in test case 2022-05-16 14:47:02 +02:00
tidy Convert return type of various object handlers from int to zend_result (#8755) 2022-06-26 01:00:19 +02:00
tokenizer Declare ext/tokenizer constants in stubs (#9148) 2022-08-01 10:50:56 +02:00
xml Declare ext/xml constants in stubs (#9131) 2022-07-25 21:31:24 +02:00
xmlreader Declare ext/xmlreader constants in stubs (#9133) 2022-07-26 05:57:11 +02:00
xmlwriter Initialise zend_stat_t to fix MSAN build 2022-05-22 16:06:27 +01:00
xsl Declare ext/xsl constants in stubs (#9134) 2022-07-25 21:32:07 +02:00
zend_test Add proper handling to observe functions in fibers 2022-08-04 17:16:27 +02:00
zip Declare et/zip constants in stubs (#9146) 2022-08-16 10:18:24 +02:00
zlib Declare ext/zlib constants in stubs (#9147) 2022-07-27 00:42:19 +02:00
ext_skel.php