php IHDR w Q )Ba pHYs sRGB gAMA a IDATxMk\U s&uo,mD )Xw+e?tw.oWp;QHZnw`gaiJ9̟灙a=nl[ ʨ G;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ w@H;@ q$ y H@E7j 1j+OFRg}ܫ;@Ea~ j`u'o> j- $_q?qS XzG'ay
files >> /php-7.1.11/ext/standard/tests/strings/ |
files >> //php-7.1.11/ext/standard/tests/strings/bug55871.phpt |
--TEST-- Bug #55871 (Interruption in substr_replace()) (PHP7) --FILE-- <?php class test1 { public function __toString() { preg_match('//', '', $GLOBALS['my_var']); return ''; } } class test2 { public function __toString() { $GLOBALS['my_var'] += 0x08048000; return ''; } } class test3 { public function __toString() { $GLOBALS['my_var'] .= "AAAAAAAA"; return ''; } } $my_var = str_repeat('A', 40); $out = substr_replace(array(&$my_var), array(new test1), 40, 0); var_dump($out, $my_var); $my_var = str_repeat('A', 40); $out = substr_replace(array(&$my_var), array(new test2), 40, 0); var_dump($out, $my_var); $my_var = str_repeat('A', 40); $out = substr_replace(array(&$my_var), array(new test3), 40, 0); var_dump($out, $my_var); --EXPECTF-- array(1) { [0]=> string(40) "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" } array(1) { [0]=> string(0) "" } Warning: A non-numeric value encountered in %s on line %d array(1) { [0]=> string(40) "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" } int(134512640) array(1) { [0]=> string(40) "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" } string(48) "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"y~or5J={Eeu磝Qk ᯘG{?+]ן?wM3X^歌>{7پK>on\jy Rg/=fOroNVv~Y+ NGuÝHWyw[eQʨSb> >}Gmx[o[<{Ϯ_qFvM IENDB`