Edit report at http://bugs.php.net/bug.php?id=54742&edit=1
ID: 54742 Updated by: fel...@php.net Reported by: reg at argi dot ru Summary: ' The memory could not be "read" ' when calling mb_eregi_replace -Status: Open +Status: Feedback Type: Bug Package: Apache2 related Operating System: Windows 2003 PHP Version: 5.2.17 Block user comment: N Private report: N New Comment: Please try using this snapshot: http://snaps.php.net/php5.3-latest.tar.gz For Windows: http://windows.php.net/snapshots/ Previous Comments: ------------------------------------------------------------------------ [2011-05-16 05:40:32] reg at argi dot ru Description: ------------ >From time to time in the line / * dead line * /$str = mb_eregi_replace ( >"U\\+([A-F0-9]{4})", "U+\\1", $str); apache error: Application popup: httpd.exe - Application Error: The instruction at "0x016657e9" referenced memory at "0x00000001" (sometimes 000100 or 000002). The memory could not be "read". OR The instruction at "0x0165c37a" referenced memory at "0x6f647468". The memory could not be "read". If an error occurs at least once, it starts to appear each time you run this line. Write a short script that causes this error I could not. At address 0x016657e9 located php_mbstring.dll (base address 0x01640000, file version 5.2.17.17). Test script: --------------- function smartUtf8to1251($str) { mb_internal_encoding("utf-8"); mb_substitute_character('long'); /*dead line*/$str = mb_eregi_replace ( "U\\+([A-F0-9]{4})", "U+\\1", $str); $str = mb_convert_encoding($str, 'windows-1251', 'utf-8'); $str = preg_replace("~U\+([A-F0-9]{4})~ie", '"&#".hexdec("$1").";"', $str); return $str; } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=54742&edit=1