From: Johannes Schlüter Date: Thu, 25 Apr 2013 16:05:56 +0000 (+0200) Subject: Merge branch 'PHP-5.5' X-Git-Tag: php-5.6.0alpha1~448^2~23^2~3 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=488933792a8;p=php Merge branch 'PHP-5.5' --- 488933792a8e5455c55a578a12e6a66ac684b68f diff --cc NEWS index f753a83ba8,ddac905d62..2b99143f4b --- a/NEWS +++ b/NEWS @@@ -1,5 -1,460 +1,6993 @@@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| - ?? ??? 201?, PHP 5.6.0 -?? ??? 2013, PHP 5.5.0 Release Candidate 1 ++11 Apr 2013, PHP 5.3.24 - <<< NOTE: Insert NEWS from last stable release here prior to actual release! >>> -25 Apr 2013, PHP 5.5.0 Beta 4 ++- Core ++ . Fixed bug #64370 (microtime(true) less than $_SERVER['REQUEST_TIME_FLOAT']). ++ (Anatol) ++ . Fixed bug #63914 (zend_do_fcall_common_helper_SPEC does not handle ++ exceptions properly). (Jeff Welch) ++ . Fixed bug #62343 (Show class_alias In get_declared_classes()) (Dmitry) + -- Core: - . Fixed bug #64677 (execution operator `` stealing surrounding arguments). - (Laruence) ++- PCRE: ++ . Merged PCRE 8.32). (Anatol) + -- CURL: - . Remove curl stream wrappers. (Pierrick) ++- mysqlnd ++ . Fixed bug #63530 (mysqlnd_stmt::bind_one_parameter crashes, uses wrong alloc ++ for stmt->param_bind). (Andrey) ++ ++- DateTime ++ . Fixed bug #62852 (Unserialize Invalid Date causes crash). (Anatol) + + - Zip: - . Fixed bug #64342 (ZipArchive::addFile() has to check for file existence). - (Anatol) ++ . Bug #64452 (Zip crash intermittently). (Anatol) ++ ++ ++14 Mar 2013, PHP 5.3.23 ++ ++- Phar: ++ . Fixed timestamp update on Phar contents modification. (Dmitry) ++ ++- SPL: ++ . Fixed bug #64264 (SPLFixedArray toArray problem). (Laruence) ++ . Fixed bug #64228 (RecursiveDirectoryIterator always assumes SKIP_DOTS). ++ (patch by kriss@krizalys.com, Laruence) ++ . Fixed bug #52861 (unset fails with ArrayObject and deep arrays). ++ (Mike Willbanks) ++ ++21 Feb 2013, PHP 5.3.22 ++ ++- Zend Engine: ++ . Fixed bug #64099 (Wrong TSRM usage in zend_Register_class alias). (Johannes) ++ . Fixed bug #63899 (Use after scope error in zend_compile). (Laruence) ++ ++- Core ++ . Fixed bug #63943 (Bad warning text from strpos() on empty needle). ++ (Laruence) ++ ++- Date: ++ . Fixed bug #55397 (comparsion of incomplete DateTime causes SIGSEGV). ++ (Laruence, Derick) ++ ++- FPM: ++ . Fixed bug #63999 (php with fpm fails to build on Solaris 10 or 11). (Adam) ++ ++- SOAP ++ . Added check that soap.wsdl_cache_dir conforms to open_basedir ++ (CVE-2013-1635). (Dmitry) ++ . Disabled external entities loading (CVE-2013-1643). (Dmitry) ++ ++- SPL: ++ . Fixed bug #64106 (Segfault on SplFixedArray[][x] = y when extended). (Nikita Popov) ++ ++17 Jan 2013, PHP 5.3.21 ++ ++- Zend Engine: ++ . Fixed bug #63762 (Sigsegv when Exception::$trace is changed by user). ++ (Johannes) ++ ++- cURL extension: ++ . Fixed bug (segfault due to libcurl connection caching). (Pierrick) ++ . Fixed bug #63795 (CURL >= 7.28.0 no longer support value 1 for ++ CURLOPT_SSL_VERIFYHOST). (Pierrick) ++ . Fixed bug #63352 (Can't enable hostname validation when using curl stream ++ wrappers). (Pierrick) ++ . Fixed bug #55438 (Curlwapper is not sending http header randomly). ++ (phpnet@lostreality.org, Pierrick) ++ ++20 Dec 2012, PHP 5.3.20 ++ ++- Zend Engine: ++ . Fixed bug #63635 (Segfault in gc_collect_cycles). (Dmitry) ++ . Fixed bug #63512 (parse_ini_file() with INI_SCANNER_RAW removes quotes ++ from value). (Pierrick) ++ . Fixed bug #63468 (wrong called method as callback with inheritance). ++ (Laruence) ++ ++- Core: ++ . Fixed bug #63451 (config.guess file does not have AIX 7 defined, ++ shared objects are not created). (kemcline at au1 dot ibm dot com) ++ . Fixed bug #63377 (Segfault on output buffer). ++ (miau dot jp at gmail dot com, Laruence) ++ ++- Apache2 Handler SAPI: ++ . Enabled Apache 2.4 configure option for Windows (Pierre, Anatoliy) ++ ++- Date: ++ . Fixed bug #63435 (Datetime::format('u') sometimes wrong by 1 microsecond). ++ (Remi) ++ ++- Fileinfo: ++ . Fixed bug #63248 (Load multiple magic files from a directory under Windows). ++ (Anatoliy) ++ . Fixed bug #63590 (Different results in TS and NTS under Windows). ++ (Anatoliy) ++ ++- FPM: ++ . Fixed bug #63581 (Possible null dereference and buffer overflow). (Remi) ++ ++- Imap: ++ . Fixed bug #63126 (DISABLE_AUTHENTICATOR ignores array). (Remi) ++ ++- MySQLnd: ++ . Fixed bug #63398 (Segfault when polling closed link). (Laruence) ++ ++- Reflection: ++ . Fixed Bug #63614 (Fatal error on Reflection). (Laruence) ++ ++- SOAP ++ . Fixed bug #63271 (SOAP wsdl cache is not enabled after initial requests). ++ (John Jawed, Dmitry) ++ ++22 Nov 2012, PHP 5.3.19 ++ ++- Core ++ . Fixed bug #63241 (PHP fails to open Windows deduplicated files). ++ (daniel dot stelter-gliese at innogames dot de) ++ . Fixed bug #62444 (Handle leak in is_readable on windows). ++ (krazyest at seznam dot cz) ++ ++- Libxml ++ . Fixed bug #63389 (Missing context check on libxml_set_streams_context() ++ causes memleak). (Laruence) ++ ++- Mbstring: ++ . Fixed bug #63447 (max_input_vars doesn't filter variables when ++ mbstring.encoding_translation = On). (Laruence) ++ ++- MySQL: ++ . Fixed compilation failure on mixed 32/64 bit systems. (Andrey) ++ ++- OCI8: ++ . Fixed bug #63265 (Add ORA-00028 to the PHP_OCI_HANDLE_ERROR macro) ++ (Chris Jones) ++ ++- PCRE: ++ . Fixed bug #63055 (Segfault in zend_gc with SF2 testsuite). ++ (Dmitry, Laruence) ++ . Fixed bug #63284 (Upgrade PCRE to 8.31). (Anatoliy) ++ ++- PDO: ++ . Fixed bug #63235 (buffer overflow in use of SQLGetDiagRec). ++ (Martin Osvald, Remi) ++ ++- PDO_pgsql: ++ . Fixed bug #62593 (Emulate prepares behave strangely with PARAM_BOOL). ++ (Will Fitch) + + - Streams: - . Fixed Windows x64 version of stream_socket_pair() and improved error handling - (Anatol Belski) ++ . Fixed bug #63240 (stream_get_line() return contains delimiter string). ++ (Tjerk, Gustavo) ++ ++- Phar: ++ . Fixed bug #63297 (Phar fails to write an openssl based signature). ++ (Anatoliy) + -11 Apr 2013, PHP 5.5.0 Beta 3 ++18 Oct 2012, PHP 5.3.18 + + - Core: - . Fixed bug #64578 (debug_backtrace in set_error_handler corrupts zend heap: - segfault). (Laruence) - . Fixed bug #64565 (copy doesn't report failure on partial copy). (Remi) - . Fixed bug #64555 (foreach no longer copies keys if they are interned). - (Nikita Popov) - . Fixed bugs #47675 and #64577 (fd leak on Solaris) ++ . Fixed bug #63111 (is_callable() lies for abstract static method). (Dmitry) ++ . Fixed bug #63093 (Segfault while load extension failed in zts-build). ++ (Laruence) ++ . Fixed bug #62976 (Notice: could not be converted to int when comparing ++ some builtin classes). (Laruence) ++ . Fixed bug #61767 (Shutdown functions not called in certain error ++ situation). (Dmitry) ++ . Fixed bug #61442 (exception threw in __autoload can not be catched). ++ (Laruence) ++ . Fixed bug #60909 (custom error handler throwing Exception + fatal error ++ = no shutdown function). (Dmitry) ++ ++- cURL: ++ . Fixed bug #62085 (file_get_contents a remote file by Curl wrapper will ++ cause cpu Soaring). (Pierrick) ++ ++- FPM: ++ . Fixed bug #62954 (startup problems fpm / php-fpm). (fat) ++ . Fixed bug #62886 (PHP-FPM may segfault/hang on startup). (fat) ++ . Fixed bug #63085 (Systemd integration and daemonize). (remi, fat) ++ . Fixed bug #62947 (Unneccesary warnings on FPM). (fat) ++ . Fixed bug #62887 (Only /status?plain&full gives "last request cpu"). (fat) ++ . Fixed bug #62216 (Add PID to php-fpm init.d script). (fat) ++ ++- Intl: ++ . Fix bug #62915 (defective cloning in several intl classes). (Gustavo) ++ ++- OCI8: ++ . Fixed bug #60901 (Improve "tail" syntax for AIX installation) (Chris Jones) ++ ++- SOAP ++ . Fixed bug #50997 (SOAP Error when trying to submit 2nd Element of a choice). ++ (Dmitry) ++ ++- SPL: ++ . Bug #62987 (Assigning to ArrayObject[null][something] overrides all ++ undefined variables). (Laruence) ++ ++13 Sep 2012, PHP 5.3.17 ++ ++- Core: ++ . Fixed bug (segfault while build with zts and GOTO vm-kind). (Laruence) ++ . Fixed bug #62955 (Only one directive is loaded from "Per Directory Values" ++ Windows registry). (aserbulov at parallels dot com) ++ . Fixed bug #62763 (register_shutdown_function and extending class). ++ (Laruence) ++ . Fixed bug #62744 (dangling pointers made by zend_disable_class). (Laruence) ++ . Fixed bug #62716 (munmap() is called with the incorrect length). ++ (slangley@google.com) ++ . Fixed bug ##62460 (php binaries installed as binary.dSYM). (Reeze Xia) + + - CURL: - . Added CURL_WRAPPERS_ENABLED constant. (Laruence) ++ . Fixed bug #62839 (curl_copy_handle segfault with CURLOPT_FILE). (Pierrick) ++ . Fixed bug #62499 (curl_setopt($ch, CURLOPT_COOKIEFILE, "") returns false). ++ (r.hampartsumyan@gmail.com, Laruence) ++ ++ - DateTime: ++ . Fixed bug #62852 (Unserialize invalid DateTime causes crash). ++ (reeze.xia@gmail.com) ++ . Fixed bug #62500 (Segfault in DateInterval class when extended). (Laruence) + -- DateTime - . Fixed bug #54567 (DateTimeZone serialize/unserialize) (Lonny - Kapelushnik, Derick) - . Fixed bug #60774 (DateInterval::format("%a") is always zero when an - interval is created using the createFromDateString method) (Lonny - Kapelushnik, Derick) ++- MySQLnd: ++ . Fixed bug #62885 (mysqli_poll - Segmentation fault). (Laruence) + -- General improvements: - . Drop support for bison < 2.4 when building PHP from GIT source. ++- PDO: ++ . Fixed bug #62685 (Wrong return datatype in PDO::inTransaction()). (Laruence) ++ ++- Session: ++ . Fixed bug (segfault due to retval is not initialized). (Laruence) ++ ++- SPL: ++ . Fixed bug #62904 (Crash when cloning an object which inherits SplFixedArray) + (Laruence) + -- Fileinfo: - . Upgraded libmagic to 5.14. (Anatol) - -- OPcache - . Added opcache_invalidate() function. (Dmitry) - . Added ability to disable opcode cahing for current request by setting - opcache.enable=0. (Dmitry) - . Allowed comments in blacklist files started from ';'. (Remi) - . Allowed wilcards in opcache.blacklist_filename. (Remi) - . Fixed opcache reload condition. Now OPcache is not reloaded if it's full, - but wasted memory is less than opcache.max_wasted_percentage. (Dmitry) - . Fixed incorrect file path validation. (Dmitry). - . Optimizer: Fixed Control Flow Graph construction. (Dmitry) - . Optimizer: numeric string constants used as array indeces have to be - converted to long at compile time. (Dmitry) - . Optimizer: Fixed deltion of used literal. (Laruence, Dmitry) - -28 Mar 2013, PHP 5.5.0 Beta 2 ++- Enchant: ++ . Fixed bug #62838 (enchant_dict_quick_check() destroys zval, but fails to ++ initialize it). (Tony, Mateusz Goik). ++ ++16 Aug 2012, PHP 5.3.16 + + - Core: - . Fixed bug #64544 (Valgrind warnings after using putenv). (Laruence) - . Fixed bug #64515 (Memoryleak when using the same variablename 2times in - function declaration). (Laruence) - . Fixed bug #64503 (Compilation fails with error: conflicting types for - 'zendparse'). (Laruence) - . Fixed bug #64239 (Debug backtrace changed behavior since 5.4.10 or 5.4.11). - (Dmitry, Laruence) - . Fixed bug #64523, allow XOR in php.ini. (Dejan Marjanovic, Lars) ++ . Fixed bug #60194 (--with-zend-multibyte and --enable-debug reports LEAK ++ with run-test.php). (Laruence) + -- Opcache: - . Fixed bug # 64490 (struct flock undefined on FreeBSD). (Joe Watkins) ++- CURL: ++ . Fixed bug #62499 (curl_setopt($ch, CURLOPT_COOKIEFILE, "") returns false). ++ (r.hampartsumyan@gmail.com, Laruence) + -21 Mar 2013, PHP 5.5.0 Beta 1 ++- DateTime: ++ . Fixed Bug #62500 (Segfault in DateInterval class when extended). (Laruence) ++ ++- Reflection: ++ . Fixed bug #62715 (ReflectionParameter::isDefaultValueAvailable() wrong ++ result). (Laruence) ++ ++- SPL: ++ . Fixed bug #62616 (ArrayIterator::count() from IteratorIterator instance ++ gives Segmentation fault). (Laruence, Gustavo) ++ ++ ++19 Jul 2012, PHP 5.3.15 ++ ++- Zend Engine: ++ . Fixed bug #51094 (parse_ini_file() with INI_SCANNER_RAW cuts a value that ++ includes a semi-colon). (Pierrick) ++ ++- COM: ++ . Fixed bug #62146 com_dotnet cannot be built shared. (Johannes) + + - Core: - . Added Zend Opcache extension and enable building it by default. - More details here: https://wiki.php.net/rfc/optimizerplus. (Dmitry) - . Added array_column function which returns a column in a multidimensional - array. https://wiki.php.net/rfc/array_column. (Ben Ramsey) - . Fixed bug #64354 (Unserialize array of objects whose class can't - be autoloaded fail). (Laruence) - . Added support for changing the process's title in CLI/CLI-Server SAPIs. - The implementation is more robust that the proctitle PECL module. More - details here: https://wiki.php.net/rfc/cli_process_title. (Keyur) - . Fixed bug #64370 (microtime(true) less than $_SERVER['REQUEST_TIME_FLOAT']). - (Anatol) - . Added support for non-scalar Iterator keys in foreach - (https://wiki.php.net/rfc/foreach-non-scalar-keys). (Nikita Popov) ++ . Fixed potential overflow in _php_stream_scandir, CVE-2012-2688. (Jason ++ Powell, Stas) ++ . Fixed bug #62432 (ReflectionMethod random corrupt memory on high ++ concurrent). (Johannes) ++ . Fixed bug #62443 (Crypt SHA256/512 Segfaults With Malformed ++ Salt). (Anthony Ferrara) + -- mysqlnd - . Fixed bug #63530 (mysqlnd_stmt::bind_one_parameter crashes, uses wrong alloc - for stmt->param_bind). (Andrey) ++- Fileinfo: ++ . Fixed magic file regex support. (Felipe) + -- DateTime - . Fixed bug #53437 (Crash when using unserialized DatePeriod instance). - (Gustavo, Derick, Anatol) - . Fixed bug #62852 (Unserialize Invalid Date causes crash). (Anatol) ++- FPM: ++ . Fixed bug #61045 (fpm don't send error log to fastcgi clients). (fat) ++ . Fixed bug #61835 (php-fpm is not allowed to run as root). (fat) ++ . Fixed bug #61295 (php-fpm should not fail with commented 'user' ++ for non-root start). (fat) ++ . Fixed bug #61026 (FPM pools can listen on the same address). (fat) ++ . Fixed bug #62033 (php-fpm exits with status 0 on some failures to start). ++ (fat) ++ . Fixed bug #62153 (when using unix sockets, multiples FPM instances ++ can be launched without errors). (fat) ++ . Fixed bug #62160 (Add process.priority to set nice(2) priorities). (fat) ++ . Fixed bug #61218 (FPM drops connection while receiving some binary values ++ in FastCGI requests). (fat) ++ . Fixed bug #62205 (php-fpm segfaults (null passed to strstr)). (fat) ++ ++- Intl: ++ . Fixed bug #62083 (grapheme_extract() memory leaks). (Gustavo) ++ . Fixed bug #62081 (IntlDateFormatter constructor leaks memory when called ++ twice). (Gustavo) ++ . Fixed bug #62070 (Collator::getSortKey() returns garbage). (Gustavo) ++ . Fixed bug #62017 (datefmt_create with incorrectly encoded timezone leaks ++ pattern). (Gustavo) ++ . Fixed bug #60785 (memory leak in IntlDateFormatter constructor). (Gustavo) ++ ++- JSON: ++ . Reverted fix for bug #61537. (Johannes) ++ ++- Phar: ++ . Fixed bug #62227 (Invalid phar stream path causes crash). (Felipe) ++ ++- Reflection: ++ . Fixed bug #62384 (Attempting to invoke a Closure more than once causes ++ segfault). (Felipe) ++ . Fixed bug #62202 (ReflectionParameter::getDefaultValue() memory leaks ++ with constant). (Laruence) + + - SPL: - . Implement FR #48358 (Add SplDoublyLinkedList::add() to insert an element - at a given offset). (Mark Baker, David Soria Parra) ++ . Fixed bug #62262 (RecursiveArrayIterator does not implement Countable). ++ (Nikita Popov) ++ ++- SQLite: ++ . Fixed open_basedir bypass, CVE-2012-3365. (Johannes, reported by Yury ++ Maryshev) ++ ++- XML Writer: ++ . Fixed bug #62064 (memory leak in the XML Writer module). ++ (jean-pierre dot lozi at lip6 dot fr) + + - Zip: - . Bug #64452 (Zip crash intermittently). (Anatol) ++ . Upgraded libzip to 0.10.1 (Anatoliy) ++ ++14 Jun 2012, PHP 5.3.14 ++ ++- CLI SAPI: ++ . Fixed bug #61546 (functions related to current script failed when chdir() ++ in cli sapi). (Laruence, reeze.xia@gmail.com) + -07 Mar 2013, PHP 5.5.0 Alpha 6 ++- CURL: ++ . Fixed bug #61948 (CURLOPT_COOKIEFILE '' raises open_basedir restriction). ++ (Laruence) ++ ++- COM: ++ . Fixed bug #62146 com_dotnet cannot be built shared. (Johannes) + + - Core: - . Fixed bug #61025 (__invoke() visibility not honored). (Laruence) - . Fixed bug #49348 (Uninitialized ++$foo->bar; does not cause a notice). ++ . Fixed CVE-2012-2143. (Solar Designer) ++ . Fixed missing bound check in iptcparse(). (chris at chiappa.net) ++ . Fixed bug #62373 (serialize() generates wrong reference to the object). ++ (Moriyoshi) ++ . Fixed bug #62005 (unexpected behavior when incrementally assigning to a ++ member of a null object). (Laruence) ++ . Fixed bug #61991 (long overflow in realpath_cache_get()). (Anatoliy) ++ . Fixed bug #61764 ('I' unpacks n as signed if n > 2^31-1 on LP64). (Gustavo) ++ . Fixed bug #61730 (Segfault from array_walk modifying an array passed by ++ reference). (Laruence) ++ . Fixed bug #61713 (Logic error in charset detection for htmlentities). ++ (Anatoliy) ++ . Fixed bug #54197 ([PATH=] sections incompatibility with user_ini.filename ++ set to null). (Anatoliy) ++ . Changed php://fd to be available only for CLI. ++ ++- Fileinfo: ++ . Fixed bug #61812 (Uninitialised value used in libmagic). ++ (Laruence, Gustavo) ++ ++- Iconv extension: ++ . Fixed a bug that iconv extension fails to link to the correct library ++ when another extension makes use of a library that links to the iconv ++ library. See https://bugs.gentoo.org/show_bug.cgi?id=364139 for detail. ++ (Moriyoshi) ++ ++- Intl: ++ . Fixed bug #62082 (Memory corruption in internal function ++ get_icu_disp_value_src_php()). (Gustavo) ++ ++- JSON ++ . Fixed bug #61537 (json_encode() incorrectly truncates/discards ++ information). (Adam) ++ ++- PDO: ++ . Fixed bug #61755 (A parsing bug in the prepared statements can lead to ++ access violations). (Johannes) ++ ++- Phar: ++ . Fix bug #61065 (Secunia SA44335). (Rasmus) ++ ++- Streams: ++ . Fixed bug #61961 (file_get_contents leaks when access empty file with ++ maxlen set). (Reeze) ++ ++08 May 2012, PHP 5.3.13 ++- CGI ++ . Improve fix for PHP-CGI query string parameter vulnerability, CVE-2012-2311. + (Stas) + -- Sockets: - . Fixed bug #64287 (sendmsg/recvmsg shutdown handler causes segfault). ++03 May 2012, PHP 5.3.12 ++- Fix PHP-CGI query string parameter vulnerability, CVE-2012-1823. (Rasmus) ++ ++26 Apr 2012, PHP 5.3.11 ++ ++- Core: ++ . Fixed bug #61650 (ini parser crashes when using ${xxxx} ini variables ++ (without apache2)). (Laruence) ++ . Fixed bug #61273 (call_user_func_array with more than 16333 arguments ++ leaks / crashes). (Laruence) ++ . Fixed bug #61165 (Segfault - strip_tags()). (Laruence) ++ . Improved max_input_vars directive to check nested variables (Dmitry). ++ . Fixed bug #61095 (Incorect lexing of 0x00*+). (Etienne) ++ . Fixed bug #61087 (Memory leak in parse_ini_file when specifying ++ invalid scanner mode). (Nikic, Laruence) ++ . Fixed bug #61072 (Memory leak when restoring an exception handler). ++ (Nikic, Laruence) ++ . Fixed bug #61058 (array_fill leaks if start index is PHP_INT_MAX). ++ (Laruence) ++ . Fixed bug #61043 (Regression in magic_quotes_gpc fix for CVE-2012-0831). ++ (Ondřej Surý) ++ . Fixed bug #61000 (Exceeding max nesting level doesn't delete numerical ++ vars). (Laruence) ++ . Fixed bug #60895 (Possible invalid handler usage in windows random ++ functions). (Pierre) ++ . Fixed bug #60825 (Segfault when running symfony 2 tests). ++ (Dmitry, Laruence) ++ . Fixed bug #60801 (strpbrk() mishandles NUL byte). (Adam) ++ . Fixed bug #60569 (Nullbyte truncates Exception $message). (Ilia) ++ . Fixed bug #60227 (header() cannot detect the multi-line header with CR). ++ (rui, Gustavo) ++ . Fixed bug #60222 (time_nanosleep() does validate input params). (Ilia) ++ . Fixed bug #54374 (Insufficient validating of upload name leading to ++ corrupted $_FILES indices). (CVE-2012-1172). (Stas, lekensteyn at ++ gmail dot com, Pierre) ++ . Fixed bug #52719 (array_walk_recursive crashes if third param of the ++ function is by reference). (Nikita Popov) ++ . Fixed bug #51860 (Include fails with toplevel symlink to /). (Dmitry) ++ ++- DOM ++ . Added debug info handler to DOM objects. (Gustavo, Joey Smith) ++ ++- FPM ++ . Fixed bug #61430 (Transposed memset() params in sapi/fpm/fpm/fpm_shm.c). ++ (michaelhood at gmail dot com, Ilia) ++ ++- Ibase ++ . Fixed bug #60947 (Segmentation fault while executing ibase_db_info). ++ (Ilia) ++ ++- Installation ++ . Fixed bug #61172 (Add Apache 2.4 support). (Chris Jones) ++ ++- Fileinfo ++ . Upgraded libmagic to 5.11 (Pierre, Anatoliy) ++ . Fixed bug #61565 where php_stream_open_wrapper_ex tries to open a ++ directory descriptor under windows. (Anatoliy) ++ . Fixed bug #61566 failure caused by the posix lseek and read versions ++ under windows in cdf_read(). (Anatoliy) ++ . Fixed bug #61173 (Unable to detect error from finfo constructor). (Gustavo) ++ ++- Firebird Database extension (ibase): ++ . Fixed bug #60802 (ibase_trans() gives segfault when passing params). ++ ++- Libxml: ++ . Fixed bug #61367 (open_basedir bypass using libxml RSHUTDOWN). ++ (Tim Starling) ++ ++- mysqli ++ . Fixed bug #61003 (mysql_stat() require a valid connection). (Johannes). ++ ++- PDO_mysql ++ . Fixed bug #61207 (PDO::nextRowset() after a multi-statement query doesn't ++ always work). (Johannes) ++ . Fixed bug #61194 (PDO should export compression flag with myslqnd). ++ (Johannes) ++ ++- PDO_odbc ++ . Fixed bug #61212 (PDO ODBC Segfaults on SQL_SUCESS_WITH_INFO). (Ilia) ++ ++- PDO_pgsql ++ . Fixed bug #61267 (pdo_pgsql's PDO::exec() returns the number of SELECTed ++ rows on postgresql >= 9). (ben dot pineau at gmail dot com) ++ ++- PDO_Sqlite extension: ++ . Add createCollation support. (Damien) ++ ++- pgsql: ++ . Fixed bug #60718 (Compile problem with libpq (PostgreSQL 7.3 or less). ++ (Yasuo Ohgaki) ++ ++- Phar: ++ . Fixed bug #61184 (Phar::webPhar() generates headers with trailing NUL ++ bytes). (Nikic) ++ ++- PHP-FPM SAPI: ++ . Fixed bug #60811 (php-fpm compilation problem). (rasmus) ++ ++- Readline: ++ . Fixed bug #61088 (Memory leak in readline_callback_handler_install). ++ (Nikic, Laruence) ++ . Add open_basedir checks to readline_write_history and readline_read_history. ++ (Rasmus, reported by Mateusz Goik) ++ ++- Reflection: ++ . Fixed bug #61388 (ReflectionObject:getProperties() issues invalid reads ++ when get_properties returns a hash table with (inaccessible) dynamic ++ numeric properties). (Gustavo) ++ . Fixed bug #60968 (Late static binding doesn't work with ++ ReflectionMethod::invokeArgs()). (Laruence) ++ ++- SOAP ++ . Fixed basic HTTP authentication for WSDL sub requests. (Dmitry) ++ . Fixed bug #60887 (SoapClient ignores user_agent option and sends no ++ User-Agent header). (carloschilazo at gmail dot com) ++ . Fixed bug #60842, #51775 (Chunked response parsing error when ++ chunksize length line is > 10 bytes). (Ilia) ++ . Fixed bug #49853 (Soap Client stream context header option ignored). ++ (Dmitry) ++ ++- SPL ++ . Fixed memory leak when calling SplFileInfo's constructor twice. (Felipe) ++ . Fixed bug #61418 (Segmentation fault when DirectoryIterator's or ++ FilesystemIterator's iterators are requested more than once without ++ having had its dtor callback called in between). (Gustavo) ++ . Fixed bug #61347 (inconsistent isset behavior of Arrayobject). (Laruence) ++ . Fixed bug #61326 (ArrayObject comparison). (Gustavo) ++ ++- SQLite3 extension: ++ . Add createCollation() method. (Brad Dewar) ++ ++- Session: ++ . Fixed bug #60860 (session.save_handler=user without defined function core ++ dumps). (Felipe) ++ . Fixed bug #60634 (Segmentation fault when trying to die() in ++ SessionHandler::write()). (Ilia) ++ ++- Streams: ++ . Fixed bug #61371 (stream_context_create() causes memory leaks on use ++ streams_socket_create). (Gustavo) ++ . Fixed bug #61253 (Wrappers opened with errors concurrency problem on ZTS). + (Gustavo) ++ . Fixed bug #61115 (stream related segfault on fatal error in ++ php_stream_context_link). (Gustavo) ++ . Fixed bug #60817 (stream_get_line() reads from stream even when there is ++ already sufficient data buffered). stream_get_line() now behaves more like ++ fgets(), as is documented. (Gustavo) ++ . Further fix for bug #60455 (stream_get_line misbehaves if EOF is not ++ detected together with the last read). (Gustavo) ++ . Fixed bug #60106 (stream_socket_server silently truncates long unix ++ socket paths). (Ilia) + -- PCRE: - . Merged PCRE 8.32. (Anatol) ++- Tidy: ++ . Fixed bug #54682 (tidy null pointer dereference). (Tony, David Soria Parra) + -- DateTime: - . Fixed bug #64359 (strftime crash with VS2012). (Anatol) ++- XMLRPC: ++ . Fixed bug #61264 (xmlrpc_parse_method_descriptions leaks temporary ++ variable). (Nikita Popov) ++ . Fixed bug #61097 (Memory leak in xmlrpc functions copying zvals). (Nikic) + -- SNMP: - . Fixed bug #61981 (OO API, walk: $suffix_as_key is not working correctly). - (Boris Lytochkin) ++- Zlib: ++ . Fixed bug #61139 (gzopen leaks when specifying invalid mode). (Nikic) + -21 Feb 2013, PHP 5.5.0 Alpha 5 ++02 Feb 2012, PHP 5.3.10 + + - Core: - . Implemented FR #64175 (Added HTTP codes as of RFC 6585). (Jonh Wendell) - . Fixed bug #64135 (Exceptions from set_error_handler are not always - propagated). (Laruence) - . Fixed bug #63830 (Segfault on undefined function call in nested generator). - (Nikita Popov) - . Fixed bug #60833 (self, parent, static behave inconsistently - case-sensitive). (Stas, mario at include-once dot org) - . Implemented FR #60524 (specify temp dir by php.ini). (ALeX Kazik). - . Fixed bug #64142 (dval to lval different behavior on ppc64). (Remi) - . Added ARMv7/v8 versions of various Zend arithmetic functions that are - implemented using inline assembler (Ard Biesheuvel) - . Fix undefined behavior when converting double variables to integers. - The double is now always rounded towards zero, the remainder of its division - by 2^32 or 2^64 (depending on sizeof(long)) is calculated and it's made - signed assuming a two's complement representation. (Gustavo) - -- CLI server: - . Fixed bug #64128 (buit-in web server is broken on ppc64). (Remi) ++ . Fixed arbitrary remote code execution vulnerability reported by Stefan ++ Esser, CVE-2012-0830. (Stas, Dmitry) ++ ++10 Jan 2012, PHP 5.3.9 ++ ++- Core: ++ . Added max_input_vars directive to prevent attacks based on hash collisions ++ (CVE-2011-4885) (Dmitry). ++ . Fixed bug #60205 (possible integer overflow in content_length). (Laruence) ++ . Fixed bug #60139 (Anonymous functions create cycles not detected by the ++ GC). (Dmitry) ++ . Fixed bug #60138 (GC crash with referenced array in RecursiveArrayIterator) ++ (Dmitry). ++ . Fixed bug #60120 (proc_open's streams may hang with stdin/out/err when ++ the data exceeds or is equal to 2048 bytes). (Pierre, Pascal Borreli) ++ . Fixed bug #60099 (__halt_compiler() works in braced namespaces). (Felipe) ++ . Fixed bug #60019 (Function time_nanosleep() is undefined on OS X). (Ilia) ++ . Fixed bug #55874 (GCC does not provide __sync_fetch_and_add on some archs). ++ (klightspeed at netspace dot net dot au) ++ . Fixed bug #55798 (serialize followed by unserialize with numeric object ++ prop. gives integer prop). (Gustavo) ++ . Fixed bug #55749 (TOCTOU issue in getenv() on Windows builds). (Pierre) ++ . Fixed bug #55707 (undefined reference to `__sync_fetch_and_add_4' on Linux ++ parisc). (Felipe) ++ . Fixed bug #55674 (fgetcsv & str_getcsv skip empty fields in some ++ tab-separated records). (Laruence) ++ . Fixed bug #55649 (Undefined function Bug()). (Laruence) ++ . Fixed bug #55622 (memory corruption in parse_ini_string). (Pierre) ++ . Fixed bug #55576 (Cannot conditionally move uploaded file without race ++ condition). (Gustavo) ++ . Fixed bug #55510: $_FILES 'name' missing first character after upload. ++ (Arpad) ++ . Fixed bug #55509 (segfault on x86_64 using more than 2G memory). (Laruence) ++ . Fixed bug #55504 (Content-Type header is not parsed correctly on ++ HTTP POST request). (Hannes) ++ . Fixed bug #55475 (is_a() triggers autoloader, new optional 3rd argument to ++ is_a and is_subclass_of). (alan_k) ++ . Fixed bug #52461 (Incomplete doctype and missing xmlns). ++ (virsacer at web dot de, Pierre) ++ . Fixed bug #55366 (keys lost when using substr_replace an array). (Arpad) ++ . Fixed bug #55273 (base64_decode() with strict rejects whitespace after ++ pad). (Ilia) ++ . Fixed bug #52624 (tempnam() by-pass open_basedir with nonnexistent ++ directory). (Felipe) ++ . Fixed bug #50982 (incorrect assumption of PAGE_SIZE size). (Dmitry) ++ . Fixed invalid free in call_user_method() function. (Felipe) ++ . Fixed bug #43200 (Interface implementation / inheritence not possible in ++ abstract classes). (Felipe) ++ ++ ++- BCmath: ++ . Fixed bug #60377 (bcscale related crashes on 64bits platforms). (shm) ++ ++- Calendar: ++ . Fixed bug #55797 (Integer overflow in SdnToGregorian leads to segfault (in ++ optimized builds). (Gustavo) + + - cURL: - . Implemented FR #46439 - added CURLFile for safer file uploads. - (Stas) ++ . Fixed bug #60439 (curl_copy_handle segfault when used with ++ CURLOPT_PROGRESSFUNCTION). (Pierrick) ++ . Fixed bug #54798 (Segfault when CURLOPT_STDERR file pointer is closed ++ before calling curl_exec). (Hannes) ++ . Fixed issues were curl_copy_handle() would sometimes lose copied ++ preferences. (Hannes) ++ ++- DateTime: ++ . Fixed bug #60373 (Startup errors with log_errors on cause segfault). ++ (Derick) ++ . Fixed bug #60236 (TLA timezone dates are not converted properly from ++ timestamp). (Derick) ++ . Fixed bug #55253 (DateTime::add() and sub() result -1 hour on objects with ++ time zone type 2). (Derick) ++ . Fixed bug #54851 (DateTime::createFromFormat() doesn't interpret "D"). ++ (Derick) ++ . Fixed bug #53502 (strtotime with timezone memory leak). (Derick) ++ . Fixed bug #52062 (large timestamps with DateTime::getTimestamp and ++ DateTime::setTimestamp). (Derick) ++ . Fixed bug #51994 (date_parse_from_format is parsing invalid date using 'yz' ++ format). (Derick) ++ . Fixed bug #52113 (Seg fault while creating (by unserialization) ++ DatePeriod). (Derick) ++ . Fixed bug #48476 (cloning extended DateTime class without calling ++ parent::__constr crashed PHP). (Hannes) ++ ++- EXIF: ++ . Fixed bug #60150 (Integer overflow during the parsing of invalid exif ++ header). (CVE-2011-4566) (Stas, flolechaud at gmail dot com) ++ ++- Fileinfo: ++ . Fixed bug #60094 (C++ comment fails in c89). (Laruence) ++ . Fixed possible memory leak in finfo_open(). (Felipe) ++ . Fixed memory leak when calling the Finfo constructor twice. (Felipe) ++ ++- Filter: ++ . Fixed Bug #55478 (FILTER_VALIDATE_EMAIL fails with internationalized ++ domain name addresses containing >1 -). (Ilia) ++ ++- FTP: ++ . Fixed bug #60183 (out of sync ftp responses). (bram at ebskamp dot me, ++ rasmus) ++ ++- Gd: ++ . Fixed bug #60160 (imagefill() doesn't work correctly ++ for small images). (Florian) + + - Intl: - . Cherry-picked UConverter wrapper, which had accidentaly been committed only - to master. ++ . Fixed bug #61487 (Incorrent bounds checking in grapheme_strpos). ++ (Stas) ++ . Fixed bug #60192 (SegFault when Collator not constructed ++ properly). (Florian) ++ . Fixed memory leak in several Intl locale functions. (Felipe) + -- mysqli - . Added mysqli_begin_transaction()/mysqli::begin_transaction(). Implemented - all options, per MySQL 5.6, which can be used with START TRANSACTION, COMMIT - and ROLLBACK through options to mysqli_commit()/mysqli_rollback() and their - respective OO counterparts. They work in libmysql and mysqlnd mode. (Andrey) - . Added mysqli_savepoint(), mysqli_release_savepoint(). (Andrey) ++- Json: ++ . Fixed bug #55543 (json_encode() with JSON_NUMERIC_CHECK fails on objects ++ with numeric string properties). (Ilia, dchurch at sciencelogic dot com) ++ ++- Mbstring: ++ . Fixed possible crash in mb_ereg_search_init() using empty pattern. (Felipe) ++ ++- MS SQL: ++ . Fixed bug #60267 (Compile failure with freetds 0.91). (Felipe) ++ ++- MySQL: ++ . Fixed bug #55550 (mysql.trace_mode miscounts result sets). (Johannes) ++ ++- MySQLi extension: ++ . Fixed bug #55859 (mysqli->stat property access gives error). (Andrey) ++ . Fixed bug #55582 (mysqli_num_rows() returns always 0 for unbuffered, when ++ mysqlnd is used). (Andrey) ++ . Fixed bug #55703 (PHP crash when calling mysqli_fetch_fields). ++ (eran at zend dot com, Laruence) + + - mysqlnd - . Add new begin_transaction() call to the connection object. Implemented all - options, per MySQL 5.6, which can be used with START TRANSACTION, COMMIT - and ROLLBACK. (Andrey) - . Added mysqlnd_savepoint(), mysqlnd_release_savepoint(). (Andrey) ++ . Fixed bug #55609 (mysqlnd cannot be built shared). (Johannes) ++ . Fixed bug #55067 (MySQL doesn't support compression - wrong config option). ++ (Andrey) + -- Sockets: - . Added recvmsg() and sendmsg() wrappers. (Gustavo) - See https://wiki.php.net/rfc/sendrecvmsg ++- NSAPI SAPI: ++ . Don't set $_SERVER['HTTPS'] on unsecure connection (bug #55403). (Uwe ++ Schindler) + -- Filter: - . Implemented FR #49180 - added MAC address validation. (Martin) ++- OpenSSL: ++ . Fixed bug #60279 (Fixed NULL pointer dereference in ++ stream_socket_enable_crypto, case when ssl_handle of session_stream is not ++ initialized.) (shm) ++ . Fix segfault with older versions of OpenSSL. (Scott) ++ ++- Oracle Database extension (OCI8): ++ . Fixed bug #59985 (show normal warning text for OCI_NO_DATA). ++ (Chris Jones) ++ . Increased maximum Oracle error message buffer length for new 11.2.0.3 size. ++ (Chris Jones) ++ . Improve internal initalization failure error messages. (Chris Jones) ++ ++- PDO ++ . Fixed bug #55776 (PDORow to session bug). (Johannes) ++ ++- PDO Firebird: ++ . Fixed bug #48877 ("bindValue" and "bindParam" do not work for PDO Firebird). ++ (Mariuz) ++ . Fixed bug #47415 (PDO_Firebird segfaults when passing lowercased column name to bindColumn). ++ . Fixed bug #53280 (PDO_Firebird segfaults if query column count less than param count). ++ (Mariuz) ++ ++- PDO MySQL driver: ++ . Fixed bug #60155 (pdo_mysql.default_socket ignored). (Johannes) ++ . Fixed bug #55870 (PDO ignores all SSL parameters when used with mysql ++ native driver). (Pierre) ++ . Fixed bug #54158 (MYSQLND+PDO MySQL requires #define ++ MYSQL_OPT_LOCAL_INFILE). (Andrey) ++ ++- PDO OCI driver: ++ . Fixed bug #55768 (PDO_OCI can't resume Oracle session after it's been ++ killed). (mikhail dot v dot gavrilov at gmail dot com, Chris Jones, Tony) + + - Phar: - . Fixed timestamp update on Phar contents modification. (Dmitry) ++ . Fixed bug #60261 (NULL pointer dereference in phar). (Felipe) ++ . Fixed bug #60164 (Stubs of a specific length break phar_open_from_fp ++ scanning for __HALT_COMPILER). (Ralph Schindler) ++ . Fixed bug #53872 (internal corruption of phar). (Hannes) ++ . Fixed bug #52013 (Unable to decompress files in a compressed phar). (Hannes) ++ ++- PHP-FPM SAPI: ++ . Dropped restriction of not setting the same value multiple times, the last ++ one holds. (giovanni at giacobbi dot net, fat) ++ . Added .phar to default authorized extensions. (fat) ++ . Fixed bug #60659 (FPM does not clear auth_user on request accept). ++ (bonbons at linux-vserver dot org) ++ . Fixed bug #60629 (memory corruption when web server closed the fcgi fd). ++ (fat) ++ . Enhance error log when the primary script can't be open. FR #60199. (fat) ++ . Fixed bug #60179 (php_flag and php_value does not work properly). (fat) ++ . Fixed bug #55577 (status.html does not install). (fat) ++ . Fixed bug #55533 (The -d parameter doesn't work). (fat) ++ . Fixed bug #55526 (Heartbeat causes a lot of unnecessary events). (fat) ++ . Fixed bug #55486 (status show BIG processes number). (fat) ++ . Enhanced security by limiting access to user defined extensions. ++ FR #55181. (fat) ++ . Added process.max to control the number of process FPM can fork. FR #55166. ++ (fat) ++ . Implemented FR #54577 (Enhanced status page with full status and details ++ about each processes. Also provide a web page (status.html) for ++ real-time FPM status. (fat) ++ . Lowered default value for Process Manager. FR #54098. (fat) ++ . Implemented FR #52569 (Add the "ondemand" process-manager ++ to allow zero children). (fat) ++ . Added partial syslog support (on error_log only). FR #52052. (fat) ++ ++- Postgres: ++ . Fixed bug #60244 (pg_fetch_* functions do not validate that row param ++ is >0). (Ilia) ++ ++- Reflection: ++ . Fixed bug #60367 (Reflection and Late Static Binding). (Laruence) ++ ++- Session: ++ . Fixed bug #55267 (session_regenerate_id fails after header sent). (Hannes) ++ ++- SimpleXML: ++ . Reverted the SimpleXML->query() behaviour to returning empty arrays ++ instead of false when no nodes are found as it was since 5.3.3 ++ (bug #48601). (chregu, rrichards) ++ ++- SOAP ++ . Fixed bug #54911 (Access to a undefined member in inherit SoapClient may ++ cause Segmentation Fault). (Dmitry) ++ . Fixed bug #48216 (PHP Fatal error: SOAP-ERROR: Parsing WSDL: ++ Extra content at the end of the doc, when server uses chunked transfer ++ encoding with spaces after chunk size). (Dmitry) ++ . Fixed bug #44686 (SOAP-ERROR: Parsing WSDL with references). (Dmitry) ++ ++- Sockets: ++ . Fixed bug #60048 (sa_len a #define on IRIX). (china at thewrittenword dot ++ com) + + - SPL: - . Fixed bug #64264 (SPLFixedArray toArray problem). (Laruence) - . Fixed bug #64228 (RecursiveDirectoryIterator always assumes SKIP_DOTS). - (patch by kriss@krizalys.com, Laruence) - . Fixed bug #64106 (Segfault on SplFixedArray[][x] = y when extended). - (Nikita Popov) - . Fixed bug #52861 (unset fails with ArrayObject and deep arrays). - (Mike Willbanks) ++ . Fixed bug #60082 (Crash in ArrayObject() when using recursive references). ++ (Tony) ++ . Fixed bug #55807 (Wrong value for splFileObject::SKIP_EMPTY). ++ (jgotti at modedemploi dot fr, Hannes) ++ . Fixed bug #54304 (RegexIterator::accept() doesn't work with scalar values). ++ (Hannes) + -- SNMP: - . Fixed bug #64124 (IPv6 malformed). (Boris Lytochkin) ++- Streams: ++ . Fixed bug #60455 (stream_get_line misbehaves if EOF is not detected together ++ with the last read). (Gustavo) + -24 Jan 2013, PHP 5.5.0 Alpha 4 ++- Tidy: ++ . Fixed bug #54682 (Tidy::diagnose() NULL pointer dereference). ++ (Maksymilian Arciemowicz, Felipe) ++ ++- XSL: ++ . Added xsl.security_prefs ini option to define forbidden operations within ++ XSLT stylesheets, default is not to enable write operations. This option ++ won't be in 5.4, since there's a new method. Fixes Bug #54446. (Chregu, ++ Nicolas Gregoire) ++ ++23 Aug 2011, PHP 5.3.8 + + - Core: - . Fixed bug #63980 (object members get trimmed by zero bytes). (Laruence) - . Implemented RFC for Class Name Resolution As Scalar Via "class" Keyword. - (Ralph Schindler, Nikita Popov, Lars) ++ . Fixed bug #55439 (crypt() returns only the salt for MD5). (Stas) + -- DateTime - . Added DateTimeImmutable - a variant of DateTime that only returns the - modified state instead of changing itself. (Derick) ++- OpenSSL: ++ . Reverted a change in timeout handling restoring PHP 5.3.6 behavior, ++ as the new behavior caused mysqlnd SSL connections to hang (#55283). ++ (Pierre, Andrey, Johannes) + -- FPM: - . Fixed bug #63999 (php with fpm fails to build on Solaris 10 or 11). (Adam) ++18 Aug 2011, PHP 5.3.7 ++- Upgraded bundled SQLite to version 3.7.7.1. (Scott) ++- Upgraded bundled PCRE to version 8.12. (Scott) + -- pgsql: - . Bug #46408: Locale number format settings can cause pg_query_params to - break with numerics. (asmecher, Lars) ++- Zend Engine: ++ . Fixed bug #55156 (ReflectionClass::getDocComment() returns comment even ++ though the class has none). (Felipe) ++ . Fixed bug #55007 (compiler fail after previous fail). (Felipe) ++ . Fixed bug #54910 (Crash when calling call_user_func with unknown function ++ name). (Dmitry) ++ . Fixed bug #54804 (__halt_compiler and imported namespaces). ++ (Pierrick, Felipe) ++ . Fixed bug #54624 (class_alias and type hint). (Felipe) ++ . Fixed bug #54585 (track_errors causes segfault). (Dmitry) ++ . Fixed bug #54423 (classes from dl()'ed extensions are not destroyed). ++ (Tony, Dmitry) ++ . Fixed bug #54372 (Crash accessing global object itself returned from its ++ __get() handle). (Dmitry) ++ . Fixed bug #54367 (Use of closure causes problem in ArrayAccess). (Dmitry) ++ . Fixed bug #54358 (Closure, use and reference). (Dmitry) ++ . Fixed bug #54262 (Crash when assigning value to a dimension in a non-array). ++ (Dmitry) ++ . Fixed bug #54039 (use() of static variables in lambda functions can break ++ staticness). (Dmitry) + -- dba: - . Bug #62489: dba_insert not working as expected. - (marc-bennewitz at arcor dot de, Lars) ++- Core ++ . Updated crypt_blowfish to 1.2. ((CVE-2011-2483) (Solar Designer) ++ . Removed warning when argument of is_a() or is_subclass_of() is not ++ a known class. (Stas) ++ . Fixed crash in error_log(). (Felipe) Reported by Mateusz Kocielski. ++ . Added PHP_MANDIR constant telling where the manpages were installed into, ++ and an --man-dir argument to php-config. (Hannes) ++ . Fixed a crash inside dtor for error handling. (Ilia) ++ . Fixed buffer overflow on overlog salt in crypt(). (Clément LECIGNE, Stas) ++ . Implemented FR #54459 (Range function accuracy). (Adam) + -- Reflection: - . Fixed bug #64007 (There is an ability to create instance of Generator by - hand). (Laruence) ++ . Fixed bug #55399 (parse_url() incorrectly treats ':' as a valid path). ++ (Ilia) ++ . Fixed bug #55339 (Segfault with allow_call_time_pass_reference = Off). ++ (Dmitry) ++ . Fixed bug #55295 [NEW]: popen_ex on windows, fixed possible heap overflow ++ (Pierre) ++ . Fixed bug #55258 (Windows Version Detecting Error). ++ ( xiaomao5 at live dot com, Pierre) ++ . Fixed bug #55187 (readlink returns weird characters when false result). ++ (Pierre) ++ . Fixed bug #55082 (var_export() doesn't escape properties properly). ++ (Gustavo) ++ . Fixed bug #55014 (Compile failure due to improper use of ctime_r()). (Ilia) ++ . Fixed bug #54939 (File path injection vulnerability in RFC1867 File upload ++ filename). (Felipe) Reported by Krzysztof Kotowicz. (CVE-2011-2202) ++ . Fixed bug #54935 php_win_err can lead to crash. (Pierre) ++ . Fixed bug #54924 (assert.* is not being reset upon request shutdown). (Ilia) ++ . Fixed bug #54895 (Fix compiling with older gcc version without need for ++ membar_producer macro). (mhei at heimpold dot de) ++ . Fixed bug #54866 (incorrect accounting for realpath_cache_size). ++ (Dustin Ward) ++ . Fixed bug #54723 (getimagesize() doesn't check the full ico signature). ++ (Scott) ++ . Fixed bug #54721 (Different Hashes on Windows, BSD and Linux on wrong Salt ++ size). (Pierre, os at irj dot ru) ++ . Fixed bug #54580 (get_browser() segmentation fault when browscap ini ++ directive is set through php_admin_value). (Gustavo) ++ . Fixed bug #54332 (Crash in zend_mm_check_ptr // Heap corruption). (Dmitry) ++ . Fixed bug #54305 (Crash in gc_remove_zval_from_buffer). (Dmitry) ++ . Fixed bug #54238 (use-after-free in substr_replace()). (Stas) ++ (CVE-2011-1148) ++ . Fixed bug #54204 (Can't set a value with a PATH section in php.ini). ++ (Pierre) ++ . Fixed bug #54180 (parse_url() incorrectly parses path when ? in fragment). ++ (tomas dot brastavicius at quantum dot lt, Pierrick) ++ . Fixed bug #54137 (file_get_contents POST request sends additional line ++ break). (maurice-php at mertinkat dot net, Ilia) ++ . Fixed bug #53848 (fgetcsv() ignores spaces at beginnings of fields). (Ilia) ++ . Alternative fix for bug #52550, as applied to the round() function (signed ++ overflow), as the old fix impacted the algorithm for numbers with magnitude ++ smaller than 0. (Gustavo) ++ . Fixed bug #53727 (Inconsistent behavior of is_subclass_of with interfaces) ++ (Ralph Schindler, Dmitry) ++ . Fixed bug #52935 (call exit in user_error_handler cause stream relate ++ core). (Gustavo) ++ . Fixed bug #51997 (SEEK_CUR with 0 value, returns a warning). (Ilia) ++ . Fixed bug #50816 (Using class constants in array definition fails). ++ (Pierrick, Dmitry) ++ . Fixed bug #50363 (Invalid parsing in convert.quoted-printable-decode ++ filter). (slusarz at curecanti dot org) ++ . Fixed bug #48465 (sys_get_temp_dir() possibly inconsistent when using ++ TMPDIR on Windows). (Pierre) + -10 Jan 2013, PHP 5.5.0 Alpha 3 ++- Apache2 Handler SAPI: ++ . Fixed bug #54529 (SAPI crashes on apache_config.c:197). ++ (hebergement at riastudio dot fr) + -- General improvements: - . Fixed bug #63874 (Segfault if php_strip_whitespace has heredoc). (Pierrick) - . Fixed bug #63822 (Crash when using closures with ArrayAccess). - (Nikita Popov) - . Add Generator::throw() method. (Nikita Popov) - . Bug #23955: allow specifying Max-Age attribute in setcookie() (narfbg, Lars) - . Bug #52126: timestamp for mail.log (Martin Jansen, Lars) ++- CLI SAPI: ++ . Fixed bug #52496 (Zero exit code on option parsing failure). (Ilia) ++ ++- cURL extension: ++ . Added ini option curl.cainfo (support for custom cert db). (Pierre) ++ . Added CURLINFO_REDIRECT_URL support. (Daniel Stenberg, Pierre) ++ . Added support for CURLOPT_MAX_RECV_SPEED_LARGE and ++ CURLOPT_MAX_SEND_SPEED_LARGE. FR #51815. (Pierrick) ++ ++- DateTime extension: ++ . Fixed bug where the DateTime object got changed while using date_diff(). ++ (Derick) ++ . Fixed bug #54340 (DateTime::add() method bug). (Adam) ++ . Fixed bug #54316 (DateTime::createFromFormat does not handle trailing '|' ++ correctly). (Adam) ++ . Fixed bug #54283 (new DatePeriod(NULL) causes crash). (Felipe) ++ . Fixed bug #51819 (Case discrepancy in timezone names cause Uncaught ++ exception and fatal error). (Hannes) ++ ++- DBA extension: ++ . Supress warning on non-existent file open with Berkeley DB 5.2. (Chris Jones) ++ . Fixed bug #54242 (dba_insert returns true if key already exists). (Felipe) ++ ++- Exif extesion: ++ . Fixed bug #54121 (error message format string typo). (Ilia) ++ ++- Fileinfo extension: ++ . Fixed bug #54934 (Unresolved symbol strtoull in HP-UX 11.11). (Felipe) ++ ++- Filter extension: ++ . Added 3rd parameter to filter_var_array() and filter_input_array() ++ functions that allows disabling addition of empty elements. (Ilia) ++ . Fixed bug #53037 (FILTER_FLAG_EMPTY_STRING_NULL is not implemented). (Ilia) ++ ++- Interbase extension: ++ . Fixed bug #54269 (Short exception message buffer causes crash). (Felipe) ++ ++- intl extension: ++ . Implemented FR #54561 (Expose ICU version info). (David Zuelke, Ilia) ++ . Implemented FR #54540 (Allow loading of arbitrary resource bundles when ++ fallback is disabled). (David Zuelke, Stas) ++ ++- Imap extension: ++ . Fixed bug #55313 (Number of retries not set when params specified). ++ (kevin at kevinlocke dot name) ++ ++- json extension: ++ . Fixed bug #54484 (Empty string in json_decode doesn't reset ++ json_last_error()). (Ilia) ++ ++- LDAP extension: ++ . Fixed bug #53339 (Fails to build when compilng with gcc 4.5 and DSO ++ libraries). (Clint Byrum, Raphael) ++ ++- libxml extension: ++ . Fixed bug #54601 (Removing the doctype node segfaults). (Hannes) ++ . Fixed bug #54440 (libxml extension ignores default context). (Gustavo) ++ ++- mbstring extension: ++ . Fixed bug #54494 (mb_substr() mishandles UTF-32LE and UCS-2LE). (Gustavo) ++ ++- MCrypt extension: ++ . Change E_ERROR to E_WARNING in mcrypt_create_iv when not enough data ++ has been fetched (Windows). (Pierre) ++ . Fixed bug #55169 (mcrypt_create_iv always fails to gather sufficient random ++ data on Windows). (Pierre) + + - mysqlnd - . Fixed return value of mysqli_stmt_affected_rows() in the time after - prepare() and before execute(). (Andrey) ++ . Fixed crash when using more than 28,000 bound parameters. Workaround is to ++ set mysqlnd.net_cmd_buffer_size to at least 9000. (Andrey) ++ . Fixed bug #54674 mysqlnd valid_sjis_(head|tail) is using invalid operator ++ and range). (nihen at megabbs dot com, Andrey) + -- cURL: - . Added new functions curl_escape, curl_multi_setopt, curl_multi_strerror - curl_pause, curl_reset, curl_share_close, curl_share_init, - curl_share_setopt curl_strerror and curl_unescape. (Pierrick) - . Addes new curl options CURLOPT_TELNETOPTIONS, CURLOPT_GSSAPI_DELEGATION, - CURLOPT_ACCEPTTIMEOUT_MS, CURLOPT_SSL_OPTIONS, CURLOPT_TCP_KEEPALIVE, - CURLOPT_TCP_KEEPIDLE and CURLOPT_TCP_KEEPINTVL. (Pierrick) ++- MySQLi extension: ++ . Fixed bug #55283 (SSL options set by mysqli_ssl_set ignored for MySQLi ++ persistent connections). (Andrey) ++ . Fixed Bug #54221 (mysqli::get_warnings segfault when used in multi queries). ++ (Andrey) + -18 Dec 2012, PHP 5.5.0 Alpha 2 ++- OpenSSL extension: ++ . openssl_encrypt()/openssl_decrypt() truncated keys of variable length ++ ciphers to the OpenSSL default for the algorithm. (Scott) ++ . On blocking SSL sockets respect the timeout option where possible. ++ (Scott) ++ . Fixed bug #54992 (Stream not closed and error not returned when SSL ++ CN_match fails). (Gustavo, laird_ngrps at dodo dot com dot au) + -- General improvements: - . Added systemtap support by enabling systemtap compatible dtrace probes on - linux. (David Soria Parra) - . Added support for using empty() on the result of function calls and - other expressions (https://wiki.php.net/rfc/empty_isset_exprs). - (Nikita Popov) - . Optimized access to temporary and compiled VM variables. 8% less memory - reads. (Dmitry) - . The VM stacks for passing function arguments and syntaticaly nested calls - were merged into a single stack. The stack size needed for op_array - execution is calculated at compile time and preallocated at once. As result - all the stack push operatins don't require checks for stack overflow - any more. (Dmitry) - -- MySQL - . This extension is now deprecated, and deprecation warnings will be generated - when connections are established to databases via mysql_connect(), - mysql_pconnect(), or through implicit connection: use MySQLi or PDO_MySQL - instead (https://wiki.php.net/rfc/mysql_deprecation). (Adam) ++- Oracle Database extension (OCI8): ++ . Added oci_client_version() returning the runtime Oracle client library ++ version. (Chris Jones) + -- Fileinfo: - . Fixed bug #63590 (Different results in TS and NTS under Windows). - (Anatoliy) ++. PCRE extension: ++ . Increased the backtrack limit from 100000 to 1000000 (Rasmus) + -- Apache2 Handler SAPI: - . Enabled Apache 2.4 configure option for Windows (Pierre, Anatoliy) ++- PDO extension: ++ . Fixed bug #54929 (Parse error with single quote in sql comment). (Felipe) ++ . Fixed bug #52104 (bindColumn creates Warning regardless of ATTR_ERRMODE ++ settings). (Ilia) + -13 Nov 2012, PHP 5.5.0 Alpha 1 ++- PDO DBlib driver: ++ . Fixed bug #54329 (MSSql extension memory leak). ++ (dotslashpok at gmail dot com) ++ . Fixed bug #54167 (PDO_DBLIB returns null on SQLUNIQUE field). ++ (mjh at hodginsmedia dot com, Felipe) + -- General improvements: - . Added generators and coroutines (https://wiki.php.net/rfc/generators). - (Nikita Popov) - . Added "finally" keyword (https://wiki.php.net/rfc/finally). (Laruence) - . Add simplified password hashing API - (https://wiki.php.net/rfc/password_hash). (Anthony Ferrara) - . Added support for list in foreach (https://wiki.php.net/rfc/foreachlist). - (Laruence) - . Added support for using empty() on the result of function calls and - other expressions (https://wiki.php.net/rfc/empty_isset_exprs). - (Nikita Popov) - . Added support for constant array/string dereferencing. (Laruence) - . Improve set_exception_handler while doing reset.(Laruence) - . Remove php_logo_guid(), php_egg_logo_guid(), php_real_logo_guid(), - zend_logo_guid(). (Adnrew Faulds) - . Drop Windows XP and 2003 support. (Pierre) ++- PDO ODBC driver: ++ . Fixed data type usage in 64bit. (leocsilva at gmail dot com) + -- Calendar: - . Fixed bug #54254 (cal_from_jd returns month = 6 when there is only one Adar) - (Stas, Eitan Mosenkis) ++- PDO MySQL driver: ++ . Fixed bug #54644 (wrong pathes in php_pdo_mysql_int.h). (Tony, Johannes) ++ . Fixed bug #53782 (foreach throws irrelevant exception). (Johannes, Andrey) ++ . Implemented FR #48587 (MySQL PDO driver doesn't support SSL connections). ++ (Rob) + -- Core: - . Added boolval(). (Jille Timmermans) - . Added "Z" option to pack/unpack. (Gustavo) - . Implemented FR #60738 (Allow 'set_error_handler' to handle NULL). - (Laruence, Nikita Popov) - . Added optional second argument for assert() to specify custom message. Patch - by Lonny Kapelushnik (lonny@lonnylot.com). (Lars) - . Fixed bug #18556 (Engine uses locale rules to handle class names). (Stas) - . Fixed bug #61681 (Malformed grammar). (Nikita Popov, Etienne, Laruence) - . Fixed bug #61038 (unpack("a5", "str\0\0") does not work as expected). - (srgoogleguy, Gustavo) - . Return previous handler when passing NULL to set_error_handler and - set_exception_handler. (Nikita Popov) ++- PDO PostgreSQL driver: ++ . Fixed bug #54318 (Non-portable grep option used in PDO pgsql ++ configuration). (bwalton at artsci dot utoronto dot ca) + -- cURL: - . Added support for CURLOPT_FTP_RESPONSE_TIMEOUT, CURLOPT_APPEND, - CURLOPT_DIRLISTONLY, CURLOPT_NEW_DIRECTORY_PERMS, CURLOPT_NEW_FILE_PERMS, - CURLOPT_NETRC_FILE, CURLOPT_PREQUOTE, CURLOPT_KRBLEVEL, CURLOPT_MAXFILESIZE, - CURLOPT_FTP_ACCOUNT, CURLOPT_COOKIELIST, CURLOPT_IGNORE_CONTENT_LENGTH, - CURLOPT_CONNECT_ONLY, CURLOPT_LOCALPORT, CURLOPT_LOCALPORTRANGE, - CURLOPT_FTP_ALTERNATIVE_TO_USER, CURLOPT_SSL_SESSIONID_CACHE, - CURLOPT_FTP_SSL_CCC, CURLOPT_HTTP_CONTENT_DECODING, - CURLOPT_HTTP_TRANSFER_DECODING, CURLOPT_PROXY_TRANSFER_MODE, - CURLOPT_ADDRESS_SCOPE, CURLOPT_CRLFILE, CURLOPT_ISSUERCERT, - CURLOPT_USERNAME, CURLOPT_PASSWORD, CURLOPT_PROXYUSERNAME, - CURLOPT_PROXYPASSWORD, CURLOPT_NOPROXY, CURLOPT_SOCKS5_GSSAPI_NEC, - CURLOPT_SOCKS5_GSSAPI_SERVICE, CURLOPT_TFTP_BLKSIZE, - CURLOPT_SSH_KNOWNHOSTS, CURLOPT_FTP_USE_PRET, CURLOPT_MAIL_FROM, - CURLOPT_MAIL_RCPT, CURLOPT_RTSP_CLIENT_CSEQ, CURLOPT_RTSP_SERVER_CSEQ, - CURLOPT_RTSP_SESSION_ID, CURLOPT_RTSP_STREAM_URI, CURLOPT_RTSP_TRANSPORT, - CURLOPT_RTSP_REQUEST, CURLOPT_RESOLVE, CURLOPT_ACCEPT_ENCODING, - CURLOPT_TRANSFER_ENCODING, CURLOPT_DNS_SERVERS and CURLOPT_USE_SSL. - (Pierrick) - . Fixed bug #55635 (CURLOPT_BINARYTRANSFER no longer used. The constant - still exists for backward compatibility but is doing nothing). (Pierrick) - . Fixed bug #54995 (Missing CURLINFO_RESPONSE_CODE support). (Pierrick) - -- Datetime - . Fixed bug #61642 (modify("+5 weekdays") returns Sunday). - (Dmitri Iouchtchenko) - -- Hash - . Added support for PBKDF2 via hash_pbkdf2(). (Anthony Ferrara) - -- Intl - . The intl extension now requires ICU 4.0+. - . Added intl.use_exceptions INI directive, which controls what happens when - global errors are set together with intl.error_level. (Gustavo) - . MessageFormatter::format() and related functions now accepted named - arguments and mixed numeric/named arguments in ICU 4.8+. (Gustavo) - . MessageFormatter::format() and related functions now don't error out when - an insufficient argument count is provided. Instead, the placeholders will - remain unsubstituted. (Gustavo) - . MessageFormatter::parse() and MessageFormat::format() (and their static - equivalents) don't throw away better than second precision in the arguments. ++- PDO Oracle driver: ++ . Fixed bug #44989 (64bit Oracle RPMs still not supported by pdo-oci). ++ (jbnance at tresgeek dot net) ++ ++- Phar extension: ++ . Fixed bug #54395 (Phar::mount() crashes when calling with wrong parameters). ++ (Felipe) ++ ++- PHP-FPM SAPI: ++ . Implemented FR #54499 (FPM ping and status_path should handle HEAD request). (fat) ++ . Implemented FR #54172 (Overriding the pid file location of php-fpm). (fat) ++ . Fixed missing Expires and Cache-Control headers for ping and status pages. ++ (fat) ++ . Fixed memory leak. (fat) Reported and fixed by Giovanni Giacobbi. ++ . Fixed wrong value of log_level when invoking fpm with -tt. (fat) ++ . Added xml format to the status page. (fat) ++ . Removed timestamp in logs written by children processes. (fat) ++ . Fixed exit at FPM startup on fpm_resources_prepare() errors. (fat) ++ . Added master rlimit_files and rlimit_core in the global configuration ++ settings. (fat) ++ . Removed pid in debug logs written by chrildren processes. (fat) ++ . Added custom access log (also added per request %CPU and memory ++ mesurement). (fat) ++ . Added a real scoreboard and several improvements to the status page. (fat) ++ ++- Reflection extension: ++ . Fixed bug #54347 (reflection_extension does not lowercase module function ++ name). (Felipe, laruence at yahoo dot com dot cn) ++ ++- SOAP extension: ++ . Fixed bug #55323 (SoapClient segmentation fault when XSD_TYPEKIND_EXTENSION ++ contains itself). (Dmitry) ++ . Fixed bug #54312 (soap_version logic bug). (tom at samplonius dot org) ++ ++- Sockets extension: ++ . Fixed stack buffer overflow in socket_connect(). (CVE-2011-1938) ++ Found by Mateusz Kocielski, Marek Kroemeke and Filip Palian. (Felipe) ++ . Changed socket_set_block() and socket_set_nonblock() so they emit warnings ++ on error. (Gustavo) ++ . Fixed bug #51958 (socket_accept() fails on IPv6 server sockets). (Gustavo) ++ ++- SPL extension: ++ . Fixed bug #54971 (Wrong result when using iterator_to_array with use_keys ++ on true). (Pierrick) ++ . Fixed bug #54970 (SplFixedArray::setSize() isn't resizing). (Felipe) ++ . Fixed bug #54609 (Certain implementation(s) of SplFixedArray cause hard ++ crash). (Felipe) ++ . Fixed bug #54384 (Dual iterators, GlobIterator, SplFileObject and ++ SplTempFileObject crash when user-space classes don't call the paren ++ constructor). (Gustavo) ++ . Fixed bug #54292 (Wrong parameter causes crash in ++ SplFileObject::__construct()). (Felipe) ++ . Fixed bug #54291 (Crash iterating DirectoryIterator for dir name starting ++ with \0). (Gustavo) ++ . Fixed bug #54281 (Crash in non-initialized RecursiveIteratorIterator). ++ (Felipe) ++ ++- Streams: ++ . Fixed bug #54946 (stream_get_contents infinite loop). (Hannes) ++ . Fixed bug #54623 (Segfault when writing to a persistent socket after ++ closing a copy of the socket). (Gustavo) ++ . Fixed bug #54681 (addGlob() crashes on invalid flags). (Felipe) ++ ++ ++17 Mar 2011, PHP 5.3.6 ++- Upgraded bundled Sqlite3 to version 3.7.4. (Ilia) ++- Upgraded bundled PCRE to version 8.11. (Ilia) ++ ++- Zend Engine: ++ . Indirect reference to $this fails to resolve if direct $this is never used ++ in method. (Scott) ++ . Added options to debug backtrace functions. (Stas) ++ . Fixed bug numerous crashes due to setlocale (crash on error, pcre, mysql ++ etc.) on Windows in thread safe mode. (Pierre) ++ . Fixed Bug #53971 (isset() and empty() produce apparently spurious runtime ++ error). (Dmitry) ++ . Fixed Bug #53958 (Closures can't 'use' shared variables by value and by ++ reference). (Dmitry) ++ . Fixed Bug #53629 (memory leak inside highlight_string()). (Hannes, Ilia) ++ . Fixed Bug #51458 (Lack of error context with nested exceptions). (Stas) ++ . Fixed Bug #47143 (Throwing an exception in a destructor causes a fatal ++ error). (Stas) ++ . Fixed bug #43512 (same parameter name can be used multiple times in ++ method/function definition). (Felipe) ++ ++- Core: ++ . Added ability to connect to HTTPS sites through proxy with basic ++ authentication using stream_context/http/header/Proxy-Authorization (Dmitry) ++ . Changed default value of ini directive serialize_precision from 100 to 17. + (Gustavo) - . IntlDateFormatter::__construct and datefmt_create() now accept for the - $timezone argument time zone identifiers, IntlTimeZone objects, DateTimeZone - objects and NULL. (Gustavo) - . IntlDateFormatter::__construct and datefmt_create() no longer accept invalid - timezone identifiers or empty strings. (Gustavo) - . The default time zone used in IntlDateFormatter::__construct and - datefmt_create() (when the corresponding argument is not passed or NULL is - passed) is now the one given by date_default_timezone_get(), not the - default ICU time zone. (Gustavo) - . The time zone passed to the IntlDateFormatter is ignored if it is NULL and - if the calendar passed is an IntlCalendar object -- in this case, the - IntlCalendar's time zone will be used instead. Otherwise, the time zone - specified in the $timezone argument is used instead. This does not affect - old code, as IntlCalendar was introduced in this version. (Gustavo) - . IntlDateFormatter::__construct and datefmt_create() now accept for the - $calendar argument also IntlCalendar objects. (Gustavo) - . IntlDateFormatter::getCalendar() and datefmt_get_calendar() return false - if the IntlDateFormatter was set up with an IntlCalendar instead of the - constants IntlDateFormatter::GREGORIAN/TRADITIONAL. IntlCalendar did not - exist before this version. (Gustavo) - . IntlDateFormatter::setCalendar() and datefmt_set_calendar() now also accept - an IntlCalendar object, in which case its time zone is taken. Passing a - constant is still allowed, and still keeps the time zone. (Gustavo) - . IntlDateFormatter::setTimeZoneID() and datefmt_set_timezone_id() are - deprecated. Use IntlDateFormatter::setTimeZone() or datefmt_set_timezone() - instead. (Gustavo) - . IntlDateFormatter::format() and datefmt_format() now also accept an - IntlCalendar object for formatting. (Gustavo) - . Added the classes: IntlCalendar, IntlGregorianCalendar, IntlTimeZone, - IntlBreakIterator, IntlRuleBasedBreakIterator and - IntlCodePointBreakIterator. (Gustavo) - . Added the functions: intlcal_get_keyword_values_for_locale(), - intlcal_get_now(), intlcal_get_available_locales(), intlcal_get(), - intlcal_get_time(), intlcal_set_time(), intlcal_add(), - intlcal_set_time_zone(), intlcal_after(), intlcal_before(), intlcal_set(), - intlcal_roll(), intlcal_clear(), intlcal_field_difference(), - intlcal_get_actual_maximum(), intlcal_get_actual_minimum(), - intlcal_get_day_of_week_type(), intlcal_get_first_day_of_week(), - intlcal_get_greatest_minimum(), intlcal_get_least_maximum(), - intlcal_get_locale(), intlcal_get_maximum(), - intlcal_get_minimal_days_in_first_week(), intlcal_get_minimum(), - intlcal_get_time_zone(), intlcal_get_type(), - intlcal_get_weekend_transition(), intlcal_in_daylight_time(), - intlcal_is_equivalent_to(), intlcal_is_lenient(), intlcal_is_set(), - intlcal_is_weekend(), intlcal_set_first_day_of_week(), - intlcal_set_lenient(), intlcal_equals(), - intlcal_get_repeated_wall_time_option(), - intlcal_get_skipped_wall_time_option(), - intlcal_set_repeated_wall_time_option(), - intlcal_set_skipped_wall_time_option(), intlcal_from_date_time(), - intlcal_to_date_time(), intlcal_get_error_code(), - intlcal_get_error_message(), intlgregcal_create_instance(), - intlgregcal_set_gregorian_change(), intlgregcal_get_gregorian_change() and - intlgregcal_is_leap_year(). (Gustavo) - . Added the functions: intltz_create_time_zone(), intltz_create_default(), - intltz_get_id(), intltz_get_gmt(), intltz_get_unknown(), - intltz_create_enumeration(), intltz_count_equivalent_ids(), - intltz_create_time_zone_id_enumeration(), intltz_get_canonical_id(), - intltz_get_region(), intltz_get_tz_data_version(), - intltz_get_equivalent_id(), intltz_use_daylight_time(), intltz_get_offset(), - intltz_get_raw_offset(), intltz_has_same_rules(), intltz_get_display_name(), - intltz_get_dst_savings(), intltz_from_date_time_zone(), - intltz_to_date_time_zone(), intltz_get_error_code(), - intltz_get_error_message(). (Gustavo) - . Added the methods: IntlDateFormatter::formatObject(), - IntlDateFormatter::getCalendarObject(), IntlDateFormatter::getTimeZone(), - IntlDateFormatter::setTimeZone(). (Gustavo) - . Added the functions: datefmt_format_object(), datefmt_get_calendar_object(), - datefmt_get_timezone(), datefmt_set_timezone(), - datefmt_get_calendar_object(), intlcal_create_instance(). (Gustavo) - -- MCrypt - . mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb() and mcrypt_ofb() now throw - E_DEPRECATED. (GoogleGuy) - -- MySQLi - . Dropped support for LOAD DATA LOCAL INFILE handlers when using libmysql. - Known for stability problems. (Andrey) - . Added support for SHA256 authentication available with MySQL 5.6.6+. ++ . Fixed bug #54055 (buffer overrun with high values for precision ini ++ setting). (Gustavo) ++ . Fixed bug #53959 (reflection data for fgetcsv out-of-date). (Richard) ++ . Fixed bug #53577 (Regression introduced in 5.3.4 in open_basedir with a ++ trailing forward slash). (lekensteyn at gmail dot com, Pierre) ++ . Fixed bug #53682 (Fix compile on the VAX). (Rasmus, jklos) ++ . Fixed bug #48484 (array_product() always returns 0 for an empty array). ++ (Ilia) ++ . Fixed bug #48607 (fwrite() doesn't check reply from ftp server before ++ exiting). (Ilia) ++ ++ ++- Calendar extension: ++ . Fixed bug #53574 (Integer overflow in SdnToJulian, sometimes leading to ++ segfault). (Gustavo) ++ ++- DOM extension: ++ . Implemented FR #39771 (Made DOMDocument::saveHTML accept an optional DOMNode ++ like DOMDocument::saveXML). (Gustavo) ++ ++- DateTime extension: ++ . Fixed a bug in DateTime->modify() where absolute date/time statements had ++ no effect. (Derick) ++ . Fixed bug #53729 (DatePeriod fails to initialize recurrences on 64bit ++ big-endian systems). (Derick, rein@basefarm.no) ++ . Fixed bug #52808 (Segfault when specifying interval as two dates). (Stas) ++ . Fixed bug #52738 (Can't use new properties in class extended from ++ DateInterval). (Stas) ++ . Fixed bug #52290 (setDate, setISODate, setTime works wrong when DateTime ++ created from timestamp). (Stas) ++ . Fixed bug #52063 (DateTime constructor's second argument doesn't have a ++ null default value). (Gustavo, Stas) ++ ++- Exif extension: ++ . Fixed bug #54002 (crash on crafted tag, reported by Luca Carettoni). ++ (Pierre) (CVE-2011-0708) ++ ++- Filter extension: ++ . Fixed bug #53924 (FILTER_VALIDATE_URL doesn't validate port number). ++ (Ilia, Gustavo) ++ . Fixed bug #53150 (FILTER_FLAG_NO_RES_RANGE is missing some IP ranges). ++ (Ilia) ++ . Fixed bug #52209 (INPUT_ENV returns NULL for set variables (CLI)). (Ilia) ++ . Fixed bug #47435 (FILTER_FLAG_NO_RES_RANGE don't work with ipv6). ++ (Ilia, valli at icsurselva dot ch) ++ ++- Fileinfo extension: ++ . Fixed bug #54016 (finfo_file() Cannot determine filetype in archives). ++ (Hannes) ++ ++- Gettext ++ . Fixed bug #53837 (_() crashes on Windows when no LANG or LANGUAGE ++ environment variable are set). (Pierre) ++ ++- IMAP extension: ++ . Implemented FR #53812 (get MIME headers of the part of the email). (Stas) ++ . Fixed bug #53377 (imap_mime_header_decode() doesn't ignore \t during long ++ MIME header unfolding). (Adam) ++ ++- Intl extension: ++ . Fixed bug #53612 (Segmentation fault when using cloned several intl ++ objects). (Gustavo) ++ . Fixed bug #53512 (NumberFormatter::setSymbol crash on bogus $attr values). ++ (Felipe) ++ . Implemented clone functionality for number, date & message formatters. ++ (Stas). ++ ++- JSON extension: ++ . Fixed bug #53963 (Ensure error_code is always set during some failed ++ decodings). (Scott) ++ ++- mysqlnd ++ . Fixed problem with always returning 0 as num_rows for unbuffered sets. ++ (Andrey, Ulf) ++ ++- MySQL Improved extension: ++ . Added 'db' and 'catalog' keys to the field fetching functions (FR #39847). ++ (Kalle) ++ . Fixed buggy counting of affected rows when using the text protocol. The ++ collected statistics were wrong when multi_query was used with mysqlnd + (Andrey) ++ . Fixed bug #53795 (Connect Error from MySqli (mysqlnd) when using SSL). ++ (Kalle) ++ . Fixed bug #53503 (mysqli::query returns false after successful LOAD DATA ++ query). (Kalle, Andrey) ++ . Fixed bug #53425 (mysqli_real_connect() ignores client flags when built to ++ call libmysql). (Kalle, tre-php-net at crushedhat dot com) + -- PCRE: - . Deprecated the /e modifier - (https://wiki.php.net/rfc/remove_preg_replace_eval_modifier). (Nikita Popov) - . Fixed bug #63284 (Upgrade PCRE to 8.31). (Anatoliy) ++- OpenSSL extension: ++ . Fixed stream_socket_enable_crypto() not honoring the socket timeout in ++ server mode. (Gustavo) ++ . Fixed bug #54060 (Memory leaks when openssl_encrypt). (Pierre) ++ . Fixed bug #54061 (Memory leaks when openssl_decrypt). (Pierre) ++ . Fixed bug #53592 (stream_socket_enable_crypto() busy-waits in client mode). ++ (Gustavo) ++ . Implemented FR #53447 (Cannot disable SessionTicket extension for servers ++ that do not support it) by adding a no_ticket SSL context option. (Adam, ++ Tony) + -- pgsql - . Added pg_escape_literal() and pg_escape_identifier() (Yasuo) ++- PDO MySQL driver: ++ . Fixed bug #53551 (PDOStatement execute segfaults for pdo_mysql driver). ++ (Johannes) ++ . Implemented FR #47802 (Support for setting character sets in DSN strings). ++ (Kalle) + -- SPL - . Fix bug #60560 (SplFixedArray un-/serialize, getSize(), count() return 0, - keys are strings). (Adam) ++- PDO Oracle driver: ++ . Fixed bug #39199 (Cannot load Lob data with more than 4000 bytes on ++ ORACLE 10). (spatar at mail dot nnov dot ru) ++ ++- PDO PostgreSQL driver: ++ . Fixed bug #53517 (segfault in pgsql_stmt_execute() when postgres is down). ++ (gyp at balabit dot hu) + -- Tokenizer: - . Fixed bug #60097 (token_get_all fails to lex nested heredoc). (Nikita Popov) ++- Phar extension: ++ . Fixed bug #54247 (format-string vulnerability on Phar). (Felipe) ++ (CVE-2011-1153) ++ . Fixed bug #53541 (format string bug in ext/phar). ++ (crrodriguez at opensuse dot org, Ilia) ++ . Fixed bug #53898 (PHAR reports invalid error message, when the directory ++ does not exist). (Ilia) + -- Zip: - . Upgraded libzip to 0.10.1 (Anatoliy) ++- PHP-FPM SAPI: ++ . Enforce security in the fastcgi protocol parsing. ++ (ef-lists at email dotde) ++ . Fixed bug #53777 (php-fpm log format now match php_error log format). (fat) ++ . Fixed bug #53527 (php-fpm --test doesn't set a valuable return value). (fat) ++ . Fixed bug #53434 (php-fpm slowlog now also logs the original request). (fat) + -- Fileinfo: - . Fixed bug #63248 (Load multiple magic files from a directory under Windows). - (Anatoliy) ++- Readline extension: ++ . Fixed bug #53630 (Fixed parameter handling inside readline() function). ++ (jo at feuersee dot de, Ilia) ++ ++- Reflection extension: ++ . Fixed bug #53915 (ReflectionClass::getConstant(s) emits fatal error on ++ constants with self::). (Gustavo) ++ ++- Shmop extension: ++ . Fixed bug #54193 (Integer overflow in shmop_read()). (Felipe) ++ Reported by Jose Carlos Norte (CVE-2011-1092) ++ ++- SNMP extension: ++ . Fixed bug #51336 (snmprealwalk (snmp v1) does not handle end of OID tree ++ correctly). (Boris Lytochkin) ++ ++- SOAP extension: ++ . Fixed possible crash introduced by the NULL poisoning patch. ++ (Mateusz Kocielski, Pierre) ++ ++- SPL extension: ++ . Fixed memory leak in DirectoryIterator::getExtension() and ++ SplFileInfo::getExtension(). (Felipe) ++ . Fixed bug #53914 (SPL assumes HAVE_GLOB is defined). (Chris Jones) ++ . Fixed bug #53515 (property_exists incorrect on ArrayObject null and 0 ++ values). (Felipe) ++ . Fixed bug #49608 (Using CachingIterator on DirectoryIterator instance ++ segfaults). (Felipe) ++ ++ . Added SplFileInfo::getExtension(). FR #48767. (Peter Cowburn) ++ ++- SQLite3 extension: ++ . Fixed memory leaked introduced by the NULL poisoning patch. ++ (Mateusz Kocielski, Pierre) ++ . Fixed memory leak on SQLite3Result and SQLite3Stmt when assigning to a ++ reference. (Felipe) ++ . Add SQlite3_Stmt::readonly() for checking if a statement is read only. ++ (Scott) ++ . Implemented FR #53466 (SQLite3Result::columnType() should return false after ++ all of the rows have been fetched). (Scott) ++ ++- Streams: ++ . Fixed bug #54092 (Segmentation fault when using HTTP proxy with the FTP ++ wrapper). (Gustavo) ++ . Fixed bug #53913 (Streams functions assume HAVE_GLOB is defined). (Chris ++ Jones) ++ . Fixed bug #53903 (userspace stream stat callback does not separate the ++ elements of the returned array before converting them). (Gustavo) ++ . Implemented FR #26158 (open arbitrary file descriptor with fopen). (Gustavo) ++ ++- Tokenizer Extension ++ . Fixed bug #54089 (token_get_all() does not stop after __halt_compiler). ++ (Nikita Popov, Ilia) ++ ++- XSL extension: ++ . Fixed memory leaked introduced by the NULL poisoning patch. ++ (Mateusz Kocielski, Pierre) ++ ++- Zip extension: ++ . Added the filename into the return value of stream_get_meta_data(). (Hannes) ++ . Fixed bug #53923 (Zip functions assume HAVE_GLOB is defined). (Adam) ++ . Fixed bug #53893 (Wrong return value for ZipArchive::extractTo()). (Pierre) ++ . Fixed bug #53885 (ZipArchive segfault with FL_UNCHANGED on empty archive). ++ (Stas, Maksymilian Arciemowicz). (CVE-2011-0421) ++ . Fixed bug #53854 (Missing constants for compression type). (Richard, Adam) ++ . Fixed bug #53603 (ZipArchive should quiet stat errors). (brad dot froehle at ++ gmail dot com, Gustavo) ++ . Fixed bug #53579 (stream_get_contents() segfaults on ziparchive streams). ++ (Hannes) ++ . Fixed bug #53568 (swapped memset arguments in struct initialization). ++ (crrodriguez at opensuse dot org) ++ . Fixed bug #53166 (Missing parameters in docs and reflection definition). ++ (Richard) ++ . Fixed bug #49072 (feof never returns true for damaged file in zip). ++ (Gustavo, Richard Quadling) ++ ++06 Jan 2011, PHP 5.3.5 ++- Fixed Bug #53632 (infinite loop with x87 fpu). (CVE-2010-4645) (Scott, ++ Rasmus) ++ ++09 Dec 2010, PHP 5.3.4 ++- Upgraded bundled Sqlite3 to version 3.7.3. (Ilia) ++- Upgraded bundled PCRE to version 8.10. (Ilia) ++ ++- Security enhancements: ++ . Fixed crash in zip extract method (possible CWE-170). ++ (Maksymilian Arciemowicz, Pierre) ++ . Paths with NULL in them (foo\0bar.txt) are now considered as invalid. ++ (Rasmus) ++ . Fixed a possible double free in imap extension (Identified by Mateusz ++ Kocielski). (CVE-2010-4150). (Ilia) ++ . Fixed NULL pointer dereference in ZipArchive::getArchiveComment. ++ (CVE-2010-3709). (Maksymilian Arciemowicz) ++ . Fixed possible flaw in open_basedir (CVE-2010-3436). (Pierre) ++ . Fixed MOPS-2010-24, fix string validation. (CVE-2010-2950). (Pierre) ++ . Fixed symbolic resolution support when the target is a DFS share. (Pierre) ++ . Fixed bug #52929 (Segfault in filter_var with FILTER_VALIDATE_EMAIL with ++ large amount of data) (CVE-2010-3710). (Adam) + + - General improvements: - . Implemented FR #46487 (Dereferencing process-handles no longer waits on - those processes). (Jille Timmermans) ++ . Added stat support for zip stream. (Pierre) ++ . Added follow_location (enabled by default) option for the http stream ++ support. (Pierre) ++ . Improved support for is_link and related functions on Windows. (Pierre) ++ . Added a 3rd parameter to get_html_translation_table. It now takes a charset ++ hint, like htmlentities et al. (Gustavo) ++ ++- Implemented feature requests: ++ . Implemented FR #52348, added new constant ZEND_MULTIBYTE to detect ++ zend multibyte at runtime. (Kalle) ++ . Implemented FR #52173, added functions pcntl_get_last_error() and ++ pcntl_strerror(). (nick dot telford at gmail dot com, Arnaud) ++ . Implemented symbolic links support for open_basedir checks. (Pierre) ++ . Implemented FR #51804, SplFileInfo::getLinkTarget on Windows. (Pierre) ++ . Implemented FR #50692, not uploaded files don't count towards ++ max_file_uploads limit. As a side improvement, temporary files are not ++ opened for empty uploads and, in debug mode, 0-length uploads. (Gustavo) ++ ++- Improved MySQLnd: ++ . Added new character sets to mysqlnd, which are available in MySQL 5.5 ++ (Andrey) ++ ++- Improved PHP-FPM SAPI: ++ . Added '-p/--prefix' to php-fpm to use a custom prefix and run multiple ++ instances. (fat) ++ . Added custom process title for FPM. (fat) ++ . Added '-t/--test' to php-fpm to check and validate FPM conf file. (fat) ++ . Added statistics about listening socket queue length for FPM. ++ (andrei dot nigmatulin at gmail dot com, fat) ++ ++- Core: ++ . Fixed extract() to do not overwrite $GLOBALS and $this when using ++ EXTR_OVERWRITE. (jorto at redhat dot com) ++ . Fixed bug in the Windows implementation of dns_get_record, where the two ++ last parameters wouldn't be filled unless the type were DNS_ANY (Gustavo). ++ . Changed the $context parameter on copy() to actually have an effect. (Kalle) ++ . Fixed htmlentities/htmlspecialchars accepting certain ill-formed UTF-8 ++ sequences. (Gustavo) ++ . Fixed bug #53409 (sleep() returns NULL on Windows). (Pierre) ++ . Fixed bug #53319 (strip_tags() may strip '
' incorrectly). (Felipe) ++ . Fixed bug #53304 (quot_print_decode does not handle lower-case hex digits). ++ (Ilia, daniel dot mueller at inexio dot net) ++ . Fixed bug #53248 (rawurlencode RFC 3986 EBCDIC support misses tilde char). ++ (Justin Martin) ++ . Fixed bug #53226 (file_exists fails on big filenames). (Adam) ++ . Fixed bug #53198 (changing INI setting "from" with ini_set did not have any ++ effect). (Gustavo) ++ . Fixed bug #53180 (post_max_size=0 not disabling the limit when the content ++ type is application/x-www-form-urlencoded or is not registered with PHP). ++ (gm at tlink dot de, Gustavo) ++ . Fixed bug #53141 (autoload misbehaves if called from closing session). ++ (ladislav at marek dot su) ++ . Fixed bug #53021 (In html_entity_decode, failure to convert numeric entities ++ with ENT_NOQUOTES and ISO-8859-1). Fixed and extended the fix of ++ ENT_NOQUOTES in html_entity_decode that had introduced the bug (rev ++ #185591) to other encodings. Additionaly, html_entity_decode() now doesn't ++ decode " if ENT_NOQUOTES is given. (Gustavo) ++ . Fixed bug #52931 (strripos not overloaded with function overloading ++ enabled). (Felipe) ++ . Fixed bug #52772 (var_dump() doesn't check for the existence of ++ get_class_name before calling it). (Kalle, Gustavo) ++ . Fixed bug #52534 (var_export array with negative key). (Felipe) ++ . Fixed bug #52327 (base64_decode() improper handling of leading padding in ++ strict mode). (Ilia) ++ . Fixed bug #52260 (dns_get_record fails with non-existing domain on Windows). ++ (a_jelly_doughnut at phpbb dot com, Pierre) ++ . Fixed bug #50953 (socket will not connect to IPv4 address when the host has ++ both IPv4 and IPv6 addresses, on Windows). (Gustavo, Pierre) ++ . Fixed bug #50524 (proc_open on Windows does not respect cwd as it does on ++ other platforms). (Pierre) ++ . Fixed bug #49687 (utf8_decode vulnerabilities and deficiencies in the number ++ of reported malformed sequences). (CVE-2010-3870) (Gustavo) ++ . Fixed bug #49407 (get_html_translation_table doesn't handle UTF-8). ++ (Gustavo) ++ . Fixed bug #48831 (php -i has different output to php --ini). (Richard, ++ Pierre) ++ . Fixed bug #47643 (array_diff() takes over 3000 times longer than php 5.2.4). ++ (Felipe) ++ . Fixed bug #47168 (printf of floating point variable prints maximum of 40 ++ decimal places). (Ilia) ++ . Fixed bug #46587 (mt_rand() does not check that max is greater than min). ++ (Ilia) ++ . Fixed bug #29085 (bad default include_path on Windows). (Pierre) ++ . Fixed bug #25927 (get_html_translation_table calls the ' ' instead of ++ '). (Gustavo) ++ ++- Zend engine: ++ . Reverted fix for bug #51176 (Static calling in non-static method behaves ++ like $this->). (Felipe) ++ . Changed deprecated ini options on startup from E_WARNING to E_DEPRECATED. ++ (Kalle) ++ . Fixed NULL dereference in lex_scan on zend multibyte builds where the script ++ had a flex incompatible encoding and there was no converter. (Gustavo) ++ . Fixed covariance of return-by-ref constraints. (Etienne) ++ . Fixed bug #53305 (E_NOTICE when defining a constant starts with ++ __COMPILER_HALT_OFFSET__). (Felipe) ++ . Fixed bug #52939 (zend_call_function does not respect ZEND_SEND_PREFER_REF). ++ (Dmitry) ++ . Fixed bug #52879 (Objects unreferenced in __get, __set, __isset or __unset ++ can be freed too early). (mail_ben_schmidt at yahoo dot com dot au, Dmitry) ++ . Fixed bug #52786 (PHP should reset section to [PHP] after ini sections). ++ (Fedora at famillecollet dot com) ++ . Fixed bug #52508 (newline problem with parse_ini_file+INI_SCANNER_RAW). ++ (Felipe) ++ . Fixed bug #52484 (__set() ignores setting properties with empty names). ++ (Felipe) ++ . Fixed bug #52361 (Throwing an exception in a destructor causes invalid ++ catching). (Dmitry) ++ . Fixed bug #51008 (Zend/tests/bug45877.phpt fails). (Dmitry) ++ ++- Build issues: ++ . Fixed bug #52436 (Compile error if systems do not have stdint.h) ++ (Sriram Natarajan) ++ . Fixed bug #50345 (nanosleep not detected properly on some solaris versions). ++ (Ulf, Tony) ++ . Fixed bug #49215 (make fails on glob_wrapper). (Felipe) ++ ++- Calendar extension: ++ . Fixed bug #52744 (cal_days_in_month incorrect for December 1 BCE). ++ (gpap at internet dot gr, Adam) ++ ++- cURL extension: ++ . Fixed bug #52828 (curl_setopt does not accept persistent streams). ++ (Gustavo, Ilia) ++ . Fixed bug #52827 (cURL leaks handle and causes assertion error ++ (CURLOPT_STDERR)). (Gustavo) ++ . Fixed bug #52202 (CURLOPT_PRIVATE gets corrupted). (Ilia) ++ . Fixed bug #50410 (curl extension slows down PHP on Windows). (Pierre) ++ ++- DateTime extension: ++ . Fixed bug #53297 (gettimeofday implementation in php/win32/time.c can return ++ 1 million microsecs). (ped at 7gods dot org) ++ . Fixed bug #52668 (Iterating over a dateperiod twice is broken). (Derick) ++ . Fixed bug #52454 (Relative dates and getTimestamp increments by one day). ++ (Derick) ++ . Fixed bug #52430 (date_parse parse 24:xx:xx as valid time). (Derick) ++ . Added support for the ( and ) delimiters/separators to ++ DateTime::createFromFormat(). (Derick) ++ ++- DBA extension: ++ . Added Berkeley DB 5.1 support to the DBA extension. (Oracle Corp.) ++ ++- DOM extension: ++ . Fixed bug #52656 (DOMCdataSection does not work with splitText). (Ilia) ++ ++- Filter extension: ++ . Fixed the filter extension accepting IPv4 octets with a leading 0 as that ++ belongs to the unsupported "dotted octal" representation. (Gustavo) ++ . Fixed bug #53236 (problems in the validation of IPv6 addresses with leading ++ and trailing :: in the filter extension). (Gustavo) ++ . Fixed bug #50117 (problems in the validation of IPv6 addresses with IPv4 ++ addresses and ::). (Gustavo) ++ ++- GD extension: ++ . Fixed bug #53492 (fix crash if anti-aliasing steps are invalid). (Pierre) ++ . Fixed potential memory leak on a png error (Rasmus, Paul Saab) ++ ++- GMP extension: ++ . Fixed bug #52906 (gmp_mod returns negative result when non-negative is ++ expected). (Stas) ++ . Fixed bug #52849 (GNU MP invalid version match). (Adam) ++ ++- Hash extension: ++ . Fixed bug #51003 (unaligned memory access in ext/hash/hash_tiger.c). ++ (Mike, Ilia) ++ ++- Iconv extension: ++ . Fixed bug #52941 (The 'iconv_mime_decode_headers' function is skipping ++ headers). (Adam) ++ . Fixed bug #52599 (iconv output handler outputs incorrect content type ++ when flags are used). (Ilia) ++ . Fixed bug #51250 (iconv_mime_decode() does not ignore malformed Q-encoded ++ words). (Ilia) ++ ++- Intl extension: ++ . Fixed crashes on invalid parameters in intl extension. (CVE-2010-4409). ++ (Stas, Maksymilian Arciemowicz) ++ . Added support for formatting the timestamp stored in a DateTime object. ++ (Stas) ++ . Fixed bug #50590 (IntlDateFormatter::parse result is limited to the integer ++ range). (Stas) ++ ++- Mbstring extension: ++ . Fixed bug #53273 (mb_strcut() returns garbage with the excessive length ++ parameter). (CVE-2010-4156) (Mateusz Kocielski, Pierre, Moriyoshi) ++ . Fixed bug #52981 (Unicode casing table was out-of-date. Updated with ++ UnicodeData-6.0.0d7.txt and included the source of the generator program ++ with the distribution) (Gustavo). ++ . Fixed bug #52681 (mb_send_mail() appends an extra MIME-Version header). ++ (Adam) ++ ++- MSSQL extension: ++ . Fixed possible crash in mssql_fetch_batch(). (Kalle) ++ . Fixed bug #52843 (Segfault when optional parameters are not passed in to ++ mssql_connect). (Felipe) ++ ++- MySQL extension: ++ . Fixed bug #52636 (php_mysql_fetch_hash writes long value into int). ++ (Kalle, rein at basefarm dot no) ++ ++- MySQLi extension: ++ . Fixed bug #52891 (Wrong data inserted with mysqli/mysqlnd when using ++ mysqli_stmt_bind_param and value> PHP_INT_MAX). (Andrey) ++ . Fixed bug #52686 (mysql_stmt_attr_[gs]et argument points to incorrect type). ++ (rein at basefarm dot no) ++ . Fixed bug #52654 (mysqli doesn't install headers with structures it uses). ++ (Andrey) ++ . Fixed bug #52433 (Call to undefined method mysqli::poll() - must be static). ++ (Andrey) ++ . Fixed bug #52417 (MySQLi build failure with mysqlnd on MacOS X). (Andrey) ++ . Fixed bug #52413 (MySQLi/libmysql build failure on OS X, FreeBSD). (Andrey) ++ . Fixed bug #52390 (mysqli_report() should be per-request setting). (Kalle) ++ . Fixed bug #52302 (mysqli_fetch_all does not work with MYSQLI_USE_RESULT). ++ (Andrey) ++ . Fixed bug #52221 (Misbehaviour of magic_quotes_runtime (get/set)). (Andrey) ++ . Fixed bug #45921 (Can't initialize character set hebrew). (Andrey) ++ ++- MySQLnd: ++ . Fixed bug #52613 (crash in mysqlnd after hitting memory limit). (Andrey) ++ ++- ODBC extension: ++ - Fixed bug #52512 (Broken error handling in odbc_execute). ++ (mkoegler at auto dot tuwien dot ac dot at) ++ ++- Openssl extension: ++ . Fixed possible blocking behavior in openssl_random_pseudo_bytes on Windows. ++ (Pierre) ++ . Fixed bug #53136 (Invalid read on openssl_csr_new()). (Felipe) ++ . Fixed bug #52947 (segfault when ssl stream option capture_peer_cert_chain ++ used). (Felipe) ++ ++- Oracle Database extension (OCI8): ++ . Fixed bug #53284 (Valgrind warnings in oci_set_* functions) (Oracle Corp.) ++ . Fixed bug #51610 (Using oci_connect causes PHP to take a long time to ++ exit). Requires Oracle 11.2.0.2 client libraries (or Oracle bug fix ++ 9891199) for this patch to have an effect. (Oracle Corp.) ++ ++- PCNTL extension: ++ . Fixed bug #52784 (Race condition when handling many concurrent signals). ++ (nick dot telford at gmail dot com, Arnaud) ++ ++- PCRE extension: ++ . Fixed bug #52971 (PCRE-Meta-Characters not working with utf-8). (Felipe) ++ . Fixed bug #52732 (Docs say preg_match() returns FALSE on error, but it ++ returns int(0)). (slugonamission at gmail dot com) ++ ++- PHAR extension: ++ . Fixed bug #50987 (unaligned memory access in phar.c). ++ (geissert at debian dot org, Ilia) ++ ++- PHP-FPM SAPI: ++ . Fixed bug #53412 (segfault when using -y). (fat) ++ . Fixed inconsistent backlog default value (-1) in FPM on many systems. (fat) ++ . Fixed bug #52501 (libevent made FPM crashed when forking -- libevent has ++ been removed). (fat) ++ . Fixed bug #52725 (gcc builtin atomic functions were sometimes used when they ++ were not available). (fat) ++ . Fixed bug #52693 (configuration file errors are not logged to stderr). (fat) ++ . Fixed bug #52674 (FPM Status page returns inconsistent Content-Type ++ headers). (fat) ++ . Fixed bug #52498 (libevent was not only linked to php-fpm). (fat) ++ ++- PDO: ++ . Fixed bug #52699 (PDO bindValue writes long int 32bit enum). ++ (rein at basefarm dot no) ++ . Fixed bug #52487 (PDO::FETCH_INTO leaks memory). (Felipe) ++ ++- PDO DBLib driver: ++ . Fixed bug #52546 (pdo_dblib segmentation fault when iterating MONEY values). ++ (Felipe) ++ ++- PDO Firebird driver: ++ . Restored firebird support (VC9 builds only). (Pierre) ++ . Fixed bug #53335 (pdo_firebird did not implement rowCount()). ++ (preeves at ibphoenix dot com) ++ . Fixed bug #53323 (pdo_firebird getAttribute() crash). ++ (preeves at ibphoenix dot com) ++ ++- PDO MySQL driver: ++ . Fixed bug #52745 (Binding params doesn't work when selecting a date inside a ++ CASE-WHEN). (Andrey) ++ ++- PostgreSQL extension: ++ . Fixed bug #47199 (pg_delete() fails on NULL). (ewgraf at gmail dot com) ++ ++- Reflection extension: ++ . Fixed ReflectionProperty::isDefault() giving a wrong result for properties ++ obtained with ReflectionClass::getProperties(). (Gustavo) ++- Reflection extension: ++ . Fixed bug #53366 (Reflection doesnt get dynamic property value from ++ getProperty()). (Felipe) ++ . Fixed bug #52854 (ReflectionClass::newInstanceArgs does not work for classes ++ without constructors). (Johannes) ++ ++- SOAP extension: ++ . Fixed bug #44248 (RFC2616 transgression while HTTPS request through proxy ++ with SoapClient object). (Dmitry) ++ ++- SPL extension: ++ . Fixed bug #53362 (Segmentation fault when extending SplFixedArray). (Felipe) ++ . Fixed bug #53279 (SplFileObject doesn't initialise default CSV escape ++ character). (Adam) ++ . Fixed bug #53144 (Segfault in SplObjectStorage::removeAll()). (Felipe) ++ . Fixed bug #53071 (SPLObjectStorage defeats gc_collect_cycles). (Gustavo) ++ . Fixed bug #52573 (SplFileObject::fscanf Segmentation fault). (Felipe) ++ . Fixed bug #51763 (SplFileInfo::getType() does not work symbolic link ++ and directory). (Pierre) ++ . Fixed bug #50481 (Storing many SPLFixedArray in an array crashes). (Felipe) ++ . Fixed bug #50579 (RegexIterator::REPLACE doesn't work). (Felipe) ++ ++- SQLite3 extension: ++ . Fixed bug #53463 (sqlite3 columnName() segfaults on bad column_number). ++ (Felipe) ++ ++- Streams: ++ . Fixed forward stream seeking emulation in streams that don't support seeking ++ in situations where the read operation gives back less data than requested ++ and when there was data in the buffer before the emulation started. Also ++ made more consistent its behavior -- should return failure every time less ++ data than was requested was skipped. (Gustavo) ++ . Fixed bug #53241 (stream casting that relies on fdopen/fopencookie fails ++ with streams opened with, inter alia, the 'xb' mode). (Gustavo) ++ . Fixed bug #53006 (stream_get_contents has an unpredictable behavior when the ++ underlying stream does not support seeking). (Gustavo) ++ . Fixed bug #52944 (Invalid write on second and subsequent reads with an ++ inflate filter fed invalid data). (Gustavo) ++ . Fixed bug #52820 (writes to fopencookie FILE* not commited when seeking the ++ stream). (Gustavo) ++ ++- WDDX extension: ++ . Fixed bug #52468 (wddx_deserialize corrupts integer field value when left ++ empty). (Felipe) ++ ++- Zlib extension: ++ . Fixed bug #52926 (zlib fopen wrapper does not use context). (Gustavo) ++ ++22 Jul 2010, PHP 5.3.3 ++- Upgraded bundled sqlite to version 3.6.23.1. (Ilia) ++- Upgraded bundled PCRE to version 8.02. (Ilia) ++ ++- Added support for JSON_NUMERIC_CHECK option in json_encode() that converts ++ numeric strings to integers. (Ilia) ++- Added stream_set_read_buffer, allows to set the buffer for read operation. ++ (Pierre) ++- Added stream filter support to mcrypt extension (ported from ++ mcrypt_filter). (Stas) ++- Added full_special_chars filter to ext/filter. (Rasmus) ++- Added backlog socket context option for stream_socket_server(). (Mike) ++- Added fifth parameter to openssl_encrypt()/openssl_decrypt() ++ (string $iv) to use non-NULL IV. ++ Made implicit use of NULL IV a warning. (Sara) ++- Added openssl_cipher_iv_length(). (Sara) ++- Added FastCGI Process Manager (FPM) SAPI. (Tony) ++- Added recent Windows versions to php_uname and fix undefined windows ++ version support. (Pierre) ++- Added Berkeley DB 5 support to the DBA extension. (Johannes, Chris Jones) ++- Added support for copy to/from array/file for pdo_pgsql extension. ++ (Denis Gasparin, Ilia) ++- Added inTransaction() method to PDO, with specialized support for Postgres. ++ (Ilia, Denis Gasparin) ++ ++- Changed namespaced classes so that the ctor can only be named ++ __construct now. (Stas) ++- Reset error state in PDO::beginTransaction() reset error state. (Ilia) ++ ++- Implemented FR#51295 (SQLite3::busyTimeout not existing). (Mark) ++- Implemented FR#35638 (Adding udate to imap_fetch_overview results). ++ (Charles_Duffy at dell dot com ) ++- Rewrote var_export() to use smart_str rather than output buffering, prevents ++ data disclosure if a fatal error occurs (CVE-2010-2531). (Scott) ++- Fixed possible buffer overflows in mysqlnd_list_fields, mysqlnd_change_user. ++ (Andrey) ++- Fixed possible buffer overflows when handling error packets in mysqlnd. ++ Reported by Stefan Esser. (Andrey) ++- Fixed very rare memory leak in mysqlnd, when binding thousands of columns. ++ (Andrey) ++- Fixed a crash when calling an inexistent method of a class that inherits ++ PDOStatement if instantiated directly instead of doing by the PDO methods. ++ (Felipe) ++ ++- Fixed memory leak on error in mcrypt_create_iv on Windows. (Pierre) ++- Fixed a possible crash because of recursive GC invocation. (Dmitry) ++- Fixed a possible resource destruction issues in shm_put_var(). ++ Reported by Stefan Esser. (Dmitry) ++- Fixed a possible information leak because of interruption of XOR operator. ++ Reported by Stefan Esser. (Dmitry) ++- Fixed a possible memory corruption because of unexpected call-time pass by ++ refernce and following memory clobbering through callbacks. ++ Reported by Stefan Esser. (Dmitry) ++- Fixed a possible memory corruption in ArrayObject::uasort(). Reported by ++ Stefan Esser. (Dmitry) ++- Fixed a possible memory corruption in parse_str(). Reported by Stefan Esser. ++ (Dmitry) ++- Fixed a possible memory corruption in pack(). Reported by Stefan Esser. ++ (Dmitry) ++- Fixed a possible memory corruption in substr_replace(). Reported by Stefan ++ Esser. (Dmitry) ++- Fixed a possible memory corruption in addcslashes(). Reported by Stefan ++ Esser. (Dmitry) ++- Fixed a possible stack exhaustion inside fnmatch(). Reported by Stefan ++ Esser. (Ilia) ++- Fixed a possible dechunking filter buffer overflow. Reported by Stefan Esser. ++ (Pierre) ++- Fixed a possible arbitrary memory access inside sqlite extension. Reported ++ by Mateusz Kocielski. (Ilia) ++- Fixed string format validation inside phar extension. Reported by Stefan ++ Esser. (Ilia) ++- Fixed handling of session variable serialization on certain prefix ++ characters. Reported by Stefan Esser. (Ilia) ++- Fixed a NULL pointer dereference when processing invalid XML-RPC ++ requests (Fixes CVE-2010-0397, bug #51288). (Raphael Geissert) ++- Fixed 64-bit integer overflow in mhash_keygen_s2k(). (Clément LECIGNE, Stas) ++- Fixed SplObjectStorage unserialization problems (CVE-2010-2225). (Stas) ++- Fixed the mail.log ini setting when no filename was given. (Johannes) ++ ++- Fixed bug #52317 (Segmentation fault when using mail() on a rhel 4.x (only 64 ++ bit)). (Adam) ++- Fixed bug #52262 (json_decode() shows no errors on invalid UTF-8). ++ (Scott) ++- Fixed bug #52240 (hash_copy() does not copy the HMAC key, causes wrong ++ results and PHP crashes). (Felipe) ++- Fixed bug #52238 (Crash when an Exception occured in iterator_to_array). ++ (Johannes) ++- Fixed bug #52193 (converting closure to array yields empty array). (Felipe) ++- Fixed bug #52183 (Reflectionfunction reports invalid number of arguments for ++ function aliases). (Felipe) ++- Fixed bug #52162 (custom request header variables with numbers are removed). ++ (Sriram Natarajan) ++- Fixed bug #52160 (Invalid E_STRICT redefined constructor error). (Felipe) ++- Fixed bug #52138 (Constants are parsed into the ini file for section names). ++ (Felipe) ++- Fixed bug #52115 (mysqli_result::fetch_all returns null, not an empty array). ++ (Andrey) ++- Fixed bug #52101 (dns_get_record() garbage in 'ipv6' field on Windows). ++ (Pierre) ++- Fixed bug #52082 (character_set_client & character_set_connection reset after ++ mysqli_change_user()). (Andrey) ++- Fixed bug #52043 (GD doesn't recognize latest libJPEG versions). ++ (php at group dot apple dot com, Pierre) ++- Fixed bug #52041 (Memory leak when writing on uninitialized variable returned ++ from function). (Dmitry) ++- Fixed bug #52060 (Memory leak when passing a closure to method_exists()). ++ (Felipe) ++- Fixed bug #52057 (ReflectionClass fails on Closure class). (Felipe) ++- Fixed bug #52051 (handling of case sensitivity of old-style constructors ++ changed in 5.3+). (Felipe) ++- Fixed bug #52037 (Concurrent builds fail in install-programs). (seanius at ++ debian dot org, Kalle) ++- Fixed bug #52019 (make lcov doesn't support TESTS variable anymore). (Patrick) ++- Fixed bug #52010 (open_basedir restrictions mismatch on vacuum command). ++ (Ilia) ++- Fixed bug #52001 (Memory allocation problems after using variable variables). ++ (Dmitry) ++- Fixed bug #51991 (spl_autoload and *nix support with namespace). (Felipe) ++- Fixed bug #51943 (AIX: Several files are out of ANSI spec). (Kalle, ++ coreystup at gmail dot com) ++- Fixed bug #51911 (ReflectionParameter::getDefaultValue() memory leaks with ++ constant array). (Felipe) ++- Fixed bug #51905 (ReflectionParameter fails if default value is an array ++ with an access to self::). (Felipe) ++- Fixed bug #51899 (Parse error in parse_ini_file() function when empy value ++ followed by no newline). (Felipe) ++- Fixed bug #51844 (checkdnsrr does not support types other than MX). (Pierre) ++- Fixed bug #51827 (Bad warning when register_shutdown_function called with ++ wrong num of parameters). (Felipe) ++- Fixed bug #51822 (Segfault with strange __destruct() for static class ++ variables). (Dmitry) ++- Fixed bug #51791 (constant() aborts execution when fail to check undefined ++ constant). (Felipe) ++- Fixed bug #51732 (Fileinfo __construct or open does not work with NULL). ++ (Pierre) ++- Fixed bug #51725 (xmlrpc_get_type() returns true on invalid dates). (Mike) ++- Fixed bug #51723 (Content-length header is limited to 32bit integer with ++ Apache2 on Windows). (Pierre) ++- Fixed bug #51721 (mark DOMNodeList and DOMNamedNodeMap as Traversable). ++ (David Zuelke) ++- Fixed bug #51712 (Test mysql_mysqlnd_read_timeout_long must fail on MySQL4). ++ (Andrey) ++- Fixed bug #51697 (Unsafe operations in free_storage of SPL iterators, ++ causes crash during shutdown). (Etienne) ++- Fixed bug #51690 (Phar::setStub looks for case-sensitive ++ __HALT_COMPILER()). (Ilia) ++- Fixed bug #51688 (ini per dir crashes when invalid document root are given). ++ (Pierre) ++- Fixed bug #51671 (imagefill does not work correctly for small images). ++ (Pierre) ++- Fixed bug #51670 (getColumnMeta causes segfault when re-executing query ++ after calling nextRowset). (Pierrick) ++- Fixed bug #51647 Certificate file without private key (pk in another file) ++ doesn't work. (Andrey) ++- Fixed bug #51629 (CURLOPT_FOLLOWLOCATION error message is misleading). ++ (Pierre) ++- Fixed bug #51627 (script path not correctly evaluated). ++ (russell dot tempero at rightnow dot com) ++- Fixed bug #51624 (Crash when calling mysqli_options()). (Felipe) ++- Fixed bug #51615 (PHP crash with wrong HTML in SimpleXML). (Felipe) ++- Fixed bug #51609 (pg_copy_to: Invalid results when using fourth parameter). ++ (Felipe) ++- Fixed bug #51608 (pg_copy_to: WARNING: nonstandard use of \\ in a string ++ literal). (cbandy at jbandy dot com) ++- Fixed bug #51607 (pg_copy_from does not allow schema in the tablename ++ argument). (cbandy at jbandy dot com) ++- Fixed bug #51605 (Mysqli - zombie links). (Andrey) ++- Fixed bug #51604 (newline in end of header is shown in start of message). ++ (Daniel Egeberg) ++- Fixed bug #51590 (JSON_ERROR_UTF8 is undefined). (Felipe) ++- Fixed bug #51583 (Bus error due to wrong alignment in mysqlnd). (Rainer Jung) ++- Fixed bug #51582 (Don't assume UINT64_C it's ever available). ++ (reidrac at usebox dot net, Pierre) ++- Fixed bug #51577 (Uninitialized memory reference with oci_bind_array_by_name) ++ (Oracle Corp.) ++- Fixed bug #51562 (query timeout in mssql can not be changed per query). ++ (ejsmont dot artur at gmail dot com) ++- Fixed bug #51552 (debug_backtrace() causes segmentation fault and/or memory ++ issues). (Dmitry) ++- Fixed bug #51445 (var_dump() invalid/slow *RECURSION* detection). (Felipe) ++- Fixed bug #51435 (Missing ifdefs / logic bug in crypt code cause compile ++ errors). (Felipe) ++- Fixed bug #51424 (crypt() function hangs after 3rd call). (Pierre, Sriram) ++- Fixed bug #51394 (Error line reported incorrectly if error handler throws an ++ exception). (Stas) ++- Fixed bug #51393 (DateTime::createFromFormat() fails if format string contains ++ timezone). (Adam) ++- Fixed bug #51347 (mysqli_close / connection memory leak). (Andrey, Johannes) ++- Fixed bug #51338 (URL-Rewriter is still enabled if use_only_cookies is ++ on). (Ilia, j dot jeising at gmail dot com) ++- Fixed bug #51291 (oci_error doesn't report last error when called two times) ++ (Oracle Corp.) ++- Fixed bug #51276 (php_load_extension() is missing when HAVE_LIBDL is ++ undefined). (Tony) ++- Fixed bug #51273 (Faultstring property does not exist when the faultstring is ++ empty) (Ilia, dennis at transip dot nl) ++- Fixed bug #51269 (zlib.output_compression Overwrites Vary Header). (Adam) ++- Fixed bug #51257 (CURL_VERSION_LARGEFILE incorrectly used after libcurl ++ version 7.10.1). (aron dot ujvari at microsec dot hu) ++- Fixed bug #51242 (Empty mysql.default_port does not default to 3306 anymore, ++ but 0). (Adam) ++- Fixed bug #51237 (milter SAPI crash on startup). (igmar at palsenberg dot com) ++- Fixed bug #51213 (pdo_mssql is trimming value of the money column). (Ilia, ++ alexr at oplot dot com) ++- Fixed bug #51190 (ftp_put() returns false when transfer was successful). ++ (Ilia) ++- Fixed bug #51183 (ext/date/php_date.c fails to compile with Sun Studio). ++ (Sriram Natarajan) ++- Fixed bug #51176 (Static calling in non-static method behaves like $this->). ++ (Felipe) ++- Fixed bug #51171 (curl_setopt() doesn't output any errors or warnings when ++ an invalid option is provided). (Ilia) ++- Fixed bug #51128 (imagefill() doesn't work with large images). (Pierre) ++- Fixed bug #51096 ('last day' and 'first day' are handled incorrectly when ++ parsing date strings). (Derick) ++- Fixed bug #51086 (DBA DB4 doesn't work with Berkeley DB 4.8). (Chris Jones) ++- Fixed bug #51062 (DBA DB4 uses mismatched headers and libraries). (Chris ++ Jones) ++- Fixed bug #51026 (mysqli_ssl_set not working). (Andrey) ++- Fixed bug #51023 (filter doesn't detect int overflows with GCC 4.4). ++ (Raphael Geissert) ++- Fixed bug #50999 (unaligned memory access in dba_fetch()). (Felipe) ++- Fixed bug #50976 (Soap headers Authorization not allowed). ++ (Brain France, Dmitry) ++- Fixed bug #50828 (DOMNotation is not subclass of DOMNode). (Rob) ++- Fixed bug #50810 (property_exists does not work for private). (Felipe) ++- Fixed bug #50762 (in WSDL mode Soap Header handler function only being called ++ if defined in WSDL). (mephius at gmail dot com) ++- Fixed bug #50731 (Inconsistent namespaces sent to functions registered with ++ spl_autoload_register). (Felipe) ++- Fixed bug #50563 (removing E_WARNING from parse_url). (ralph at smashlabs dot ++ com, Pierre) ++- Fixed bug #50578 (incorrect shebang in phar.phar). (Fedora at FamilleCollet ++ dot com) ++- Fixed bug #50392 (date_create_from_format enforces 6 digits for 'u' format ++ character). (Derick) ++- Fixed bug #50383 (Exceptions thrown in __call / __callStatic do not include ++ file and line in trace). (Felipe) ++- Fixed bug #50358 (Compile failure compiling ext/phar/util.lo). (Felipe) ++- Fixed bug #50101 (name clash between global and local variable). ++ (patch by yoarvi at gmail dot com) ++- Fixed bug #50055 (DateTime::sub() allows 'relative' time modifications). ++ (Derick) ++- Fixed bug #51002 (fix possible memory corruption with very long names). ++ (Pierre) ++- Fixed bug #49893 (Crash while creating an instance of Zend_Mail_Storage_Pop3). ++ (Dmitry) ++- Fixed bug #49819 (STDOUT losing data with posix_isatty()). (Mike) ++- Fixed bug #49778 (DateInterval::format("%a") is always zero when an interval ++ is created from an ISO string). (Derick) ++- Fixed bug #49700 (memory leaks in php_date.c if garbage collector is ++ enabled). (Dmitry) ++- Fixed bug #49576 (FILTER_VALIDATE_EMAIL filter needs updating) (Rasmus) ++- Fixed bug #49490 (XPath namespace prefix conflict). (Rob) ++- Fixed bug #49429 (odbc_autocommit doesn't work). (Felipe) ++- Fixed bug #49320 (PDO returns null when SQLite connection fails). (Felipe) ++- Fixed bug #49234 (mysqli_ssl_set not found). (Andrey) ++- Fixed bug #49216 (Reflection doesn't seem to work properly on MySqli). ++ (Andrey) ++- Fixed bug #49192 (PHP crashes when GC invoked on COM object). (Stas) ++- Fixed bug #49081 (DateTime::diff() mistake if start in January and interval > ++ 28 days). (Derick) ++- Fixed bug #49059 (DateTime::diff() repeats previous sub() operation). ++ (yoarvi@gmail.com, Derick) ++- Fixed bug #48983 (DomDocument : saveHTMLFile wrong charset). (Rob) ++- Fixed bug #48930 (__COMPILER_HALT_OFFSET__ incorrect in PHP >= 5.3). (Felipe) ++- Fixed bug #48902 (Timezone database fallback map is outdated). (Derick) ++- Fixed bug #48781 (Cyclical garbage collector memory leak). (Dmitry) ++- Fixed bug #48601 (xpath() returns FALSE for legitimate query). (Rob) ++- Fixed bug #48361 (SplFileInfo::getPathInfo should return the ++ parent dir). (Etienne) ++- Fixed bug #48289 (iconv_mime_encode() quoted-printable scheme is broken). ++ (Adam, patch from hiroaki dot kawai at gmail dot com). ++- Fixed bug #47842 (sscanf() does not support 64-bit values). (Mike) ++- Fixed bug #46111 (Some timezone identifiers can not be parsed). (Derick) ++- Fixed bug #45808 (stream_socket_enable_crypto() blocks and eats CPU). ++ (vincent at optilian dot com) ++- Fixed bug #43233 (sasl support for ldap on Windows). (Pierre) ++- Fixed bug #35673 (formatOutput does not work with saveHTML). (Rob) ++- Fixed bug #33210 (getimagesize() fails to detect width/height on certain ++ JPEGs). (Ilia) ++ ++04 Mar 2010, PHP 5.3.2 ++ ++- Upgraded bundled sqlite to version 3.6.22. (Ilia) ++- Upgraded bundled libmagic to version 5.03. (Mikko) ++- Upgraded bundled PCRE to version 8.00. (Scott) ++- Updated timezone database to version 2010.3. (Derick) ++ ++- Improved LCG entropy. (Rasmus, Samy Kamkar) ++- Improved crypt support for edge cases (UFC compatibility). (Solar Designer, ++ Joey, Pierre) ++ ++- Reverted fix for bug #49521 (PDO fetchObject sets values before calling ++ constructor). (Pierrick, Johannes) ++ ++- Changed gmp_strval() to use full range from 2 to 62, and -2 to -36. FR #50283 ++ (David Soria Parra) ++- Changed "post_max_size" php.ini directive to allow unlimited post size by ++ setting it to 0. (Rasmus) ++- Changed tidyNode class to disallow manual node creation. (Pierrick) ++ ++- Removed automatic file descriptor unlocking happening on shutdown and/or ++ stream close (on all OSes). (Tony, Ilia) ++ ++- Added libpng 1.4.0 support. (Pierre) ++- Added support for DISABLE_AUTHENTICATOR for imap_open. (Pierre) ++- Added missing host validation for HTTP urls inside FILTER_VALIDATE_URL. ++ (Ilia) ++- Added stream_resolve_include_path(). (Mikko) ++- Added INTERNALDATE support to imap_append. (nick at mailtrust dot com) ++- Added support for SHA-256 and SHA-512 to php's crypt. (Pierre) ++- Added realpath_cache_size() and realpath_cache_get() functions. (Stas) ++- Added FILTER_FLAG_STRIP_BACKTICK option to the filter extension. (Ilia) ++- Added protection for $_SESSION from interrupt corruption and improved ++ "session.save_path" check. (Stas) ++- Added LIBXML_PARSEHUGE constant to override the maximum text size of a ++ single text node when using libxml2.7.3+. (Kalle) ++- Added ReflectionMethod::setAccessible() for invoking non-public methods ++ through the Reflection API. (Sebastian) ++- Added Collator::getSortKey for intl extension. (Stas) ++- Added support for CURLOPT_POSTREDIR. FR #49571. (Sriram Natarajan) ++- Added support for CURLOPT_CERTINFO. FR #49253. ++ (Linus Nielsen Feltzing ) ++- Added client-side server name indication support in openssl. (Arnaud) ++ ++- Improved fix for bug #50006 (Segfault caused by uksort()). (Stas) ++ ++- Fixed mysqlnd hang when queries exactly 16777214 bytes long are sent. (Andrey) ++- Fixed incorrect decoding of 5-byte BIT sequences in mysqlnd. (Andrey) ++- Fixed error_log() to be binary safe when using message_type 3. (Jani) ++- Fixed unnecessary invocation of setitimer when timeouts have been disabled. ++ (Arvind Srinivasan) ++- Fixed memory leak in extension loading when an error occurs on Windows. ++ (Pierre) ++- Fixed safe_mode validation inside tempnam() when the directory path does ++ not end with a /). (Martin Jansen) ++- Fixed a possible open_basedir/safe_mode bypass in session extension ++ identified by Grzegorz Stachowiak. (Ilia) ++- Fixed possible crash when a error/warning is raised during php startup. ++ (Pierre) ++- Fixed possible bad behavior of rename on windows when used with symbolic ++ links or invalid paths. (Pierre) ++- Fixed error output to stderr on Windows. (Pierre) ++- Fixed memory leaks in is_writable/readable/etc on Windows. (Pierre) ++- Fixed memory leaks in the ACL function on Windows. (Pierre) ++- Fixed memory leak in the realpath cache on Windows. (Pierre) ++- Fixed memory leak in zip_close. (Pierre) ++- Fixed crypt's blowfish sanity check of the "setting" string, to reject ++ iteration counts encoded as 36 through 39. (Solar Designer, Joey, Pierre) ++ ++- Fixed bug #51059 (crypt crashes when invalid salt are given). (Pierre) ++- Fixed bug #50952 (allow underscore _ in constants parsed in php.ini files). ++ (Jani) ++- Fixed bug #50940 (Custom content-length set incorrectly in Apache SAPIs). ++ (Brian France, Rasmus) ++- Fixed bug #50930 (Wrong date by php_date.c patch with ancient gcc/glibc ++ versions). (Derick) ++- Fixed bug #50907 (X-PHP-Originating-Script adding two new lines in *NIX). ++ (Ilia) ++- Fixed bug #50859 (build fails with openssl 1.0 due to md2 deprecation). ++ (Ilia, hanno at hboeck dot de) ++- Fixed bug #50847 (strip_tags() removes all tags greater then 1023 bytes ++ long). (Ilia) ++- Fixed bug #50829 (php.ini directive pdo_mysql.default_socket is ignored). ++ (Ilia) ++- Fixed bug #50832 (HTTP fopen wrapper does not support passwordless HTTP ++ authentication). (Jani) ++- Fixed bug #50787 (stream_set_write_buffer() has no effect on socket streams). ++ (vnegrier at optilian dot com, Ilia) ++- Fixed bug #50761 (system.multiCall crashes in xmlrpc extension). ++ (hiroaki dot kawai at gmail dot com, Ilia) ++- Fixed bug #50756 (CURLOPT_FTP_SKIP_PASV_IP does not exist). (Sriram) ++- Fixed bug #50732 (exec() adds single byte twice to $output array). (Ilia) ++- Fixed bug #50728 (All PDOExceptions hardcode 'code' property to 0). ++ (Joey, Ilia) ++- Fixed bug #50723 (Bug in garbage collector causes crash). (Dmitry) ++- Fixed bug #50690 (putenv does not set ENV when the value is only one char). ++ (Pierre) ++- Fixed bug #50680 (strtotime() does not support eighth ordinal number). (Ilia) ++- Fixed bug #50661 (DOMDocument::loadXML does not allow UTF-16). (Rob) ++- Fixed bug #50657 (copy() with an empty (zero-byte) HTTP source succeeds but ++ returns false). (Ilia) ++- Fixed bug #50636 (MySQLi_Result sets values before calling constructor). ++ (Pierrick) ++- Fixed bug #50632 (filter_input() does not return default value if the ++ variable does not exist). (Ilia) ++- Fixed bug #50576 (XML_OPTION_SKIP_TAGSTART option has no effect). (Pierrick) ++- Fixed bug #50558 (Broken object model when extending tidy). (Pierrick) ++- Fixed bug #50540 (Crash while running ldap_next_reference test cases). ++ (Sriram) ++- Fixed bug #50519 (segfault in garbage collection when using set_error_handler ++ and DomDocument). (Dmitry) ++- Fixed bug #50508 (compile failure: Conflicting HEADER type declarations). ++ (Jani) ++- Fixed bug #50496 (Use of is valid only in a c99 compilation ++ environment. (Sriram) ++- Fixed bug #50464 (declare encoding doesn't work within an included file). ++ (Felipe) ++- Fixed bug #50458 (PDO::FETCH_FUNC fails with Closures). (Felipe, Pierrick) ++- Fixed bug #50445 (PDO-ODBC stored procedure call from Solaris 64-bit causes ++ seg fault). (davbrown4 at yahoo dot com, Felipe) ++- Fixed bug #50416 (PROCEDURE db.myproc can't return a result set in the given ++ context). (Andrey) ++- Fixed bug #50394 (Reference argument converted to value in __call). (Stas) ++- Fixed bug #50351 (performance regression handling objects, ten times slower ++ in 5.3 than in 5.2). (Dmitry) ++- Fixed bug #50392 (date_create_from_format() enforces 6 digits for 'u' ++ format character). (Ilia) ++- Fixed bug #50345 (nanosleep not detected properly on some solaris versions). ++ (Jani) ++- Fixed bug #50340 (php.ini parser does not allow spaces in ini keys). (Jani) ++- Fixed bug #50334 (crypt ignores sha512 prefix). (Pierre) ++- Fixed bug #50323 (Allow use of ; in values via ;; in PDO DSN). ++ (Ilia, Pierrick) ++- Fixed bug #50285 (xmlrpc does not preserve keys in encoded indexed arrays). ++ (Felipe) ++- Fixed bug #50282 (xmlrpc_encode_request() changes object into array in ++ calling function). (Felipe) ++- Fixed bug #50267 (get_browser(null) does not use HTTP_USER_AGENT). (Jani) ++- Fixed bug #50266 (conflicting types for llabs). (Jani) ++- Fixed bug #50261 (Crash When Calling Parent Constructor with ++ call_user_func()). (Dmitry) ++- Fixed bug #50255 (isset() and empty() silently casts array to object). ++ (Felipe) ++- Fixed bug #50240 (pdo_mysql.default_socket in php.ini shouldn't used ++ if it is empty). (foutrelis at gmail dot com, Ilia) ++- Fixed bug #50231 (Socket path passed using --with-mysql-sock is ignored when ++ mysqlnd is enabled). (Jani) ++- Fixed bug #50219 (soap call Segmentation fault on a redirected url). ++ (Pierrick) ++- Fixed bug #50212 (crash by ldap_get_option() with LDAP_OPT_NETWORK_TIMEOUT). ++ (Ilia, shigeru_kitazaki at cybozu dot co dot jp) ++- Fixed bug #50209 (Compiling with libedit cannot find readline.h). ++ (tcallawa at redhat dot com) ++- Fixed bug #50207 (segmentation fault when concatenating very large strings on ++ 64bit linux). (Ilia) ++- Fixed bug #50196 (stream_copy_to_stream() produces warning when source is ++ not file). (Stas) ++- Fixed bug #50195 (pg_copy_to() fails when table name contains schema. (Ilia) ++- Fixed bug #50185 (ldap_get_entries() return false instead of an empty array ++ when there is no error). (Jani) ++- Fixed bug #50174 (Incorrectly matched docComment). (Felipe) ++- Fixed bug #50168 (FastCGI fails with wrong error on HEAD request to ++ non-existant file). (Dmitry) ++- Fixed bug #50162 (Memory leak when fetching timestamp column from Oracle ++ database). (Felipe) ++- Fixed bug #50159 (wrong working directory in symlinked files). (Dmitry) ++- Fixed bug #50158 (FILTER_VALIDATE_EMAIL fails with valid addresses ++ containing = or ?). (Pierrick) ++- Fixed bug #50152 (ReflectionClass::hasProperty behaves like isset() not ++ property_exists). (Felipe) ++- Fixed bug #50146 (property_exists: Closure object cannot have properties). ++ (Felipe) ++- Fixed bug #50145 (crash while running bug35634.phpt). (Felipe) ++- Fixed bug #50140 (With default compilation option, php symbols are unresolved ++ for nsapi). (Uwe Schindler) ++- Fixed bug #50087 (NSAPI performance improvements). (Uwe Schindler) ++- Fixed bug #50073 (parse_url() incorrect when ? in fragment). (Ilia) ++- Fixed bug #50023 (pdo_mysql doesn't use PHP_MYSQL_UNIX_SOCK_ADDR). (Ilia) ++- Fixed bug #50005 (Throwing through Reflection modified Exception object ++ makes segmentation fault). (Felipe) ++- Fixed bug #49990 (SNMP3 warning message about security level printed twice). ++ (Jani) ++- Fixed bug #49985 (pdo_pgsql prepare() re-use previous aborted ++ transaction). (ben dot pineau at gmail dot com, Ilia, Matteo) ++- Fixed bug #49938 (Phar::isBuffering() returns inverted value). (Greg) ++- Fixed bug #49936 (crash with ftp stream in php_stream_context_get_option()). ++ (Pierrick) ++- Fixed bug #49921 (Curl post upload functions changed). (Ilia) ++- Fixed bug #49866 (Making reference on string offsets crashes PHP). (Dmitry) ++- Fixed bug #49855 (import_request_variables() always returns NULL). (Ilia, ++ sjoerd at php dot net) ++- Fixed bug #49851, #50451 (http wrapper breaks on 1024 char long headers). ++ (Ilia) ++- Fixed bug #49800 (SimpleXML allow (un)serialize() calls without warning). ++ (Ilia, wmeler at wp-sa dot pl) ++- Fixed bug #49719 (ReflectionClass::hasProperty returns true for a private ++ property in base class). (Felipe) ++- Fixed bug #49677 (ini parser crashes with apache2 and using ${something} ++ ini variables). (Jani) ++- Fixed bug #49660 (libxml 2.7.3+ limits text nodes to 10MB). (Felipe) ++- Fixed bug #49647 (DOMUserData does not exist). (Rob) ++- Fixed bug #49600 (imageTTFText text shifted right). (Takeshi Abe) ++- Fixed bug #49585 (date_format buffer not long enough for >4 digit years). ++ (Derick, Adam) ++- Fixed bug #49560 (oci8: using LOBs causes slow PHP shutdown). (Oracle Corp.) ++- Fixed bug #49521 (PDO fetchObject sets values before calling constructor). ++ (Pierrick) ++- Fixed bug #49472 (Constants defined in Interfaces can be overridden). ++ (Felipe) ++- Fixed bug #49463 (setAttributeNS fails setting default namespace). (Rob) ++- Fixed bug #49244 (Floating point NaN cause garbage characters). (Sjoerd) ++- Fixed bug #49224 (Compile error due to old DNS functions on AIX systems). ++ (Scott) ++- Fixed bug #49174 (crash when extending PDOStatement and trying to set ++ queryString property). (Felipe) ++- Fixed bug #48811 (Directives in PATH section do not get applied to ++ subdirectories). (Patch by: ct at swin dot edu dot au) ++- Fixed bug #48590 (SoapClient does not honor max_redirects). (Sriram) ++- Fixed bug #48190 (Content-type parameter "boundary" is not case-insensitive ++ in HTTP uploads). (Ilia) ++- Fixed bug #47848 (importNode doesn't preserve attribute namespaces). (Rob) ++- Fixed bug #47409 (extract() problem with array containing word "this"). ++ (Ilia, chrisstocktonaz at gmail dot com) ++- Fixed bug #47281 ($php_errormsg is limited in size of characters) ++ (Oracle Corp.) ++- Fixed bug #46478 (htmlentities() uses obsolete mapping table for character ++ entity references). (Moriyoshi) ++- Fixed bug #45599 (strip_tags() truncates rest of string with invalid ++ attribute). (Ilia, hradtke) ++- Fixed bug #45120 (PDOStatement->execute() returns true then false for same ++ statement). (Pierrick) ++- Fixed bug #44827 (define() allows :: in constant names). (Ilia) ++- Fixed bug #44098 (imap_utf8() returns only capital letters). ++ (steffen at dislabs dot de, Pierre) ++- Fixed bug #34852 (Failure in odbc_exec() using oracle-supplied odbc ++ driver). (tim dot tassonis at trivadis dot com) ++ ++19 Nov 2009, PHP 5.3.1 ++- Upgraded bundled sqlite to version 3.6.19. (Scott) ++- Updated timezone database to version 2009.17 (2009q). (Derick) ++ ++- Changed ini file directives [PATH=](on Win32) and [HOST=](on all) to be case ++ insensitive. (garretts) ++ ++- Restored shebang line check to CGI sapi (not checked by scanner anymore). ++ (Jani) ++ ++- Added "max_file_uploads" INI directive, which can be set to limit the ++ number of file uploads per-request to 20 by default, to prevent possible ++ DOS via temporary file exhaustion. (Ilia) ++- Added missing sanity checks around exif processing. (Ilia) ++- Added error constant when json_encode() detects an invalid UTF-8 sequence. ++ (Scott) ++- Added support for ACL on Windows for thread safe SAPI (Apache2 for example) ++ and fix its support on NTS. (Pierre) ++ ++- Improved symbolic, mounted volume and junctions support for realpath on ++ Windows. (Pierre) ++- Improved readlink on Windows, suppress \??\ and use the drive syntax only. ++ (Pierre) ++- Improved dns_get_record() AAAA support on windows. Always available when ++ IPv6 is support is installed, format is now the same than on unix. (Pierre) ++- Improved the DNS functions on OSX to use newer APIs, also use Bind 9 API ++ where available on other platforms. (Scott) ++- Improved shared extension loading on OSX to use the standard Unix dlopen() ++ API. (Scott) ++ ++- Fixed crash in com_print_typeinfo when an invalid typelib is given. (Pierre) ++- Fixed a safe_mode bypass in tempnam() identified by Grzegorz Stachowiak. ++ (Rasmus) ++- Fixed a open_basedir bypass in posix_mkfifo() identified by Grzegorz ++ Stachowiak. (Rasmus) ++- Fixed certificate validation inside php_openssl_apply_verification_policy ++ (Ryan Sleevi, Ilia) ++- Fixed crash in SQLiteDatabase::ArrayQuery() and SQLiteDatabase::SingleQuery() ++ when calling using Reflection. (Felipe) ++- Fixed crash when instantiating PDORow and PDOStatement through Reflection. ++ (Felipe) ++- Fixed sanity check for the color index in imagecolortransparent. (Pierre) ++- Fixed scandir/readdir when used mounted points on Windows. (Pierre) ++- Fixed zlib.deflate compress filter to actually accept level parameter. (Jani) ++- Fixed leak on error in popen/exec (and related functions) on Windows. ++ (Pierre) ++- Fixed possible bad caching of symlinked directories in the realpath cache ++ on Windows. (Pierre) ++- Fixed atime and mtime in stat related functions on Windows. (Pierre) ++- Fixed spl_autoload_unregister/spl_autoload_functions wrt. Closures and ++ Functors. (Christian Seiler) ++- Fixed open_basedir circumvention for "mail.log" ini directive. ++ (Maksymilian Arciemowicz, Stas) ++- Fixed signature generation/validation for zip archives in ext/phar. (Greg) ++- Fixed memory leak in stream_is_local(). (Felipe, Tony) ++- Fixed BC break in mime_content_type(), removes the content encoding. (Scott) ++ ++- Fixed PECL bug #16842 (oci_error return false when NO_DATA_FOUND is raised). ++ (Chris Jones) ++ ++- Fixed bug #50063 (safe_mode_include_dir fails). (Johannes, christian at ++ elmerot dot se) ++- Fixed bug #50052 (Different Hashes on Windows and Linux on wrong Salt size). ++ (Pierre) ++- Fixed bug #49986 (Missing ICU DLLs on windows package). (Pierre) ++- Fixed bug #49910 (no support for ././@LongLink for long filenames in phar ++ tar support). (Greg) ++- Fixed bug #49908 (throwing exception in __autoload crashes when interface ++ is not defined). (Felipe) ++- Fixed bug #49847 (exec() fails to return data inside 2nd parameter, given ++ output lines >4095 bytes). (Ilia) ++- Fixed bug #49809 (time_sleep_until() is not available on OpenSolaris). (Jani) ++- Fixed bug #49757 (long2ip() can return wrong value in a multi-threaded ++ applications). (Ilia, Florian Anderiasch) ++- Fixed bug #49738 (calling mcrypt after mcrypt_generic_deinit crashes). ++ (Sriram Natarajan) ++- Fixed bug #49732 (crashes when using fileinfo when timestamp conversion ++ fails). (Pierre) ++- Fixed bug #49698 (Unexpected change in strnatcasecmp()). (Rasmus) ++- Fixed bug #49630 (imap_listscan function missing). (Felipe) ++- Fixed bug #49572 (use of C++ style comments causes build failure). ++ (Sriram Natarajan) ++- Fixed bug #49531 (CURLOPT_INFILESIZE sometimes causes warning "CURLPROTO_FILE ++ cannot be set"). (Felipe) ++- Fixed bug #49517 (cURL's CURLOPT_FILE prevents file from being deleted after ++ fclose). (Ilia) ++- Fixed bug #49470 (FILTER_SANITIZE_EMAIL allows disallowed characters). ++ (Ilia) ++- Fixed bug #49447 (php engine need to correctly check for socket API ++ return status on windows). (Sriram Natarajan) ++- Fixed bug #49391 (ldap.c utilizing deprecated ldap_modify_s). (Ilia) ++- Fixed bug #49372 (segfault in php_curl_option_curl). (Pierre) ++- Fixed bug #49361 (wordwrap() wraps incorrectly on end of line boundaries). ++ (Ilia, code-it at mail dot ru) ++- Fixed bug #49306 (inside pdo_mysql default socket settings are ignored). ++ (Ilia) ++- Fixed bug #49289 (bcmath module doesn't compile with phpize configure). ++ (Jani) ++- Fixed bug #49286 (php://input (php_stream_input_read) is broken). (Jani) ++- Fixed bug #49269 (Ternary operator fails on Iterator object when used inside ++ foreach declaration). (Etienne, Dmitry) ++- Fixed bug #49236 (Missing PHP_SUBST(PDO_MYSQL_SHARED_LIBADD)). (Jani) ++- Fixed bug #49223 (Inconsistency using get_defined_constants). (Garrett) ++- Fixed bug #49193 (gdJpegGetVersionString() inside gd_compact identifies ++ wrong type in declaration). (Ilia) ++- Fixed bug #49183 (dns_get_record does not return NAPTR records). (Pierre) ++- Fixed bug #49144 (Import of schema from different host transmits original ++ authentication details). (Dmitry) ++- Fixed bug #49142 (crash when exception thrown from __tostring()). ++ (David Soria Parra) ++- Fixed bug #49132 (posix_times returns false without error). ++ (phpbugs at gunnu dot us) ++- Fixed bug #49125 (Error in dba_exists C code). (jdornan at stanford dot edu) ++- Fixed bug #49122 (undefined reference to mysqlnd_stmt_next_result on compile ++ with --with-mysqli and MySQL 6.0). (Jani) ++- Fixed bug #49108 (2nd scan_dir produces segfault). (Felipe) ++- Fixed bug #49098 (mysqli segfault on error). (Rasmus) ++- Fixed bug #49095 (proc_get_status['exitcode'] fails on win32). (Felipe) ++- Fixed bug #49092 (ReflectionFunction fails to work with functions in fully ++ qualified namespaces). (Kalle, Jani) ++- Fixed bug #49074 (private class static fields can be modified by using ++ reflection). (Jani) ++- Fixed bug #49072 (feof never returns true for damaged file in zip). (Pierre) ++- Fixed bug #49065 ("disable_functions" php.ini option does not work on ++ Zend extensions). (Stas) ++- Fixed bug #49064 (--enable-session=shared does not work: undefined symbol: ++ php_url_scanner_reset_vars). (Jani) ++- Fixed bug #49056 (parse_ini_file() regression in 5.3.0 when using non-ASCII ++ strings as option keys). (Jani) ++- Fixed bug #49052 (context option headers freed too early when using ++ --with-curlwrappers). (Jani) ++- Fixed bug #49047 (The function touch() fails on directories on Windows). ++ (Pierre) ++- Fixed bug #49032 (SplFileObject::fscanf() variables passed by reference). ++ (Jani) ++- Fixed bug #49027 (mysqli_options() doesn't work when using mysqlnd). (Andrey) ++- Fixed bug #49026 (proc_open() can bypass safe_mode_protected_env_vars ++ restrictions). (Ilia) ++- Fixed bug #49020 (phar misinterprets ustar long filename standard). ++ (Greg) ++- Fixed bug #49018 (phar tar stores long filenames wit prefix/name reversed). ++ (Greg) ++- Fixed bug #49014 (dechunked filter broken when serving more than 8192 bytes ++ in a chunk). (andreas dot streichardt at globalpark dot com, Ilia) ++- Fixed bug #49012 (phar tar signature algorithm reports as Unknown (0) in ++ getSignature() call). (Greg) ++- Fixed bug #49000 (PHP CLI in Interactive mode (php -a) crashes ++ when including files from function). (Stas) ++- Fixed bug #48994 (zlib.output_compression does not output HTTP headers when ++ set to a string value). (Jani) ++- Fixed bug #48980 (Crash when compiling with pdo_firebird). (Felipe) ++- Fixed bug #48962 (cURL does not upload files with specified filename). ++ (Ilia) ++- Fixed bug #48929 (Double \r\n after HTTP headers when "header" context ++ option is an array). (David Zülke) ++- Fixed bug #48913 (Too long error code strings in pdo_odbc driver). ++ (naf at altlinux dot ru, Felipe) ++- Fixed bug #48912 (Namespace causes unexpected strict behaviour with ++ extract()). (Dmitry) ++- Fixed bug #48909 (Segmentation fault in mysqli_stmt_execute()). (Andrey) ++- Fixed bug #48899 (is_callable returns true even if method does not exist in ++ parent class). (Felipe) ++- Fixed bug #48893 (Problems compiling with Curl). (Felipe) ++- Fixed bug #48880 (Random Appearing open_basedir problem). (Rasmus, Gwynne) ++- Fixed bug #48872 (string.c: errors: duplicate case values). (Kalle) ++- Fixed bug #48854 (array_merge_recursive modifies arrays after first one). ++ (Felipe) ++- Fixed bug #48805 (IPv6 socket transport is not working). (Ilia) ++- Fixed bug #48802 (printf() returns incorrect outputted length). (Jani) ++- Fixed bug #48791 (open office files always reported as corrupted). (Greg) ++- Fixed bug #48788 (RecursiveDirectoryIterator doesn't descend into symlinked ++ directories). (Ilia) ++- Fixed bug #48783 (make install will fail saying phar file exists). (Greg) ++- Fixed bug #48774 (SIGSEGVs when using curl_copy_handle()). ++ (Sriram Natarajan) ++- Fixed bug #48771 (rename() between volumes fails and reports no error on ++ Windows). (Pierre) ++- Fixed bug #48768 (parse_ini_*() crash with INI_SCANNER_RAW). (Jani) ++- Fixed bug #48763 (ZipArchive produces corrupt archive). (dani dot church at ++ gmail dot com, Pierre) ++- Fixed bug #48762 (IPv6 address filter still rejects valid address). (Felipe) ++- Fixed bug #48757 (ReflectionFunction::invoke() parameter issues). (Kalle) ++- Fixed bug #48754 (mysql_close() crash php when no handle specified). ++ (Johannes, Andrey) ++- Fixed bug #48752 (Crash during date parsing with invalid date). (Pierre) ++- Fixed bug #48746 (Unable to browse directories within Junction Points). ++ (Pierre, Kanwaljeet Singla) ++- Fixed bug #48745 (mysqlnd: mysql_num_fields returns wrong column count for ++ mysql_list_fields). (Andrey) ++- Fixed bug #48740 (PHAR install fails when INSTALL_ROOT is not the final ++ install location). (james dot cohen at digitalwindow dot com, Greg) ++- Fixed bug #48733 (CURLOPT_WRITEHEADER|CURLOPT_FILE|CURLOPT_STDERR warns on ++ files that have been opened with r+). (Ilia) ++- Fixed bug #48719 (parse_ini_*(): scanner_mode parameter is not checked for ++ sanity). (Jani) ++- Fixed bug #48718 (FILTER_VALIDATE_EMAIL does not allow numbers in domain ++ components). (Ilia) ++- Fixed bug #48681 (openssl signature verification for tar archives broken). ++ (Greg) ++- Fixed bug #48660 (parse_ini_*(): dollar sign as last character of value ++ fails). (Jani) ++- Fixed bug #48645 (mb_convert_encoding() doesn't understand hexadecimal ++ html-entities). (Moriyoshi) ++- Fixed bug #48637 ("file" fopen wrapper is overwritten when using ++ --with-curlwrappers). (Jani) ++- Fixed bug #48608 (Invalid libreadline version not detected during configure). ++ (Jani) ++- Fixed bug #48400 (imap crashes when closing stream opened with ++ OP_PROTOTYPE flag). (Jani) ++- Fixed bug #48377 (error message unclear on converting phar with existing ++ file). (Greg) ++- Fixed bug #48247 (Infinite loop and possible crash during startup with ++ errors when errors are logged). (Jani) ++- Fixed bug #48198 error: 'MYSQLND_LLU_SPEC' undeclared. Cause for #48780 and ++ #46952 - both fixed too. (Andrey) ++- Fixed bug #48189 (ibase_execute error in return param). (Kalle) ++- Fixed bug #48182 (ssl handshake fails during asynchronous socket connection). ++ (Sriram Natarajan) ++- Fixed bug #48116 (Fixed build with Openssl 1.0). (Pierre, ++ Al dot Smith at aeschi dot ch dot eu dot org) ++- Fixed bug #48057 (Only the date fields of the first row are fetched, others ++ are empty). (info at programmiernutte dot net) ++- Fixed bug #47481 (natcasesort() does not sort extended ASCII characters ++ correctly). (Herman Radtke) ++- Fixed bug #47351 (Memory leak in DateTime). (Derick, Tobias John) ++- Fixed bug #47273 (Encoding bug in SoapServer->fault). (Dmitry) ++- Fixed bug #46682 (touch() afield returns different values on windows). ++ (Pierre) ++- Fixed bug #46614 (Extended MySQLi class gives incorrect empty() result). ++ (Andrey) ++- Fixed bug #46020 (with Sun Java System Web Server 7.0 on HPUX, #define HPUX). ++ (Uwe Schindler) ++- Fixed bug #45905 (imagefilledrectangle() clipping error). ++ (markril at hotmail dot com, Pierre) ++- Fixed bug #45554 (Inconsistent behavior of the u format char). (Derick) ++- Fixed bug #45141 (setcookie will output expires years of >4 digits). (Ilia) ++- Fixed bug #44683 (popen crashes when an invalid mode is passed). (Pierre) ++- Fixed bug #43510 (stream_get_meta_data() does not return same mode as used ++ in fopen). (Jani) ++- Fixed bug #42434 (ImageLine w/ antialias = 1px shorter). (wojjie at gmail dot ++ com, Kalle) ++- Fixed bug #40013 (php_uname() does not return nodename on Netware (Guenter ++ Knauf) ++- Fixed bug #38091 (Mail() does not use FQDN when sending SMTP helo). ++ (Kalle, Rick Yorgason) ++- Fixed bug #28038 (Sent incorrect RCPT TO commands to SMTP server) (Garrett) ++- Fixed bug #27051 (Impersonation with FastCGI does not exec process as ++ impersonated user). (Pierre) ++ ++ ++30 Jun 2009, PHP 5.3.0 ++- Upgraded bundled PCRE to version 7.9. (Nuno) ++- Upgraded bundled sqlite to version 3.6.15. (Scott) ++ ++- Moved extensions to PECL (Derick, Lukas, Pierre, Scott): ++ . ext/dbase ++ . ext/fbsql ++ . ext/fdf ++ . ext/ncurses ++ . ext/mhash (BC layer is now entirely within ext/hash) ++ . ext/ming ++ . ext/msql ++ . ext/sybase (not maintained anymore, sybase_ct has to be used instead) ++ ++- Removed the experimental RPL (master/slave) functions from mysqli. (Andrey) ++- Removed zend.ze1_compatibility_mode. (Dmitry) ++- Removed all zend_extension_* php.ini directives. Zend extensions are now ++ always loaded using zend_extension directive. (Derick) ++- Removed special treatment of "/tmp" in sessions for open_basedir. ++ Note: This undocumented behaviour was introduced in 5.2.2. (Alexey) ++- Removed shebang line check from CGI sapi (checked by scanner). (Dmitry) ++ ++- Changed PCRE, Reflection and SPL extensions to be always enabled. (Marcus) ++- Changed md5() to use improved implementation. (Solar Designer, Dmitry) ++- Changed HTTP stream wrapper to accept any code between and including ++ 200 to 399 as successful. (Mike, Noah Fontes) ++- Changed __call() to be invoked on private/protected method access, similar to ++ properties and __get(). (Andrei) ++- Changed dl() to be disabled by default. Enabled only when explicitly ++ registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs. ++ (Dmitry) ++- Changed opendir(), dir() and scandir() to use default context when no context ++ argument is passed. (Sara) ++- Changed open_basedir to allow tightening in runtime contexts. (Sara) ++- Changed PHP/Zend extensions to use flexible build IDs. (Stas) ++- Changed error level E_ERROR into E_WARNING in Soap extension methods ++ parameter validation. (Felipe) ++- Changed openssl info to show the shared library version number. (Scott) ++- Changed floating point behaviour to consistently use double precision on all ++ platforms and with all compilers. (Christian Seiler) ++- Changed round() to act more intuitively when rounding to a certain precision ++ and round very large and very small exponents correctly. (Christian Seiler) ++- Changed session_start() to return false when session startup fails. (Jani) ++- Changed property_exists() to check the existence of a property independent of ++ accessibility (like method_exists()). (Felipe) ++- Changed array_reduce() to allow mixed $initial (Christian Seiler) ++ ++- Improved PHP syntax and semantics: ++ . Added lambda functions and closures. (Christian Seiler, Dmitry) ++ . Added "jump label" operator (limited "goto"). (Dmitry, Sara) ++ . Added NOWDOC syntax. (Gwynne Raskind, Stas, Dmitry) ++ . Added HEREDOC syntax with double quotes. (Lars Strojny, Felipe) ++ . Added support for using static HEREDOCs to initialize static variables and ++ class members or constants. (Matt) ++ . Improved syntax highlighting and consistency for variables in double-quoted ++ strings and literal text in HEREDOCs and backticks. (Matt) ++ . Added "?:" operator. (Marcus) ++ . Added support for namespaces. (Dmitry, Stas, Gregory, Marcus) ++ . Added support for Late Static Binding. (Dmitry, Etienne Kneuss) ++ . Added support for __callStatic() magic method. (Sara) ++ . Added forward_static_call(_array) to complete LSB. (Mike Lively) ++ . Added support for dynamic access of static members using $foo::myFunc(). ++ (Etienne Kneuss) ++ . Improved checks for callbacks. (Marcus) ++ . Added __DIR__ constant. (Lars Strojny) ++ . Added new error modes E_USER_DEPRECATED and E_DEPRECATED. ++ E_DEPRECATED is used to inform about stuff being scheduled for removal ++ in future PHP versions. (Lars Strojny, Felipe, Marcus) ++ . Added "request_order" INI variable to control specifically $_REQUEST ++ behavior. (Stas) ++ . Added support for exception linking. (Marcus) ++ . Added ability to handle exceptions in destructors. (Marcus) ++ ++- Improved PHP runtime speed and memory usage: ++ . Substitute global-scope, persistent constants with their values at compile ++ time. (Matt) ++ . Optimized ZEND_SIGNED_MULTIPLY_LONG(). (Matt) ++ . Removed direct executor recursion. (Dmitry) ++ . Use fastcall calling convention in executor on x86. (Dmitry) ++ . Use IS_CV for direct access to $this variable. (Dmitry) ++ . Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR). (Dmitry) ++ . Lazy EG(active_symbol_table) initialization. (Dmitry) ++ . Optimized ZEND_RETURN opcode to not allocate and copy return value if it is ++ not used. (Dmitry) ++ . Replaced all flex based scanners with re2c based scanners. ++ (Marcus, Nuno, Scott) ++ . Added garbage collector. (David Wang, Dmitry). ++ . Improved PHP binary size and startup speed with GCC4 visibility control. ++ (Nuno) ++ . Improved engine stack implementation for better performance and stability. ++ (Dmitry) ++ . Improved memory usage by moving constants to read only memory. ++ (Dmitry, Pierre) ++ . Changed exception handling. Now each op_array doesn't contain ++ ZEND_HANDLE_EXCEPTION opcode in the end. (Dmitry) ++ . Optimized require_once() and include_once() by eliminating fopen(3) on ++ second usage. (Dmitry) ++ . Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single ++ ZEND_ADD_INTERFACE opcode. (Dmitry) ++ . Optimized string searching for a single character. ++ (Michal Dziemianko, Scott) ++ . Optimized interpolated strings to use one less opcode. (Matt) ++ ++- Improved php.ini handling: (Jani) ++ . Added ".htaccess" style user-defined php.ini files support for CGI/FastCGI. ++ . Added support for special [PATH=/opt/httpd/www.example.com/] and ++ [HOST=www.example.com] sections. Directives set in these sections can ++ not be overridden by user-defined ini-files or during runtime. ++ . Added better error reporting for php.ini syntax errors. ++ . Allowed using full path to load modules using "extension" directive. ++ . Allowed "ini-variables" to be used almost everywhere ini php.ini files. ++ . Allowed using alphanumeric/variable indexes in "array" ini options. ++ . Added 3rd optional parameter to parse_ini_file() to specify the scanning ++ mode of INI_SCANNER_NORMAL or INI_SCANNER_RAW. In raw mode option values ++ and section values are treated as-is. ++ . Fixed get_cfg_var() to be able to return "array" ini options. ++ . Added optional parameter to ini_get_all() to only retrieve the current ++ value. (Hannes) ++ ++- Improved Windows support: ++ . Update all libraries to their latest stable version. (Pierre, Rob, Liz, ++ Garrett). ++ . Added Windows support for stat(), touch(), filemtime(), filesize() and ++ related functions. (Pierre) ++ . Re-added socket_create_pair() for Windows in sockets extension. (Kalle) ++ . Added inet_pton() and inet_ntop() also for Windows platforms. ++ (Kalle, Pierre) ++ . Added mcrypt_create_iv() for Windows platforms. (Pierre) ++ . Added ACL Cache support on Windows. ++ (Kanwaljeet Singla, Pierre, Venkat Raman Don) ++ . Added constants based on Windows' GetVersionEx information. ++ PHP_WINDOWS_VERSION_* and PHP_WINDOWS_NT_*. (Pierre) ++ . Added support for ACL (is_writable, is_readable, reports now correct ++ results) on Windows. (Pierre, Venkat Raman Don, Kanwaljeet Singla) ++ . Added support for fnmatch() on Windows. (Pierre) ++ . Added support for time_nanosleep() and time_sleep_until() on Windows. ++ (Pierre) ++ . Added support for symlink(), readlink(), linkinfo() and link() on Windows. ++ They are available only when the running platform supports them. (Pierre) ++ . the GMP extension now relies on MPIR instead of the GMP library. (Pierre) ++ . Added Windows support for stream_socket_pair(). (Kalle) ++ . Drop all external dependencies for the core features. (Pierre) ++ . Drastically improve the build procedure (Pierre, Kalle, Rob): ++ . VC9 (Visual C++ 2008) or later support ++ . Initial experimental x64 support ++ . MSI installer now supports all recent Windows versions, including ++ Windows 7. (John, Kanwaljeet Singla) ++ ++- Improved and cleaned CGI code: ++ . FastCGI is now always enabled and cannot be disabled. ++ See sapi/cgi/CHANGES for more details. (Dmitry) ++ . Added CGI SAPI -T option which can be used to measure execution ++ time of script repeated several times. (Dmitry) ++ ++- Improved streams: ++ . Fixed confusing error message on failure when no errors are logged. (Greg) ++ . Added stream_supports_lock() function. (Benjamin Schulz) ++ . Added context parameter for copy() function. (Sara) ++ . Added "glob://" stream wrapper. (Marcus) ++ . Added "params" as optional parameter for stream_context_create(). (Sara) ++ . Added ability to use stream wrappers in include_path. (Gregory, Dmitry) ++ ++- Improved DNS API ++ . Added Windows support for dns_check_record(), dns_get_mx(), checkdnsrr() and ++ getmxrr(). (Pierre) ++ . Added support for old style DNS functions (supports OSX and FBSD). (Scott) ++ . Added a new "entries" array in dns_check_record() containing the TXT ++ elements. (Felipe, Pierre) ++ ++- Improved hash extension: ++ . Changed mhash to be a wrapper layer around the hash extension. (Scott) ++ . Added hash_copy() function. (Tony) ++ . Added sha224 hash algorithm to the hash extension. (Scott) ++ ++- Improved IMAP support (Pierre): ++ . Added imap_gc() to clear the imap cache ++ . Added imap_utf8_to_mutf7() and imap_mutf7_to_utf8() ++ ++- Improved mbstring extension: ++ . Added "mbstring.http_output_conv_mimetypes" INI directive that allows ++ common non-text types such as "application/xhtml+xml" to be converted ++ by mb_output_handler(). (Moriyoshi) ++ ++- Improved OCI8 extension (Chris Jones/Oracle Corp.): ++ . Added Database Resident Connection Pooling (DRCP) and Fast ++ Application Notification (FAN) support. ++ . Added support for Oracle External Authentication (not supported ++ on Windows). ++ . Improve persistent connection handling of restarted DBs. ++ . Added SQLT_AFC (aka CHAR datatype) support to oci_bind_by_name. ++ . Fixed bug #45458 (Numeric keys for associative arrays are not ++ handled properly) ++ . Fixed bug #41069 (Segmentation fault with query over DB link). ++ . Fixed define of SQLT_BDOUBLE and SQLT_BFLOAT constants with Oracle ++ 10g ORACLE_HOME builds. ++ . Changed default value of oci8.default_prefetch from 10 to 100. ++ . Fixed PECL Bug #16035 (OCI8: oci_connect without ORACLE_HOME defined causes ++ segfault) (Chris Jones/Oracle Corp.) ++ . Fixed PECL Bug #15988 (OCI8: sqlnet.ora isn't read with older Oracle ++ libraries) (Chris Jones/Oracle Corp.) ++ . Fixed PECL Bug #14268 (Allow "pecl install oci8" command to "autodetect" an ++ Instant Client RPM install) (Chris Jones/Oracle Corp.) ++ . Fixed PECL bug #12431 (OCI8 ping functionality is broken). ++ . Allow building (e.g from PECL) the PHP 5.3-based OCI8 code with ++ PHP 4.3.9 onwards. ++ . Provide separate extensions for Oracle 11g and 10g on Windows. ++ (Pierre, Chris) ++ ++- Improved OpenSSL extension: ++ . Added support for OpenSSL digest and cipher functions. (Dmitry) ++ . Added access to internal values of DSA, RSA and DH keys. (Dmitry) ++ . Fixed a memory leak on openssl_decrypt(). (Henrique) ++ . Fixed segfault caused by openssl_pkey_new(). (Henrique) ++ . Fixed bug caused by uninitilized variables in openssl_pkcs7_encrypt() and ++ openssl_pkcs7_sign(). (Henrique) ++ . Fixed error message in openssl_seal(). (Henrique) ++ ++- Improved pcntl extension: (Arnaud) ++ . Added pcntl_signal_dispatch(). ++ . Added pcntl_sigprocmask(). ++ . Added pcntl_sigwaitinfo(). ++ . Added pcntl_sigtimedwait(). ++ ++- Improved SOAP extension: ++ . Added support for element names in context of XMLSchema's . (Dmitry) ++ . Added ability to use Traversable objects instead of plain arrays. ++ (Joshua Reese, Dmitry) ++ . Fixed possible crash bug caused by an uninitialized value. (Zdash Urf) ++ ++- Improved SPL extension: ++ . Added SPL to list of standard extensions that cannot be disabled. (Marcus) ++ . Added ability to store associative information with objects in ++ SplObjectStorage. (Marcus) ++ . Added ArrayAccess support to SplObjectStorage. (Marcus) ++ . Added SplDoublyLinkedList, SplStack, SplQueue classes. (Etienne) ++ . Added FilesystemIterator. (Marcus) ++ . Added GlobIterator. (Marcus) ++ . Added SplHeap, SplMinHeap, SplMaxHeap, SplPriorityQueue classes. (Etienne) ++ . Added new parameter $prepend to spl_autoload_register(). (Etienne) ++ . Added SplFixedArray. (Etienne, Tony) ++ . Added delaying exceptions in SPL's autoload mechanism. (Marcus) ++ . Added RecursiveTreeIterator. (Arnaud, Marcus) ++ . Added MultipleIterator. (Arnaud, Marcus, Johannes) ++ ++- Improved Zend Engine: ++ . Added "compact" handler for Zend MM storage. (Dmitry) ++ . Added "+" and "*" specifiers to zend_parse_parameters(). (Andrei) ++ . Added concept of "delayed early binding" that allows opcode caches to ++ perform class declaration (early and/or run-time binding) in exactly ++ the same order as vanilla PHP. (Dmitry) ++ ++- Improved crypt() function: (Pierre) ++ . Added Blowfish and extended DES support. (Using Blowfish implementation ++ from Solar Designer). ++ . Made crypt features portable by providing our own implementations ++ for crypt_r and the algorithms which are used when OS does not provide ++ them. PHP implementations are always used for Windows builds. ++ ++- Deprecated session_register(), session_unregister() and ++ session_is_registered(). (Hannes) ++- Deprecated define_syslog_variables(). (Kalle) ++- Deprecated ereg extension. (Felipe) ++ ++- Added new extensions: ++ . Added Enchant extension as a way to access spell checkers. (Pierre) ++ . Added fileinfo extension as replacement for mime_magic extension. (Derick) ++ . Added intl extension for Internationalization. (Ed B., Vladimir I., ++ Dmitry L., Stanislav M., Vadim S., Kirti V.) ++ . Added mysqlnd extension as replacement for libmysql for ext/mysql, mysqli ++ and PDO_mysql. (Andrey, Johannes, Ulf) ++ . Added phar extension for handling PHP Archives. (Greg, Marcus, Steph) ++ . Added SQLite3 extension. (Scott) ++ ++- Added new date/time functionality: (Derick) ++ . date_parse_from_format(): Parse date/time strings according to a format. ++ . date_create_from_format()/DateTime::createFromFormat(): Create a date/time ++ object by parsing a date/time string according to a given format. ++ . date_get_last_errors()/DateTime::getLastErrors(): Return a list of warnings ++ and errors that were found while parsing a date/time string through: ++ . strtotime() / new DateTime ++ . date_create_from_format() / DateTime::createFromFormat() ++ . date_parse_from_format(). ++ . support for abbreviation and offset based timezone specifiers for ++ the 'e' format specifier, DateTime::__construct(), DateTime::getTimeZone() ++ and DateTimeZone::getName(). ++ . support for selectively listing timezone identifiers by continent or ++ country code through timezone_identifiers_list() / ++ DateTimezone::listIdentifiers(). ++ . timezone_location_get() / DateTimezone::getLocation() for retrieving ++ location information from timezones. ++ . date_timestamp_set() / DateTime::setTimestamp() to set a Unix timestamp ++ without invoking the date parser. (Scott, Derick) ++ . date_timestamp_get() / DateTime::getTimestamp() to retrieve the Unix ++ timestamp belonging to a date object. ++ . two optional parameters to timezone_transitions_get() / ++ DateTimeZone::getTranstions() to limit the range of transitions being ++ returned. ++ . support for "first/last day of " style texts. ++ . support for date/time strings returned by MS SQL. ++ . support for serialization and unserialization of DateTime objects. ++ . support for diffing date/times through date_diff() / DateTime::diff(). ++ . support for adding/subtracting weekdays with strtotime() and ++ DateTime::modify(). ++ . DateInterval class to represent the difference between two date/times. ++ . support for parsing ISO intervals for use with DateInterval. ++ . date_add() / DateTime::add(), date_sub() / DateTime::sub() for applying an ++ interval to an existing date/time. ++ . proper support for "this week", "previous week"/"last week" and "next week" ++ phrases so that they actually mean the week and not a seven day period ++ around the current day. ++ . support for " of" and "last of" phrases to be used ++ with months - like in "last saturday of februari 2008". ++ . support for "back of " and "front of " phrases that are used in ++ Scotland. ++ . DatePeriod class which supports iterating over a DateTime object applying ++ DateInterval on each iteration, up to an end date or limited by maximum ++ number of occurences. ++ ++- Added compatibility mode in GD, imagerotate, image(filled)ellipse ++ imagefilter, imageconvolution and imagecolormatch are now always enabled. ++ (Pierre) ++- Added array_replace() and array_replace_recursive() functions. (Matt) ++- Added ReflectionProperty::setAccessible() method that allows non-public ++ property's values to be read through ::getValue() and set through ++ ::setValue(). (Derick, Sebastian) ++- Added msg_queue_exists() function to sysvmsg extension. (Benjamin Schulz) ++- Added Firebird specific attributes that can be set via PDO::setAttribute() ++ to control formatting of date/timestamp columns: PDO::FB_ATTR_DATE_FORMAT, ++ PDO::FB_ATTR_TIME_FORMAT and PDO::FB_ATTR_TIMESTAMP_FORMAT. (Lars W) ++- Added gmp_testbit() function. (Stas) ++- Added icon format support to getimagesize(). (Scott) ++- Added LDAP_OPT_NETWORK_TIMEOUT option for ldap_set_option() to allow ++ setting network timeout (FR #42837). (Jani) ++- Added optional escape character parameter to fgetcsv(). (David Soria Parra) ++- Added an optional parameter to strstr() and stristr() for retrieval of either ++ the part of haystack before or after first occurrence of needle. ++ (Johannes, Felipe) ++- Added xsl->setProfiling() for profiling stylesheets. (Christian) ++- Added long-option feature to getopt() and made getopt() available also on ++ win32 systems by adding a common getopt implementation into core. ++ (David Soria Parra, Jani) ++- Added support for optional values, and = as separator, in getopt(). (Hannes) ++- Added lcfirst() function. (David C) ++- Added PREG_BAD_UTF8_OFFSET_ERROR constant. (Nuno) ++- Added native support for asinh(), acosh(), atanh(), log1p() and expm1(). ++ (Kalle) ++- Added LIBXML_LOADED_VERSION constant (libxml2 version currently used). (Rob) ++- Added JSON_FORCE_OBJECT flag to json_encode(). (Scott, Richard Quadling) ++- Added timezone_version_get() to retrieve the version of the used timezone ++ database. (Derick) ++- Added 'n' flag to fopen to allow passing O_NONBLOCK to the underlying ++ open(2) system call. (Mikko) ++- Added "dechunk" filter which can decode HTTP responses with chunked ++ transfer-encoding. HTTP streams use this filter automatically in case ++ "Transfer-Encoding: chunked" header is present in response. It's possible to ++ disable this behaviour using "http"=>array("auto_decode"=>0) in stream ++ context. (Dmitry) ++- Added support for CP850 encoding in mbstring extension. ++ (Denis Giffeler, Moriyoshi) ++- Added stream_cast() and stream_set_options() to user-space stream wrappers, ++ allowing stream_select(), stream_set_blocking(), stream_set_timeout() and ++ stream_set_write_buffer() to work with user-space stream wrappers. (Arnaud) ++- Added header_remove() function. (chsc at peytz dot dk, Arnaud) ++- Added stream_context_get_params() function. (Arnaud) ++- Added optional parameter "new" to sybase_connect(). (Timm) ++- Added parse_ini_string() function. (grange at lemonde dot fr, Arnaud) ++- Added str_getcsv() function. (Sara) ++- Added openssl_random_pseudo_bytes() function. (Scott) ++- Added ability to send user defined HTTP headers with SOAP request. ++ (Brian J.France, Dmitry) ++- Added concatenation option to bz2.decompress stream filter. ++ (Keisial at gmail dot com, Greg) ++- Added support for using compressed connections with PDO_mysql. (Johannes) ++- Added the ability for json_decode() to take a user specified depth. (Scott) ++- Added support for the mysql_stmt_next_result() function from libmysql. ++ (Andrey) ++- Added function preg_filter() that does grep and replace in one go. (Marcus) ++- Added system independent realpath() implementation which caches intermediate ++ directories in realpath-cache. (Dmitry) ++- Added optional clear_realpath_cache and filename parameters to ++ clearstatcache(). (Jani, Arnaud) ++- Added litespeed SAPI module. (George Wang) ++- Added ext/hash support to ext/session's ID generator. (Sara) ++- Added quoted_printable_encode() function. (Tony) ++- Added stream_context_set_default() function. (Davey Shafik) ++- Added optional "is_xhtml" parameter to nl2br() which makes the function ++ output
when false and
when true (FR #34381). (Kalle) ++- Added PHP_MAXPATHLEN constant (maximum length of a path). (Pierre) ++- Added support for SSH via libssh2 in cURL. (Pierre) ++- Added support for gray levels PNG image with alpha in GD extension. (Pierre) ++- Added support for salsa hashing functions in HASH extension. (Scott) ++- Added DOMNode::getLineNo to get line number of parsed node. (Rob) ++- Added table info to PDO::getColumnMeta() with SQLite. (Martin Jansen, Scott) ++- Added mail logging functionality that allows logging of mail sent via ++ mail() function. (Ilia) ++- Added json_last_error() to return any error information from json_decode(). ++ (Scott) ++- Added gethostname() to return the current system host name. (Ilia) ++- Added shm_has_var() function. (Mike) ++- Added depth parameter to json_decode() to lower the nesting depth from the ++ maximum if required. (Scott) ++- Added pixelation support in imagefilter(). (Takeshi Abe, Kalle) ++- Added SplObjectStorage::addAll/removeAll. (Etienne) ++ ++- Implemented FR #41712 (curl progress callback: CURLOPT_PROGRESSFUNCTION). ++ (sdteffen[at]gmail[dot].com, Pierre) ++- Implemented FR #47739 (Missing cURL option do disable IPv6). (Pierre) ++- Implemented FR #39637 (Missing cURL option CURLOPT_FTP_FILEMETHOD). (Pierre) ++ ++- Fixed an issue with ReflectionProperty::setAccessible(). ++ (Sebastian, Roman Borschel) ++- Fixed html_entity_decode() incorrectly converting numeric html entities ++ to different characters with cp1251 and cp866. (Scott) ++- Fixed an issue in date() where a : was printed for the O modifier after a P ++ modifier was used. (Derick) ++- Fixed exec() on Windows to not eat the first and last double quotes. (Scott) ++- Fixed readlink on Windows in thread safe SAPI (apache2.x etc.). (Pierre) ++- Fixed a bug causing miscalculations with the "last of month" ++ relative time string. (Derick) ++- Fixed bug causing the algorithm parameter of mhash() to be modified. (Scott) ++- Fixed invalid calls to free when internal fileinfo magic file is used. (Scott) ++- Fixed memory leak inside wddx_add_vars() function. (Felipe) ++- Fixed check in recode extension to allow builing of recode and mysql ++ extensions when using a recent libmysql. (Johannes) ++ ++- Fixed PECL bug #12794 (PDOStatement->nextRowset() doesn't work). (Johannes) ++- Fixed PECL bug #12401 (Add support for ATTR_FETCH_TABLE_NAMES). (Johannes) ++ ++- Fixed bug #48696 (ldap_read() segfaults with invalid parameters). (Felipe) ++- Fixed bug #48643 (String functions memory issue). (Dmitry) ++- Fixed bug #48641 (tmpfile() uses old parameter parsing). ++ (crrodriguez at opensuse dot org) ++- Fixed bug #48624 (.user.ini never gets parsed). (Pierre) ++- Fixed bug #48620 (X-PHP-Originating-Script assumes no trailing CRLF in ++ existing headers). (Ilia) ++- Fixed bug #48578 (Can't build 5.3 on FBSD 4.11). (Rasmus) ++- Fixed bug #48535 (file_exists returns false when impersonate is used). ++ (Kanwaljeet Singla, Venkat Raman Don) ++- Fixed bug #48493 (spl_autoload_register() doesn't work correctly when ++ prepending functions). (Scott) ++- Fixed bug #48215 (Calling a method with the same name as the parent class ++ calls the constructor). (Scott) ++- Fixed bug #48200 (compile failure with mbstring.c when ++ --enable-zend-multibyte is used). (Jani) ++- Fixed bug #48188 (Cannot execute a scrollable cursors twice with PDO_PGSQL). ++ (Matteo) ++- Fixed bug #48185 (warning: value computed is not used in ++ pdo_sqlite_stmt_get_col line 271). (Matteo) ++- Fixed bug #48087 (call_user_method() invalid free of arguments). (Felipe) ++- Fixed bug #48060 (pdo_pgsql - large objects are returned as empty). (Matteo) ++- Fixed bug #48034 (PHP crashes when script is 8192 (8KB) bytes long). (Dmitry) ++- Fixed bug #48004 (Error handler prevents creation of default object). (Dmitry) ++- Fixed bug #47880 (crashes in call_user_func_array()). (Dmitry) ++- Fixed bug #47856 (stristr() converts needle to lower-case). (Ilia) ++- Fixed bug #47851 (is_callable throws fatal error). (Dmitry) ++- Fixed bug #47816 (pcntl tests failing on NetBSD). (Matteo) ++- Fixed bug #47779 (Wrong value for SIG_UNBLOCK and SIG_SETMASK constants). ++ (Matteo) ++- Fixed bug #47771 (Exception during object construction from arg call calls ++ object's destructor). (Dmitry) ++- Fixed bug #47767 (include_once does not resolve windows symlinks or junctions) ++ (Kanwaljeet Singla, Venkat Raman Don) ++- Fixed bug #47757 (rename JPG to JPEG in phpinfo). (Pierre) ++- Fixed bug #47745 (FILTER_VALIDATE_INT doesn't allow minimum integer). (Dmitry) ++- Fixed bug #47714 (autoloading classes inside exception_handler leads to ++ crashes). (Dmitry) ++- Fixed bug #47671 (Cloning SplObjectStorage instances). (Etienne) ++- Fixed bug #47664 (get_class returns NULL instead of FALSE). (Dmitry) ++- Fixed bug #47662 (Support more than 127 subpatterns in preg_match). (Nuno) ++- Fixed bug #47596 (Bus error on parsing file). (Dmitry) ++- Fixed bug #47572 (Undefined constant causes segmentation fault). (Felipe) ++- Fixed bug #47560 (explode()'s limit parameter odd behaviour). (Matt) ++- Fixed bug #47549 (get_defined_constants() return array with broken array ++ categories). (Ilia) ++- Fixed bug #47535 (Compilation failure in ps_fetch_from_1_to_8_bytes()). ++ (Johannes) ++- Fixed bug #47534 (RecursiveDiteratoryIterator::getChildren ignoring ++ CURRENT_AS_PATHNAME). (Etienne) ++- Fixed bug #47443 (metaphone('scratch') returns wrong result). (Felipe) ++- Fixed bug #47438 (mysql_fetch_field ignores zero offset). (Johannes) ++- Fixed bug #47398 (PDO_Firebird doesn't implements quoter correctly). (Felipe) ++- Fixed bug #47390 (odbc_fetch_into - BC in php 5.3.0). (Felipe) ++- Fixed bug #47359 (Use the expected unofficial mimetype for bmp files). (Scott) ++- Fixed bug #47343 (gc_collect_cycles causes a segfault when called within a ++ destructor in one case). (Dmitry) ++- Fixed bug #47320 ($php_errormsg out of scope in functions). (Dmitry) ++- Fixed bug #47318 (UMR when trying to activate user config). (Pierre) ++- Fixed bug #47243 (OCI8: Crash at shutdown on Windows) (Chris Jones/Oracle ++ Corp.) ++- Fixed bug #47231 (offsetGet error using incorrect offset). (Etienne) ++- Fixed bug #47229 (preg_quote() should escape the '-' char). (Nuno) ++- Fixed bug #47165 (Possible memory corruption when passing return value by ++ reference). (Dmitry) ++- Fixed bug #47087 (Second parameter of mssql_fetch_array()). (Felipe) ++- Fixed bug #47085 (rename() returns true even if the file in PHAR does not ++ exist). (Greg) ++- Fixed bug #47050 (mysqli_poll() modifies improper variables). (Johannes) ++- Fixed bug #47045 (SplObjectStorage instances compared with ==). (Etienne) ++- Fixed bug #47038 (Memory leak in include). (Dmitry) ++- Fixed bug #47031 (Fix constants in DualIterator example). (Etienne) ++- Fixed bug #47021 (SoapClient stumbles over WSDL delivered with ++ "Transfer-Encoding: chunked"). (Dmitry) ++- Fixed bug #46994 (OCI8: CLOB size does not update when using CLOB IN OUT param ++ in stored procedure) (Chris Jones/Oracle Corp.) ++- Fixed bug #46979 (use with non-compound name *has* effect). (Dmitry) ++- Fixed bug #46957 (The tokenizer returns deprecated values). (Felipe) ++- Fixed bug #46944 (UTF-8 characters outside the BMP aren't encoded correctly). ++ (Scott) ++- Fixed bug #46897 (ob_flush() should fail to flush unerasable buffers). ++ (David C.) ++- Fixed bug #46849 (Cloning DOMDocument doesn't clone the properties). (Rob) ++- Fixed bug #46847 (phpinfo() is missing some settings). (Hannes) ++- Fixed bug #46844 (php scripts or included files with first line starting ++ with # have the 1st line missed from the output). (Ilia) ++- Fixed bug #46817 (tokenizer misses last single-line comment (PHP 5.3+, with ++ re2c lexer)). (Matt, Shire) ++- Fixed bug #46811 (ini_set() doesn't return false on failure). (Hannes) ++- Fixed bug #46763 (mb_stristr() wrong output when needle does not exist). ++ (Henrique M. Decaria) ++- Fixed bug #46755 (warning: use statement with non-compound name). (Dmitry) ++- Fixed bug #46746 (xmlrpc_decode_request outputs non-suppressable error when ++ given bad data). (Ilia) ++- Fixed bug #46738 (Segfault when mb_detect_encoding() fails). (Scott) ++- Fixed bug #46731 (Missing validation for the options parameter of the ++ imap_fetch_overview() function). (Ilia) ++- Fixed bug #46711 (cURL curl_setopt leaks memory in foreach loops). (magicaltux ++ [at] php [dot] net) ++- Fixed bug #46701 (Creating associative array with long values in the key fails ++ on 32bit linux). (Shire) ++- Fixed bug #46681 (mkdir() fails silently on PHP 5.3). (Hannes) ++- Fixed bug #46653 (can't extend mysqli). (Johannes) ++- Fixed bug #46646 (Restrict serialization on some internal classes like Closure ++ and SplFileInfo using exceptions). (Etienne) ++- Fixed bug #46623 (OCI8: phpinfo doesn't show compile time ORACLE_HOME with ++ phpize) (Chris Jones/Oracle Corp.) ++- Fixed bug #46578 (strip_tags() does not honor end-of-comment when it ++ encounters a single quote). (Felipe) ++- Fixed bug #46546 (Segmentation fault when using declare statement with ++ non-string value). (Felipe) ++- Fixed bug #46542 (Extending PDO class with a __call() function doesn't work as ++ expected). (Johannes) ++- Fixed bug #46421 (SplFileInfo not correctly handling /). (Etienne) ++- Fixed bug #46347 (parse_ini_file() doesn't support * in keys). (Nuno) ++- Fixed bug #46268 (DateTime::modify() does not reset relative time values). ++ (Derick) ++- Fixed bug #46241 (stacked error handlers, internal error handling in general). ++ (Etienne) ++- Fixed bug #46238 (Segmentation fault on static call with empty string method). ++ (Felipe) ++- Fixed bug #46192 (ArrayObject with objects as storage serialization). ++ (Etienne) ++- Fixed bug #46185 (importNode changes the namespace of an XML element). (Rob) ++- Fixed bug #46178 (memory leak in ext/phar). (Greg) ++- Fixed bug #46160 (SPL - Memory leak when exception is thrown in offsetSet). ++ (Felipe) ++- Fixed Bug #46147 (after stream seek, appending stream filter reads incorrect ++ data). (Greg) ++- Fixed bug #46127 (php_openssl_tcp_sockop_accept forgets to set context on ++ accepted stream) (Mark Karpeles, Pierre) ++- Fixed bug #46115 (Memory leak when calling a method using Reflection). ++ (Dmitry) ++- Fixed bug #46110 (XMLWriter - openmemory() and openuri() leak memory on ++ multiple calls). (Ilia) ++- Fixed bug #46108 (DateTime - Memory leak when unserializing). (Felipe) ++- Fixed bug #46106 (Memory leaks when using global statement). (Dmitry) ++- Fixed bug #46099 (Xsltprocessor::setProfiling - memory leak). (Felipe, Rob). ++- Fixed bug #46087 (DOMXPath - segfault on destruction of a cloned object). ++ (Ilia) ++- Fixed bug #46048 (SimpleXML top-level @attributes not part of iterator). ++ (David C.) ++- Fixed bug #46044 (Mysqli - wrong error message). (Johannes) ++- Fixed bug #46042 (memory leaks with reflection of mb_convert_encoding()). ++ (Ilia) ++- Fixed bug #46039 (ArrayObject iteration is slow). (Arnaud) ++- Fixed bug #46033 (Direct instantiation of SQLite3stmt and SQLite3result cause ++ a segfault.) (Scott) ++- Fixed bug #45991 (Ini files with the UTF-8 BOM are treated as invalid). ++ (Scott) ++- Fixed bug #45989 (json_decode() doesn't return NULL on certain invalid ++ strings). (magicaltux, Scott) ++- Fixed bug #45976 (Moved SXE from SPL to SimpleXML). (Etienne) ++- Fixed bug #45928 (large scripts from stdin are stripped at 16K border). ++ (Christian Schneider, Arnaud) ++- Fixed bug #45911 (Cannot disable ext/hash). (Arnaud) ++- Fixed bug #45907 (undefined reference to 'PHP_SHA512Init'). (Greg) ++- Fixed bug #45826 (custom ArrayObject serialization). (Etienne) ++- Fixed bug #45820 (Allow empty keys in ArrayObject). (Etienne) ++- Fixed bug #45791 (json_decode() doesn't convert 0e0 to a double). (Scott) ++- Fixed bug #45786 (FastCGI process exited unexpectedly). (Dmitry) ++- Fixed bug #45757 (FreeBSD4.11 build failure: failed include; stdint.h). ++ (Hannes) ++- Fixed bug #45743 (property_exists fails to find static protected member in ++ child class). (Felipe) ++- Fixed bug #45717 (Fileinfo/libmagic build fails, missing err.h and getopt.h). ++ (Derick) ++- Fixed bug #45706 (Unserialization of classes derived from ArrayIterator ++ fails). (Etienne, Dmitry) ++- Fixed bug #45696 (Not all DateTime methods allow method chaining). (Derick) ++- Fixed bug #45682 (Unable to var_dump(DateInterval)). (Derick) ++- Fixed bug #45447 (Filesystem time functions on Vista and server 2008). ++ (Pierre) ++- Fixed bug #45432 (PDO: persistent connection leak). (Felipe) ++- Fixed bug #45392 (ob_start()/ob_end_clean() and memory_limit). (Ilia) ++- Fixed bug #45384 (parse_ini_file will result in parse error with no trailing ++ newline). (Arnaud) ++- Fixed bug #45382 (timeout bug in stream_socket_enable_crypto). (vnegrier at ++ optilian dot com, Ilia) ++- Fixed bug #45044 (relative paths not resolved correctly). (Dmitry) ++- Fixed bug #44861 (scrollable cursor don't work with pgsql). (Matteo) ++- Fixed bug #44842 (parse_ini_file keys that start/end with underscore). ++ (Arnaud) ++- Fixed bug #44575 (parse_ini_file comment # line problems). (Arnaud) ++- Fixed bug #44409 (PDO::FETCH_SERIALIZE calls __construct()). (Matteo) ++- Fixed bug #44173 (PDO->query() parameter parsing/checking needs an update). ++ (Matteo) ++- Fixed bug #44154 (pdo->errorInfo() always have three elements in the returned ++ array). (David C.) ++- Fixed bug #44153 (pdo->errorCode() returns NULL when there are no errors). ++ (David C.) ++- Fixed bug #44135 (PDO MySQL does not support CLIENT_FOUND_ROWS). (Johannes, ++ chx1975 at gmail dot com) ++- Fixed bug #44100 (Inconsistent handling of static array declarations with ++ duplicate keys). (Dmitry) ++- Fixed bug #43831 ($this gets mangled when extending PDO with persistent ++ connection). (Felipe) ++- Fixed bug #43817 (opendir() fails on Windows directories with parent directory ++ unaccessible). (Dmitry) ++- Fixed bug #43069 (SoapClient causes 505 HTTP Version not supported error ++ message). (Dmitry) ++- Fixed bug #43008 (php://filter uris ignore url encoded filternames and can't ++ handle slashes). (Arnaud) ++- Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped). ++ (Scott, Edward Z. Yang) ++- Fixed bug #41874 (separate STDOUT and STDERR in exec functions). (Kanwaljeet ++ Singla, Venkat Raman Don, Pierre) ++- Fixed bug #41534 (SoapClient over HTTPS fails to reestablish connection). ++ (Dmitry) ++- Fixed bug #38802 (max_redirects and ignore_errors). (patch by ++ datibbaw@php.net) ++- Fixed bug #35980 (touch() works on files but not on directories). (Pierre) ++ ++17 Jun 2009, PHP 5.2.10 ++- Updated timezone database to version 2009.9 (2009i) (Derick) ++ ++- Added "ignore_errors" option to http fopen wrapper. (David Zulke, Sara) ++- Added new CURL options CURLOPT_REDIR_PROTOCOLS, CURLOPT_PROTOCOLS, ++ and CURLPROTO_* for redirect fixes in CURL 7.19.4. (Yoram Bar Haim, Stas) ++- Added support for Sun CC (FR #46595 and FR #46513). (David Soria Parra) ++ ++- Changed default value of array_unique()'s optional sorting type parameter ++ back to SORT_STRING to fix backwards compatibility breakage introduced in ++ PHP 5.2.9. (Moriyoshi) ++ ++- Fixed memory corruptions while reading properties of zip files. (Ilia) ++- Fixed memory leak in ob_get_clean/ob_get_flush. (Christian) ++- Fixed segfault on invalid session.save_path. (Hannes) ++- Fixed leaks in imap when a mail_criteria is used. (Pierre) ++- Fixed missing erealloc() in fix for Bug #40091 in spl_autoload_register. (Greg) ++ ++- Fixed bug #48562 (Reference recursion causes segfault when used in ++ wddx_serialize_vars()). (Felipe) ++- Fixed bug #48557 (Numeric string keys in Apache Hashmaps are not cast to ++ integers). (David Zuelke) ++- Fixed bug #48518 (curl crashes when writing into invalid file handle). (Tony) ++- Fixed bug #48514 (cURL extension uses same resource name for simple and ++ multi APIs). (Felipe) ++- Fixed bug #48469 (ldap_get_entries() leaks memory on empty search ++ results). (Patrick) ++- Fixed bug #48456 (CPPFLAGS not restored properly in phpize.m4). (Jani, ++ spisek at kerio dot com) ++- Fixed bug #48448 (Compile failure under IRIX 6.5.30 building cast.c). ++ (Kalle) ++- Fixed bug #48441 (ldap_search() sizelimit, timelimit and deref options ++ persist). (Patrick) ++- Fixed bug #48434 (Improve memory_get_usage() accuracy). (Arnaud) ++- Fixed bug #48416 (Force a cache limit in ereg() to stop excessive memory ++ usage). (Scott) ++- Fixed bug #48409 (Crash when exception is thrown while passing function ++ arguments). (Arnaud) ++- Fixed bug #48378 (exif_read_data() segfaults on certain corrupted .jpeg ++ files). (Pierre) ++- Fixed bug #48359 (Script hangs on snmprealwalk if OID is not increasing). ++ (Ilia, simonov at gmail dot com) ++- Fixed bug #48336 (ReflectionProperty::getDeclaringClass() does not work ++ with redeclared property). ++ (patch by Markus dot Lidel at shadowconnect dot com) ++- Fixed bug #48326 (constant MSG_DONTWAIT not defined). (Arnaud) ++- Fixed bug #48313 (fgetcsv() does not return null for empty rows). (Ilia) ++- Fixed bug #48309 (stream_copy_to_stream() and fpasstru() do not update ++ stream position of plain files). (Arnaud) ++- Fixed bug #48307 (stream_copy_to_stream() copies 0 bytes when $source is a ++ socket). (Arnaud) ++- Fixed bug #48273 (snmp*_real_walk() returns SNMP errors as values). ++ (Ilia, lytboris at gmail dot com) ++- Fixed bug #48256 (Crash due to double-linking of history.o). ++ (tstarling at wikimedia dot org) ++- Fixed bug #48248 (SIGSEGV when access to private property via &__get). ++ (Felipe) ++- Fixed bug #48247 (Crash on errors during startup). (Stas) ++- Fixed bug #48240 (DBA Segmentation fault dba_nextkey). (Felipe) ++- Fixed bug #48224 (Incorrect shuffle in array_rand). (Etienne) ++- Fixed bug #48221 (memory leak when passing invalid xslt parameter). ++ (Felipe) ++- Fixed bug #48207 (CURLOPT_(FILE|WRITEHEADER options do not error out when ++ working with a non-writable stream). (Ilia) ++- Fixed bug #48206 (Iterating over an invalid data structure with ++ RecursiveIteratorIterator leads to a segfault). (Scott) ++- Fixed bug #48204 (xmlwriter_open_uri() does not emit warnings on invalid ++ paths). (Ilia) ++- Fixed bug #48203 (Crash when CURLOPT_STDERR is set to regular file). (Jani) ++- Fixed bug #48202 (Out of Memory error message when passing invalid file ++ path) (Pierre) ++- Fixed bug #48156 (Added support for lcov v1.7). (Ilia) ++- Fixed bug #48132 (configure check for curl ssl support fails with ++ --disable-rpath). (Jani) ++- Fixed bug #48131 (Don't try to bind ipv4 addresses to ipv6 ips via bindto). ++ (Ilia) ++- Fixed bug #48070 (PDO_OCI: Segfault when using persistent connection). ++ (Pierre, Matteo, jarismar dot php at gmail dot com) ++- Fixed bug #48058 (Year formatter goes wrong with out-of-int range). (Derick) ++- Fixed bug #48038 (odbc_execute changes variables used to form params array). ++ (Felipe) ++- Fixed bug #47997 (stream_copy_to_stream returns 1 on empty streams). (Arnaud) ++- Fixed bug #47991 (SSL streams fail if error stack contains items). (Mikko) ++- Fixed bug #47981 (error handler not called regardless). (Hannes) ++- Fixed bug #47969 (ezmlm_hash() returns different values depend on OS). (Ilia) ++- Fixed bug #47946 (ImageConvolution overwrites background). (Ilia) ++- Fixed bug #47940 (memory leaks in imap_body). (Pierre, Jake Levitt) ++- Fixed bug #47937 (system() calls sapi_flush() regardless of output ++ buffering). (Ilia) ++- Fixed bug #47903 ("@" operator does not work with string offsets). (Felipe) ++- Fixed bug #47893 (CLI aborts on non blocking stdout). (Arnaud) ++- Fixed bug #47849 (Non-deep import loses the namespace). (Rob) ++- Fixed bug #47845 (PDO_Firebird omits first row from query). (Lars W) ++- Fixed bug #47836 (array operator [] inconsistency when the array has ++ PHP_INT_MAX index value). (Matt) ++- Fixed bug #47831 (Compile warning for strnlen() in main/spprintf.c). ++ (Ilia, rainer dot jung at kippdata dot de) ++- Fixed bug #47828 (openssl_x509_parse() segfaults when a UTF-8 conversion ++ fails). (Scott, Kees Cook, Pierre) ++- Fixed bug #47818 (Segfault due to bound callback param). (Felipe) ++- Fixed bug #47801 (__call() accessed via parent:: operator is provided ++ incorrect method name). (Felipe) ++- Fixed bug #47769 (Strange extends PDO). (Felipe) ++- Fixed bug #47745 (FILTER_VALIDATE_INT doesn't allow minimum integer). ++ (Dmitry) ++- Fixed bug #47721 (Alignment issues in mbstring and sysvshm extension). ++ (crrodriguez at opensuse dot org, Ilia) ++- Fixed bug #47704 (PHP crashes on some "bad" operations with string ++ offsets). (Dmitry) ++- Fixed bug #47695 (build error when xmlrpc and iconv are compiled against ++ different iconv versions). (Scott) ++- Fixed bug #47667 (ZipArchive::OVERWRITE seems to have no effect). ++ (Mikko, Pierre) ++- Fixed bug #47644 (Valid integers are truncated with json_decode()). (Scott) ++- Fixed bug #47639 (pg_copy_from() WARNING: nonstandard use of \\ in a ++ string literal). (Ilia) ++- Fixed bug #47616 (curl keeps crashing). (Felipe) ++- Fixed bug #47598 (FILTER_VALIDATE_EMAIL is locale aware). (Ilia) ++- Fixed bug #47566 (pcntl_wexitstatus() returns signed status). ++ (patch by james at jamesreno dot com) ++- Fixed bug #47564 (unpacking unsigned long 32bit bit endian returns wrong ++ result). (Ilia) ++- Fixed bug #47487 (performance degraded when reading large chunks after ++ fix of bug #44607). (Arnaud) ++- Fixed bug #47468 (enable cli|cgi-only extensions for embed sapi). (Jani) ++- Fixed bug #47435 (FILTER_FLAG_NO_PRIV_RANGE does not work with ipv6 ++ addresses in the filter extension). (Ilia) ++- Fixed bug #47430 (Errors after writing to nodeValue parameter of an absent ++ previousSibling). (Rob) ++- Fixed bug #47365 (ip2long() may allow some invalid values on certain 64bit ++ systems). (Ilia) ++- Fixed bug #47254 (Wrong Reflection for extends class). (Felipe) ++- Fixed bug #47042 (cgi sapi is incorrectly removing SCRIPT_FILENAME). ++ (Sriram Natarajan, David Soria Parra) ++- Fixed bug #46882 (Serialize / Unserialize misbehaviour under OS with ++ different bit numbers). (Matt) ++- Fixed bug #46812 (get_class_vars() does not include visible private variable ++ looking at subclass). (Arnaud) ++- Fixed bug #46386 (Digest authentication with SOAP module fails against MSSQL ++ SOAP services). (Ilia, lordelph at gmail dot com) ++- Fixed bug #46109 (Memory leak when mysqli::init() is called multiple times). ++ (Andrey) ++- Fixed bug #45997 (safe_mode bypass with exec/system/passthru (windows only)). ++ (Pierre) ++- Fixed bug #45877 (Array key '2147483647' left as string). (Matt) ++- Fixed bug #45822 (Near infinite-loops while parsing huge relative offsets). ++ (Derick, Mike Sullivan) ++- Fixed bug #45799 (imagepng() crashes on empty image). ++ (Martin McNickle, Takeshi Abe) ++- Fixed bug #45622 (isset($arrayObject->p) misbehaves with ++ ArrayObject::ARRAY_AS_PROPS set). (robin_fernandes at uk dot ibm dot com, Arnaud) ++- Fixed bug #45614 (ArrayIterator::current(), ::key() can show 1st private prop ++ of wrapped object). (robin_fernandes at uk dot ibm dot com, Arnaud) ++- Fixed bug #45540 (stream_context_create creates bad http request). (Arnaud) ++- Fixed bug #45202 (zlib.output_compression can not be set with ini_set()). ++ (Jani) ++- Fixed bug #45191 (error_log ignores date.timezone php.ini val when setting ++ logging timestamps). (Derick) ++- Fixed bug #45092 (header HTTP context option not being used when compiled ++ using --with-curlwrappers). (Jani) ++- Fixed bug #44996 (xmlrpc_decode() ignores time zone on iso8601.datetime). ++ (Ilia, kawai at apache dot org) ++- Fixed bug #44827 (define() is missing error checks for class constants). ++ (Ilia) ++- Fixed bug #44214 (Crash using preg_replace_callback() and global variables). ++ (Nuno, Scott) ++- Fixed bug #43073 (TrueType bounding box is wrong for angle<>0). ++ (Martin McNickle) ++- Fixed bug #42663 (gzinflate() try to allocate all memory with truncated ++ data). (Arnaud) ++- Fixed bug #42414 (some odbc_*() functions incompatible with Oracle ODBC ++ driver). (jhml at gmx dot net) ++- Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped). ++ (Scott, Edward Z. Yang) ++- Fixed bug #42143 (The constant NAN is reported as 0 on Windows) ++ (Kanwaljeet Singla, Venkat Raman Don) ++- Fixed bug #38805 (PDO truncates text from SQL Server text data type field). ++ (Steph) ++ ++26 Feb 2009, PHP 5.2.9 ++- Changed __call() to be invoked on private/protected method access, similar to ++ properties and __get(). (Andrei) ++ ++- Added optional sorting type flag parameter to array_unique(). Default is ++ SORT_REGULAR. (Andrei) ++ ++- Fixed a crash on extract in zip when files or directories entry names contain ++ a relative path. (Pierre) ++- Fixed error conditions handling in stream_filter_append(). (Arnaud) ++- Fixed zip filename property read. (Pierre) ++- Fixed explode() behavior with empty string to respect negative limit. (Shire) ++- Fixed security issue in imagerotate(), background colour isn't validated ++ correctly with a non truecolour image. Reported by Hamid Ebadi, ++ APA Laboratory (Fixes CVE-2008-5498). (Scott) ++- Fixed a segfault when malformed string is passed to json_decode(). (Scott) ++- Fixed bug in xml_error_string() which resulted in messages being ++ off by one. (Scott) ++ ++- Fixed bug #47422 (modulus operator returns incorrect results on 64 bit ++ linux). (Matt) ++- Fixed bug #47399 (mb_check_encoding() returns true for some illegal SJIS ++ characters). (for-bugs at hnw dot jp, Moriyoshi) ++- Fixed bug #47353 (crash when creating a lot of objects in object ++ destructor). (Tony) ++- Fixed bug #47322 (sscanf %d doesn't work). (Felipe) ++- Fixed bug #47282 (FILTER_VALIDATE_EMAIL is marking valid email addresses ++ as invalid). (Ilia) ++- Fixed bug #47220 (segfault in dom_document_parser in recovery mode). (Rob) ++- Fixed bug #47217 (content-type is not set properly for file uploads). (Ilia) ++- Fixed bug #47174 (base64_decode() interprets pad char in mid string as ++ terminator). (Ilia) ++- Fixed bug #47165 (Possible memory corruption when passing return value by ++ reference). (Dmitry) ++- Fixed bug #47152 (gzseek/fseek using SEEK_END produces strange results). ++ (Felipe) ++- Fixed bug #47131 (SOAP Extension ignores "user_agent" ini setting). (Ilia) ++- Fixed bug #47109 (Memory leak on $a->{"a"."b"} when $a is not an object). ++ (Etienne, Dmitry) ++- Fixed bug #47104 (Linking shared extensions fails with icc). (Jani) ++- Fixed bug #47049 (SoapClient::__soapCall causes a segmentation fault). ++ (Dmitry) ++- Fixed bug #47048 (Segfault with new pg_meta_data). (Felipe) ++- Fixed bug #47042 (PHP cgi sapi is removing SCRIPT_FILENAME for non ++ apache). (Sriram Natarajan) ++- Fixed bug #47037 (No error when using fopen with empty string). (Cristian ++ Rodriguez R., Felipe) ++- Fixed bug #47035 (dns_get_record returns a garbage byte at the end of a ++ TXT record). (Felipe) ++- Fixed bug #47027 (var_export doesn't show numeric indices on ArrayObject). ++ (Derick) ++- Fixed bug #46985 (OVERWRITE and binary mode does not work, regression ++ introduced in 5.2.8). (Pierre) ++- Fixed bug #46973 (IPv6 address filter rejects valid address). (Felipe) ++- Fixed bug #46964 (Fixed pdo_mysql build with older version of MySQL). (Ilia) ++- Fixed bug #46959 (Unable to disable PCRE). (Scott) ++- Fixed bug #46918 (imap_rfc822_parse_adrlist host part not filled in ++ correctly). (Felipe) ++- Fixed bug #46889 (Memory leak in strtotime()). (Derick) ++- Fixed bug #46887 (Invalid calls to php_error_docref()). (oeriksson at ++ mandriva dot com, Ilia) ++- Fixed bug #46873 (extract($foo) crashes if $foo['foo'] exists). (Arnaud) ++- Fixed bug #46843 (CP936 euro symbol is not converted properly). (ty_c at ++ cybozuy dot co dot jp, Moriyoshi) ++- Fixed bug #46798 (Crash in mssql extension when retrieving a NULL value ++ inside a binary or image column type). (Ilia) ++- Fixed bug #46782 (fastcgi.c parse error). (Matt) ++- Fixed bug #46760 (SoapClient doRequest fails when proxy is used). (Felipe) ++- Fixed bug #46748 (Segfault when an SSL error has more than one error). ++ (Scott) ++- Fixed bug #46739 (array returned by curl_getinfo should contain ++ content_type key). (Mikko) ++- Fixed bug #46699 (xml_parse crash when parser is namespace aware). (Rob) ++- Fixed bug #46419 (Elements of associative arrays with NULL value are ++ lost). (Dmitry) ++- Fixed bug #46282 (Corrupt DBF When Using DATE). (arne at bukkie dot nl) ++- Fixed bug #46026 (bz2.decompress/zlib.inflate filter tries to decompress ++ after end of stream). (Greg) ++- Fixed bug #46005 (User not consistently logged under Apache2). (admorten ++ at umich dot edu, Stas) ++- Fixed bug #45996 (libxml2 2.7 causes breakage with character data in ++ xml_parse()). (Rob) ++- Fixed bug #45940 (MySQLI OO does not populate connect_error property on ++ failed connect). (Johannes) ++- Fixed bug #45923 (mb_st[r]ripos() offset not handled correctly). (Moriyoshi) ++- Fixed bug #45327 (memory leak if offsetGet throws exception). (Greg) ++- Fixed bug #45239 (Encoding detector hangs with mbstring.strict_detection ++ enabled). (Moriyoshi) ++- Fixed bug #45161 (Reusing a curl handle leaks memory). (Mark Karpeles, Jani) ++- Fixed bug #44336 (Improve pcre UTF-8 string matching performance). (frode ++ at coretrek dot com, Nuno) ++- Fixed bug #43841 (mb_strrpos() offset is byte count for negative values). ++ (Moriyoshi) ++- Fixed bug #37209 (mssql_execute with non fatal errors). (Kalle) ++- Fixed bug #35975 (Session cookie expires date format isn't the most ++ compatible. Now matches that of setcookie()). (Scott) ++ ++ ++08 Dec 2008, PHP 5.2.8 ++- Reverted bug fix #42718 that broke magic_quotes_gpc (Scott) ++ ++04 Dec 2008, PHP 5.2.7 ++- Upgraded PCRE to version 7.8 (Fixes CVE-2008-2371). (Ilia) ++- Updated timezone database to version 2008.9. (Derick) ++- Upgraded bundled libzip to 0.9.0. (Pierre) ++ ++- Added logging option for error_log to send directly to SAPI. (Stas) ++- Added PHP_MAJOR_VERSION, PHP_MINOR_VERSION, PHP_RELEASE_VERSION, ++ PHP_EXTRA_VERSION, PHP_VERSION_ID, PHP_ZTS and PHP_DEBUG constants. (Pierre) ++- Added "PHP_INI_SCAN_DIR" environment variable which can be used to ++ either disable or change the compile time ini scan directory (FR #45114). ++ (Jani) ++ ++- Fixed missing initialization of BG(page_uid) and BG(page_gid), ++ reported by Maksymilian Arciemowicz. (Stas) ++- Fixed memory leak inside sqlite_create_aggregate(). (Felipe) ++- Fixed memory leak inside PDO sqlite's sqliteCreateAggregate() method. ++ (Felipe) ++- Fixed a crash inside gd with invalid fonts (Fixes CVE-2008-3658). (Pierre) ++- Fixed a possible overflow inside memnstr (Fixes CVE-2008-3659). ++ (LaurentGaffie) ++- Fixed incorrect php_value order for Apache configuration, reported by ++ Maksymilian Arciemowicz. (Stas) ++- Fixed memory leak inside readline_callback_handler_remove() function. ++ (Felipe) ++- Fixed sybase_fetch_*() to continue reading after CS_ROW_FAIL status (Timm) ++- Fixed a bug inside dba_replace() that could cause file truncation ++ withinvalid keys. (Ilia) ++- Fixed memory leak inside readline_callback_handler_install() function.(Ilia) ++- Fixed memory leak inside readline_completion_function() function. (Felipe) ++- Fixed stream_get_contents() when using $maxlength and socket is notclosed. ++ indeyets [at] php [dot] net on #46049. (Arnaud) ++- Fixed stream_get_line() to behave as documented on non-blocking streams. ++ (Arnaud) ++- Fixed endless loop in PDOStatement::debugDumpParams(). ++ (jonah.harris at gmail dot com) ++- Fixed ability to use "internal" heaps in extensions. (Arnaud, Dmitry) ++- Fixed weekdays adding/subtracting algorithm. (Derick) ++- Fixed some ambiguities in the date parser. (Derick) ++- Fixed a bug with the YYYY-MM format not resetting the day correctly. ++ (Derick) ++- Fixed a bug in the DateTime->modify() methods, it would not use the advanced ++ relative time strings. (Derick) ++- Fixed extraction of zip files or directories when the entry name is a ++ relative path. (Pierre) ++- Fixed read or write errors for large zip archives. (Pierre) ++- Fixed security issues detailed in CVE-2008-2665 and CVE-2008-2666. ++ (Christian Hoffmann) ++- Fixed simplexml asXML() not to lose encoding when dumping entire ++ document to file. (Ilia) ++- Fixed a crash inside PDO when trying instantiate PDORow manually. ++ (Felipe) ++- Fixed build failure of ext/mysqli with libmysql 6.0 - missing ++ rplfunctions. (Andrey) ++- Fixed a regression when using strip_tags() and < is within an ++ attribute.(Scott) ++- Fixed a crash on invalid method in ReflectionParameter constructor. ++ (Christian Seiler) ++- Reverted fix for bug #44197 due to behaviour change in minor version. ++ (Felipe) ++ ++- Fixed bug #46732 (mktime.year description is wrong). (Derick) ++- Fixed bug #46696 (cURL fails in upload files with specified content-type). ++ (Ilia) ++- Fixed bug #46673 (stream_lock call with wrong parameter). (Arnaud) ++- Fixed bug #46649 (Setting array element with that same array produces ++ inconsistent results). (Arnaud) ++- Fixed bug #46626 (mb_convert_case does not handle apostrophe correctly). ++ (Ilia) ++- Fixed bug #46543 (ibase_trans() memory leaks when using wrong parameters). ++ (Felipe) ++- Fixed bug #46521 (Curl ZTS OpenSSL, error in config.m4 fragment). ++ (jd at cpanel dot net) ++- Fixed bug #46496 (wddx_serialize treats input as ISO-8859-1). (Mark Karpeles) ++- Fixed bug #46427 (SoapClient() stumbles over its "stream_context" parameter). ++ (Dmitry, Herman Radtke) ++- Fixed bug #46426 (offset parameter of stream_get_contents() does not ++ workfor "0"). (Felipe) ++- Fixed bug #46406 (Unregistering nodeclass throws E_FATAL). (Rob) ++- Fixed bug #46389 (NetWare needs small patch for _timezone). ++ (patch by guenter@php.net) ++- Fixed bug #46388 (stream_notification_callback inside of object destroys ++ object variables). (Felipe) ++- Fixed bug #46381 (wrong $this passed to internal methods causes segfault). ++ (Tony) ++- Fixed bug #46379 (Infinite loop when parsing '#' in one line file). (Arnaud) ++- Fixed bug #46366 (bad cwd with / as pathinfo). (Dmitry) ++- Fixed bug #46360 (TCP_NODELAY constant for socket_{get,set}_option). ++ (bugs at trick dot vanstaveren dot us) ++- Fixed bug #46343 (IPv6 address filter accepts invalid address). (Ilia) ++- Fixed bug #46335 (DOMText::splitText doesn't handle multibyte characters). ++ (Rob) ++- Fixed bug #46323 (compilation of simplexml for NetWare breaks). ++ (Patch by guenter [at] php [dot] net) ++- Fixed bug #46319 (PHP sets default Content-Type header for HTTP 304 ++ response code, in cgi sapi). (Ilia) ++- Fixed bug #46313 (Magic quotes broke $_FILES). (Arnaud) ++- Fixed bug #46308 (Invalid write when changing property from inside getter). ++ (Dmitry) ++- Fixed bug #46292 (PDO::setFetchMode() shouldn't requires the 2nd arg when ++ using FETCH_CLASSTYPE). (Felipe) ++- Fixed bug #46274, #46249 (pdo_pgsql always fill in NULL for empty BLOB and ++ segfaults when returned by SELECT). (Felipe) ++- Fixed bug #46271 (local_cert option is not resolved to full path). (Ilia) ++- Fixed bug #46247 (ibase_set_event_handler() is allowing to pass callback ++ without event). (Felipe) ++- Fixed bug #46246 (difference between call_user_func(array($this, $method)) ++ and $this->$method()). (Dmitry) ++- Fixed bug #46222 (ArrayObject EG(uninitialized_var_ptr) overwrite). ++ (Etienne) ++- Fixed bug #46215 (json_encode mutates its parameter and has some ++ class-specific state). (Felipe) ++- Fixed bug #46206 (pg_query_params/pg_execute convert passed values to ++ strings). (Ilia) ++- Fixed bug #46191 (BC break: DOMDocument saveXML() doesn't accept null). ++ (Rob) ++- Fixed bug #46164 (stream_filter_remove() closes the stream). (Arnaud) ++- Fixed bug #46157 (PDOStatement::fetchObject prototype error). (Felipe) ++- Fixed bug #46147 (after stream seek, appending stream filter reads ++ incorrect data). (Greg) ++- Fixed bug #46139 (PDOStatement->setFetchMode() forgets FETCH_PROPS_LATE). ++ (chsc at peytz dot dk, Felipe) ++- Fixed bug #46127 (php_openssl_tcp_sockop_accept forgets to set context ++ on accepted stream) (Mark Karpeles, Pierre) ++- Fixed bug #46110 (XMLWriter - openmemory() and openuri() leak memory on ++ multiple calls). (Ilia) ++- Fixed bug #46088 (RegexIterator::accept - segfault). (Felipe) ++- Fixed bug #46082 (stream_set_blocking() can cause a crash in some ++ circumstances). (Felipe) ++- Fixed bug #46064 (Exception when creating ReflectionProperty object ++ on dynamicly created property). (Felipe) ++- Fixed bug #46059 (Compile failure under IRIX 6.5.30 building posix.c). ++ (Arnaud) ++- Fixed bug #46053 (SplFileObject::seek - Endless loop). (Arnaud) ++- Fixed bug #46051 (SplFileInfo::openFile - memory overlap). (Arnaud) ++- Fixed bug #46047 (SimpleXML converts empty nodes into object with ++ nested array). (Rob) ++- Fixed bug #46031 (Segfault in AppendIterator::next). (Arnaud) ++- Fixed bug #46029 (Segfault in DOMText when using with Reflection). (Rob) ++- Fixed bug #46026 (bzip2.decompress/zlib.inflate filter tries to decompress ++ after end of stream). (Keisial at gmail dot com, Greg) ++- Fixed bug #46024 (stream_select() doesn't return the correct number). ++ (Arnaud) ++- Fixed bug #46010 (warnings incorrectly generated for iv in ecb mode). ++ (Felipe) ++- Fixed bug #46003 (isset on nonexisting node return unexpected results). (Rob) ++- Fixed bug #45956 (parse_ini_file() does not return false with syntax errors ++ in parsed file). (Jani) ++- Fixed bug #45901 (wddx_serialize_value crash with SimpleXMLElement object). ++ (Rob) ++- Fixed bug #45862 (get_class_vars is inconsistent with 'protected' and ++ 'private' variables). (ilewis at uk dot ibm dot com, Felipe) ++- Fixed bug #45860 (header() function fails to correctly replace all Status ++ lines). (Dmitry) ++- Fixed bug #45805 (Crash on throwing exception from error handler). (Dmitry) ++- Fixed bug #45765 (ReflectionObject with default parameters of self::xxx cause ++ an error). (Felipe) ++- Fixed bug #45751 (Using auto_prepend_file crashes (out of scope stack address ++ use)). (basant dot kukreja at sun dot com) ++- Fixed bug #45722 (mb_check_encoding() crashes). (Moriyoshi) ++- Fixed bug #45705 (rfc822_parse_adrlist() modifies passed address parameter). ++ (Jani) ++- Fixed bug #45691 (Some per-dir or runtime settings may leak into other ++ requests). (Moriyoshi) ++- Fixed bug #45581 (htmlspecialchars() double encoding &#x hex items). (Arnaud) ++- Fixed bug #45580 (levenshtein() crashes with invalid argument). (Ilia) ++- Fixed bug #45575 (Segfault with invalid non-string as event handler callback). ++ (Christian Seiler) ++- Fixed bug #45568 (ISAPI doesn't properly clear auth_digest in header). ++ (Patch by: navara at emclient dot com) ++- Fixed bug #45556 (Return value from callback isn't freed). (Felipe) ++- Fixed bug #45555 (Segfault with invalid non-string as ++ register_introspection_callback). (Christian Seiler) ++- Fixed bug #45553 (Using XPath to return values for attributes with a ++ namespace does not work). (Rob) ++- Fixed bug #45529 (new DateTimeZone() and date_create()->getTimezone() behave ++ different). (Derick) ++- Fixed bug #45522 (FCGI_GET_VALUES request does not return supplied values). ++ (Arnaud) ++- Fixed bug #45486 (mb_send_mail(); header 'Content-Type: text/plain; charset=' ++ parsing incorrect). (Felipe) ++- Fixed bug #45485 (strip_tags and ). (Dmitry) ++- Fixed bug #43668 (Added odbc.default_cursortype to control the ODBCcursor ++ model). (Patrick) ++- Fixed bug #43666 (Fixed code to use ODBC 3.52 datatypes for 64bit ++ systems). (Patrick) ++- Fixed bug #43540 (rfc1867 handler newlength problem). (Arnaud) ++- Fixed bug #43452 (strings containing a weekday, or a number plus weekday ++ behaved incorrect of the current day-of-week was the same as the one in the ++ phrase). (Derick) ++- Fixed bug #43353 (wrong detection of 'data' wrapper causes notice). ++ (gk at gknw dot de, Arnaud) ++- Fixed bug #43053 (Regression: some numbers shown in scientific notation). ++ (int-e at gmx dot de) ++- Fixed bug #43045 (SOAP encoding violation on "INF" for type double/float). ++ (Dmitry) ++- Fixed bug #42862 (IMAP toolkit crash: rfc822.c legacy routine buffer ++ overflow). (Fixes CVE-2008-2829) (Dmitry) ++- Fixed bug #42855 (dns_get_record() doesn't return all text from TXT record). ++ (a dot u dot savchuk at gmail dot com) ++- Fixed bug #42737 (preg_split('//u') triggers a E_NOTICE with newlines). ++ (Nuno) ++- Fixed bug #42718 (FILTER_UNSAFE_RAW not applied when configured as default ++ filter). (Arnaud) ++- Fixed bug #42604 ("make test" fails with --with-config-file-scan-dir=path). ++ (Jani) ++- Fixed bug #42473 (ob_start php://output and headers). (Arnaud) ++- Fixed bug #42318 (problem with nm on AIX, not finding object files). ++ (Dmitry) ++- Fixed bug #42294 (Unified solution for round() based on C99 round). (Ilia) ++- Fixed bug #42078 (pg_meta_data mix tables metadata from different schemas). ++ (Felipe) ++- Fixed bug #41348 (OCI8: allow compilation with Oracle 8.1). (Chris Jones) ++- Fixed bug #41033 (enable signing with DSA keys. ++ (gordyf at google dot com, Pierre) ++- Fixed bug #37100 (data is returned truncated with BINARY CURSOR). (Tony) ++- Fixed bug #30312 (crash in sybase_unbuffered_query() function). (Timm) ++- Fixed bug #24679 (pg_* functions doesn't work using schema). (Felipe) ++- Fixed bug #14962 (PECL) (::extractTo 2nd argument is not really optional) ++ (Mark van Der Velden) ++- Fixed bug #14032 (Mail() always returns false but mail is sent). (Mikko) ++ ++ ++01 May 2008, PHP 5.2.6 ++- Fixed two possible crashes inside posix extension (Tony) ++- Fixed incorrect heredoc handling when label is used within the block. ++ (Matt) ++- Fixed possible stack buffer overflow in FastCGI SAPI. (Andrei Nigmatulin) ++- Fixed sending of uninitialized paddings which may contain some information. (Andrei Nigmatulin) ++- Fixed a bug in formatting timestamps when DST is active in the default timezone (Derick) ++- Properly address incomplete multibyte chars inside escapeshellcmd() (Ilia, Stefan Esser) ++- Fix integer overflow in printf(). (Stas, Maksymilian Aciemowicz) ++- Fixed security issue detailed in CVE-2008-0599. (Rasmus) ++- Fixed potential memleak in stream filter parameter for zlib filter. (Greg) ++- Added Reflection API metadata for the methods of the DOM classes. (Sebastian) ++- Fixed weird behavior in CGI parameter parsing. (Dmitry, Hannes Magnusson) ++- Fixed a safe_mode bypass in cURL identified by Maksymilian Arciemowicz. ++ (Ilia) ++- Fixed a bug with PDO::FETCH_COLUMN|PDO::FETCH_GROUP mode when a column # by ++ which to group by data is specified. (Ilia) ++- Fixed segfault in filter extension when using callbacks. (Arnar Mar Sig, ++ Felipe) ++- Fixed faulty fix for bug #40189 (endless loop in zlib.inflate stream filter). (Greg) ++- Upgraded PCRE to version 7.6 (Nuno) ++ ++- Fixed bug #44742 (timezone_offset_get() causes segmentation faults). (Derick) ++- Fixed bug #44720 (Prevent crash within session_register()). (Scott) ++- Fixed bug #44703 (htmlspecialchars() does not detect bad character set argument). (Andy Wharmby) ++- Fixed bug #44673 (With CGI argv/argc starts from arguments, not from script) (Dmitry) ++- Fixed bug #44667 (proc_open() does not handle pipes with the mode 'wb' correctly). (Jani) ++- Fixed bug #44663 (Crash in imap_mail_compose if "body" parameter invalid). (Ilia) ++- Fixed bug #44650 (escaepshellscmd() does not check arg count). (Ilia) ++- Fixed bug #44613 (Crash inside imap_headerinfo()). (Ilia, jmessa) ++- Fixed bug #44603 (Order issues with Content-Type/Length headers on POST). (Ilia) ++- Fixed bug #44594 (imap_open() does not validate # of retries parameter). (Ilia) ++- Fixed bug #44591 (imagegif's filename parameter). (Felipe) ++- Fixed bug #44557 (Crash in imap_setacl when supplied integer as username) (Thomas Jarosch) ++- Fixed bug #44487 (call_user_method_array issues a warning when throwing an exception). (David Soria Parra) ++- Fixed bug #44478 (Inconsistent behaviour when assigning new nodes). (Rob, Felipe) ++- Fixed bug #44445 (email validator does not handle domains starting/ending with a -). (Ilia) ++- Fixed bug #44440 (st_blocks undefined under BeOS). (Felipe) ++- Fixed bug #44394 (Last two bytes missing from output). (Felipe) ++- Fixed bug #44388 (Crash inside exif_read_data() on invalid images) (Ilia) ++- Fixed bug #44373 (PDO_OCI extension compile failed). (Felipe) ++- Fixed bug #44333 (SEGFAULT when using mysql_pconnect() with client_flags). (Felipe) ++- Fixed bug #44306 (Better detection of MIPS processors on Windows). (Ilia) ++- Fixed bug #44242 (metaphone('CMXFXM') crashes PHP). (Felipe) ++- Fixed bug #44233 (MSG_PEEK undefined under BeOS R5). (jonathonfreeman at gmail dot com, Ilia) ++- Fixed bug #44216 (strftime segfaults on large negative value). (Derick) ++- Fixed bug #44209 (strtotime() doesn't support 64 bit timestamps on 64 bit platforms). (Derick) ++- Fixed bug #44206 (OCI8 selecting ref cursors leads to ORA-1000 maximum open cursors reached). (Oracle Corp.) ++- Fixed bug #44200 (A crash in PDO when no bound targets exists and yet bound parameters are present). (Ilia) ++- Fixed bug #44197 (socket array keys lost on socket_select). (Felipe) ++- Fixed bug #44191 (preg_grep messes up array index). (Felipe) ++- Fixed bug #44189 (PDO setAttribute() does not properly validate values for native numeric options). (Ilia) ++- Fixed bug #44184 (Double free of loop-variable on exception). (Dmitry) ++- Fixed bug #44171 (Invalid FETCH_COLUMN index does not raise an error). (Ilia) ++- Fixed bug #44166 (Parameter handling flaw in PDO::getAvailableDrivers()). (Ilia) ++- Fixed bug #44159 (Crash: $pdo->setAttribute(PDO::STATEMENT_ATTR_CLASS, NULL)). (Felipe) ++- Fixed bug #44152 (Possible crash with syslog logging on ZTS builds). (Ilia) ++- Fixed bug #44141 (private parent constructor callable through static function). (Dmitry) ++- Fixed bug #44113 (OCI8 new collection creation can fail with OCI-22303). (Oracle Corp.) ++- Fixed bug #44069 (Huge memory usage with concatenation using . instead of .=). (Dmitry) ++- Fixed bug #44046 (crash inside array_slice() function with an invalid by-ref offset). (Ilia) ++- Fixed bug #44028 (crash inside stream_socket_enable_crypto() when enabling encryption without crypto type). (Ilia) ++- Fixed bug #44018 (RecursiveDirectoryIterator options inconsistancy). (Marcus) ++- Fixed bug #44008 (OCI8 incorrect usage of OCI-Lob->close crashes PHP). (Oracle Corp.) ++- Fixed bug #43998 (Two error messages returned for incorrect encoding for mb_strto[upper|lower]). (Rui) ++- Fixed bug #43994 (mb_ereg 'successfully' matching incorrect). (Rui) ++- Fixed bug #43954 (Memory leak when sending the same HTTP status code multiple times). (Scott) ++- Fixed bug #43927 (koi8r is missing from html_entity_decode()). (andy at demos dot su, Tony) ++- Fixed bug #43912 (Interbase column names are truncated to 31 characters). (Ilia) ++- Fixed bug #43875 (Two error messages returned for $new and $flag argument in mysql_connect()). (Hannes) ++- Fixed bug #43863 (str_word_count() breaks on cyrillic "ya" in locale cp1251). (phprus at gmail dot com, Tony) ++- Fixed bug #43841 (mb_strrpos offset is byte count for negative values). (Rui) ++- Fixed bug #43840 (mb_strpos bounds check is byte count rather than a character count). (Rui) ++- Fixed bug #43808 (date_create never fails (even when it should)). (Derick) ++- Fixed bug #43793 (zlib filter is unable to auto-detect gzip/zlib file headers). (Greg) ++- Fixed bug #43703 (Signature compatibility check broken). (Dmitry) ++- Fixed bug #43677 (Inconsistent behaviour of include_path set with php_value). (manuel at mausz dot at) ++- Fixed bug #43663 (Extending PDO class with a __call() function doesn't work). (David Soria Parra) ++- Fixed bug #43647 (Make FindFile use PATH_SEPARATOR instead of ";"). (Ilia) ++- Fixed bug #43635 (mysql extension ingores INI settings on NULL values passed to mysql_connect()). (Ilia) ++- Fixed bug #43620 (Workaround for a bug inside libcurl 7.16.2 that can result in a crash). (Ilia) ++- Fixed bug #43614 (incorrect processing of numerical string keys of array in arbitrary serialized data). (Dmitriy Buldakov, Felipe) ++- Fixed bug #43606 (define missing depencies of the exif extension). (crrodriguez at suse dot de) ++- Fixed bug #43589 (a possible infinite loop in bz2_filter.c). (Greg) ++- Fixed bug #43580 (removed bogus declaration of a non-existent php_is_url() function). (Ilia) ++- Fixed bug #43559 (array_merge_recursive() doesn't behave as expected with duplicate NULL values). (Felipe, Tony) ++- Fixed bug #43533 (escapeshellarg('') returns null). (Ilia) ++- Fixed bug #43527 (DateTime created from a timestamp reports environment timezone). (Derick) ++- Fixed bug #43522 (stream_get_line() eats additional characters). (Felipe, Ilia, Tony) ++- Fixed bug #43507 (SOAPFault HTTP Status 500 - would like to be able to set the HTTP Status). (Dmitry) ++- Fixed bug #43505 (Assign by reference bug). (Dmitry) ++- Fixed bug #43498 (file_exists() on a proftpd server got SIZE not allowed in ASCII mode). (Ilia, crrodriguez at suse dot de) ++- Fixed bug #43497 (OCI8 XML/getClobVal aka temporary LOBs leak UGA memory). (Chris) ++- Fixed bug #43495 (array_merge_recursive() crashes with recursive arrays). (Ilia) ++- Fixed bug #43493 (pdo_pgsql does not send username on connect when password is not available). (Ilia) ++- Fixed bug #43491 (Under certain conditions, file_exists() never returns). (Dmitry) ++- Fixed bug #43483 (get_class_methods() does not list all visible methods). (Dmitry) ++- Fixed bug #43482 (array_pad() does not warn on very small pad numbers). (Ilia) ++- Fixed bug #43457 (Prepared statement with incorrect parms doesn't throw exception with pdo_pgsql driver). (Ilia) ++- Fixed bug #43450 (Memory leak on some functions with implicit object __toString() call). (David C.) ++- Fixed bug #43386 (array_globals not reset to 0 properly on init). (Ilia) ++- Fixed bug #43377 (PHP crashes with invalid argument for DateTimeZone). (Ilia) ++- Fixed bug #43373 (pcntl_fork() should not raise E_ERROR on error). (Ilia) ++- Fixed bug #43364 (recursive xincludes don't remove internal xml nodes properly). (Rob, patch from ddb@bitxtender.de) ++- Fixed bug #43301 (mb_ereg*_replace() crashes when replacement string is invalid PHP expression and 'e' option is used). (Jani) ++- Fixed bug #43295 (crash because of uninitialized SG(sapi_headers).mimetype). (Dmitry) ++- Fixed bug #43293 (Multiple segfaults in getopt()). (Hannes) ++- Fixed bug #43279 (pg_send_query_params() converts all elements in 'params' to strings). (Ilia) ++- Fixed bug #43276 (Incomplete fix for bug #42739, mkdir() under safe_mode). (Ilia) ++- Fixed bug #43248 (backward compatibility break in realpath()). (Dmitry) ++- Fixed bug #43221 (SimpleXML adding default namespace in addAttribute). (Rob) ++- Fixed bug #43216 (stream_is_local() returns false on "file://"). (Dmitry) ++- Fixed bug #43201 (Crash on using uninitialized vals and __get/__set). (Dmitry) ++- Fixed bug #43182 (file_put_contents() LOCK_EX does not work properly on file truncation). (Ilia) ++- Fixed bug #43175 (__destruct() throwing an exception with __call() causes segfault). (Dmitry) ++- Fixed bug #43128 (Very long class name causes segfault). (Dmitry) ++- Fixed bug #43105 (PHP seems to fail to close open files). (Hannes) ++- Fixed bug #43092 (curl_copy_handle() crashes with > 32 chars long URL). (Jani) ++- Fixed bug #43003 (Invalid timezone reported for DateTime objects constructed using a timestamp). (Derick) ++- Fixed bug #42978 (mismatch between number of bound params and values causes a crash in pdo_pgsql). (Ilia) ++- Fixed bug #42945 (preg_split() swallows part of the string). (Nuno) ++- Fixed bug #42937 (__call() method not invoked when methods are called on parent from child class). (Dmitry) ++- Fixed bug #42841 (REF CURSOR and oci_new_cursor() crash PHP). (Chris) ++- Fixed bug #42838 (Wrong results in array_diff_uassoc) (Felipe) ++- Fixed bug #42779 (Incorrect forcing from HTTP/1.0 request to HTTP/1.1 response). (Ilia) ++- Fixed bug #42736 (xmlrpc_server_call_method() crashes). (Tony) ++- Fixed bug #42692 (Procedure 'int1' not present with doc/lit SoapServer). (Dmitry) ++- Fixed bug #42548 (mysqli PROCEDURE calls can't return result sets). (Hartmut) ++- Fixed bug #42505 (new sendmail default breaks on Netware platform) (Guenter Knauf) ++- Fixed bug #42369 (Implicit conversion to string leaks memory). (David C., Rob). ++- Fixed bug #42272 (var_export() incorrectly escapes char(0)). (Derick) ++- Fixed bug #42261 (Incorrect lengths for date and boolean data types). (Ilia) ++- Fixed bug #42190 (Constructing DateTime with TimeZone Indicator invalidates DateTimeZone). (Derick) ++- Fixed bug #42177 (Warning "array_merge_recursive(): recursion detected" comes again...). (Felipe) ++- Fixed bug #41941 (oci8 extension not lib64 savvy). (Chris) ++- Fixed bug #41828 (Failing to call RecursiveIteratorIterator::__construct() causes a sefault). (Etienne) ++- Fixed bug #41599 (setTime() fails after modify() is used). (Derick) ++- Fixed bug #41562 (SimpleXML memory issue). (Rob) ++- Fixed bug #40013 (php_uname() does not return nodename on Netware (Guenter Knauf) ++- Fixed bug #38468 (Unexpected creation of cycle). (Dmitry) ++- Fixed bug #32979 (OpenSSL stream->fd casts broken in 64-bit build) (stotty at tvnet dot hu) ++ ++08 Nov 2007, PHP 5.2.5 ++- Upgraded PCRE to version 7.3 (Nuno) ++- Added optional parameter $provide_object to debug_backtrace(). (Sebastian) ++- Added alpha support for imagefilter() IMG_FILTER_COLORIZE. (Pierre) ++- Added ability to control memory consumption between request using ++ ZEND_MM_COMPACT environment variable. (Dmitry) ++ ++- Improved speed of array_intersect_key(), array_intersect_assoc(), ++ array_uintersect_assoc(), array_diff_key(), array_diff_assoc() and ++ array_udiff_assoc(). (Dmitry) ++ ++- Fixed move_uploaded_file() to always set file permissions of resulting file ++ according to UMASK. (Andrew Sitnikov) ++- Fixed possible crash in ext/soap because of uninitialized value. (Zdash Urf) ++- Fixed regression in glob() when enforcing safe_mode/open_basedir checks on ++ paths containing '*'. (Ilia) ++- Fixed "mail.force_extra_parameters" php.ini directive not to be modifiable ++ in .htaccess due to the security implications - reported by SecurityReason. ++ (Stas) ++- Fixed PDO crash when driver returns empty LOB stream. (Stas) ++- Fixed dl() to only accept filenames - reported by Laurent Gaffie. (Stas) ++- Fixed dl() to limit argument size to MAXPATHLEN (CVE-2007-4887). ++ (Christian Hoffmann) ++- Fixed iconv_*() functions to limit argument sizes as workaround to libc ++ bug (CVE-2007-4783, CVE-2007-4840 by Laurent Gaffie). ++ (Christian Hoffmann, Stas) ++- Fixed missing brackets leading to build warning and error in the log. ++ Win32 code. (Andrey) ++- Fixed leaks with multiple connects on one mysqli object. (Andrey) ++- Fixed endianness detection on MacOS when building universal binary. ++ (Uwe Schindler, Christian Speich, Tony) ++- Fixed possible triggering of buffer overflows inside glibc ++ implementations of the fnmatch(), setlocale() and glob() functions. ++ Reported by Laurent Gaffie. (Ilia) ++- Fixed imagerectangle regression with 1x1 rectangle (libgd #106). (Pierre) ++- Fixed htmlentities/htmlspecialchars not to accept partial multibyte ++ sequences. (Stas) ++ ++- Fixed bug #43196 (array_intersect_assoc() crashes with non-array input). ++ (Jani) ++- Fixed bug #43139 (PDO ignores ATTR_DEFAULT_FETCH_MODE in some cases with ++ fetchAll()). (Ilia) ++- Fixed bug #43137 (rmdir() and rename() do not clear statcache). (Jani) ++- Fixed bug #43130 (Bound parameters cannot have - in their name). (Ilia) ++- Fixed bug #43099 (XMLWriter::endElement() does not check # of params). ++ (Ilia) ++- Fixed bug #43020 (Warning message is missing with shuffle() and more ++ than one argument). (Scott) ++- Fixed bug #42976 (Crash when constructor for newInstance() or ++ newInstanceArgs() fails) (Ilia) ++- Fixed bug #42943 (ext/mssql: Move *timeout initialization from RINIT ++ to connect time). (Ilia) ++- Fixed bug #42917 (PDO::FETCH_KEY_PAIR doesn't work with setFetchMode). ++ (Ilia) ++- Fixed bug #42890 (Constant "LIST" defined by mysqlclient and c-client). ++ (Andrey) ++- Fixed bug #42869 (automatic session id insertion adds sessions id to ++ non-local forms). (Ilia) ++- Fixed bug #42818 ($foo = clone(array()); leaks memory). (Dmitry) ++- Fixed bug #42817 (clone() on a non-object does not result in a fatal ++ error). (Ilia) ++- Fixed bug #42785 (json_encode() formats doubles according to locale rather ++ then following standard syntax). (Ilia) ++- Fixed bug #42783 (pg_insert() does not accept an empty list for ++ insertion). (Ilia) ++- Fixed bug #42773 (WSDL error causes HTTP 500 Response). (Dmitry) ++- Fixed bug #42772 (Storing $this in a static var fails while handling a cast ++ to string). (Dmitry) ++- Fixed bug #42767 (highlight_string() truncates trailing comment). (Ilia) ++- Fixed bug #42739 (mkdir() doesn't like a trailing slash when safe_mode is ++ enabled). (Ilia) ++- Fixed bug #42703 (Exception raised in an iterator::current() causes segfault ++ in FilterIterator) (Marcus) ++- Fixed bug #42699 (PHP_SELF duplicates path). (Dmitry) ++- Fixed bug #42654 (RecursiveIteratorIterator modifies only part of leaves) ++ (Marcus) ++- Fixed bug #42643 (CLI segfaults if using ATTR_PERSISTENT). (Ilia) ++- Fixed bug #42637 (SoapFault : Only http and https are allowed). (Bill Moran) ++- Fixed bug #42629 (Dynamically loaded PHP extensions need symbols exported ++ on MacOSX). (jdolecek at NetBSD dot org) ++- Fixed bug #42627 (bz2 extension fails to build with -fno-common). ++ (dolecek at netbsd dot org) ++- Fixed Bug #42596 (session.save_path MODE option does not work). (Ilia) ++- Fixed bug #42590 (Make the engine recognize \v and \f escape sequences). ++ (Ilia) ++- Fixed bug #42587 (behavior change regarding symlinked .php files). (Dmitry) ++- Fixed bug #42579 (apache_reset_timeout() does not exist). (Jani) ++- Fixed bug #42549 (ext/mysql failed to compile with libmysql 3.23). (Scott) ++- Fixed bug #42523 (PHP_SELF duplicates path). (Dmitry) ++- Fixed bug #42512 (ip2long('255.255.255.255') should return 4294967295 on ++ 64-bit PHP). (Derick) ++- Fixed bug #42506 (php_pgsql_convert() timezone parse bug) (nonunnet at ++ gmail dot com, Ilia) ++- Fixed bug #42496 (OCI8 cursor is not closed when using 2 clobs in a select ++ query). (Oracle Corp.) ++- Fixed bug #42462 (Segmentation when trying to set an attribute in a ++ DOMElement). (Rob) ++- Fixed bug #42453 (CGI SAPI does not shut down cleanly with -i/-m/-v cmdline ++ options). (Dmitry) ++- Fixed bug #42452 (PDO classes do not expose Reflection API information). ++ (Hannes) ++- Fixed bug #42468 (Write lock on file_get_contents fails when using a ++ compression stream). (Ilia) ++- Fixed bug #42488 (SoapServer reports an encoding error and the error itself ++ breaks). (Dmitry) ++- Fixed bug #42378 (mysqli_stmt_bind_result memory exhaustion). (Andrey) ++- Fixed bug #42359 (xsd:list type not parsed). (Dmitry) ++- Fixed bug #42326 (SoapServer crash). (Dmitry) ++- Fixed bug #42214 (SoapServer sends clients internal PHP errors). (Dmitry) ++- Fixed bug #42189 (xmlrpc_set_type() crashes php on invalid datetime ++ values). (Ilia) ++- Fixed bug #42139 (XMLReader option constants are broken using XML()). (Rob) ++- Fixed bug #42086 (SoapServer return Procedure '' not present for WSIBasic ++ compliant wsdl). (Dmitry) ++- Fixed bug #41822 (Relative includes broken when getcwd() fails). (Ab5602, ++ Jani) ++- Fixed bug #41561 (Values set with php_admin_* in httpd.conf can be overwritten ++ with ini_set()). (Stas, Jani) ++- Fixed bug #39651 (proc_open() append mode doesn't work on windows). (Nuno) ++ ++30 Aug 2007, PHP 5.2.4 ++- Removed --enable-versioning configure option. (Jani) ++ ++- Upgraded PCRE to version 7.2 (Nuno) ++- Updated timezone database to version 2007.6. (Derick) ++ ++- Improved openssl_x509_parse() to return extensions in readable form. (Dmitry) ++ ++- Enabled changing the size of statement cache for non-persistent OCI8 ++ connections. (Chris Jones, Tony) ++ ++- Changed "display_errors" php.ini option to accept "stderr" as value which ++ makes the error messages to be outputted to STDERR instead of STDOUT with ++ CGI and CLI SAPIs (FR #22839). (Jani) ++- Changed error handler to send HTTP 500 instead of blank page on PHP errors. ++ (Dmitry, Andrei Nigmatulin) ++- Changed mail() function to be always available. (Johannes) ++ ++- Added check for unknown options passed to configure. (Jani) ++- Added persistent connection status checker to pdo_pgsql. ++ (Elvis Pranskevichus, Ilia) ++- Added support for ATTR_TIMEOUT inside pdo_pgsql driver. (Ilia) ++- Added php_ini_loaded_file() function which returns the path to the actual ++ php.ini in use. (Jani) ++- Added GD version constants GD_MAJOR_VERSION, GD_MINOR_VERSION, ++ GD_RELEASE_VERSION, GD_EXTRA_VERSION and GD_VERSION_STRING. (Pierre) ++- Added missing open_basedir checks to CGI. ++ (anight at eyelinkmedia dot com, Tony) ++- Added missing format validator to unpack() function. (Ilia) ++- Added missing error check inside bcpowmod(). (Ilia) ++- Added CURLOPT_PRIVATE & CURLINFO_PRIVATE constants. ++ (Andrey A. Belashkov, Tony) ++- Added missing MSG_EOR and MSG_EOF constants to sockets extension. (Jani) ++- Added PCRE_VERSION constant. (Tony) ++- Added ReflectionExtension::info() function to print the phpinfo() ++ block for an extension. (Johannes) ++ ++- Implemented FR #41884 (ReflectionClass::getDefaultProperties() does not ++ handle static attributes). (Tony) ++ ++- Fixed "Floating point exception" inside wordwrap(). ++ (Mattias Bengtsson, Ilia) ++- Fixed several integer overflows in ImageCreate(), ImageCreateTrueColor(), ++ ImageCopyResampled() and ImageFilledPolygon() reported by Mattias Bengtsson. ++ (Tony) ++- Fixed size calculation in chunk_split(). (Stas) ++- Fixed integer overflow in str[c]spn(). (Stas) ++- Fixed money_format() not to accept multiple %i or %n tokens. ++ (Stas, Ilia) ++- Fixed zend_alter_ini_entry() memory_limit interruption ++ vulnerability. (Ilia) ++- Fixed INFILE LOCAL option handling with MySQL extensions not to be ++ allowed when open_basedir or safe_mode is active. (Stas) ++- Fixed session.save_path and error_log values to be checked against ++ open_basedir and safe_mode (CVE-2007-3378) (Stas, Maksymilian Arciemowicz) ++- Fixed possible invalid read in glob() win32 implementation (CVE-2007-3806). ++ (Tony) ++- Improved fix for MOPB-03-2007. (Ilia) ++- Corrected fix for CVE-2007-2872. (Ilia) ++ ++- Fixed possible crash in imagepsloadfont(), work around a bug in the pslib on ++ Windows. (Pierre) ++- Fixed oci8 and PDO_OCI extensions to allow configuring with Oracle 11g ++ client libraries. (Chris Jones) ++- Fixed EOF handling in case of reading from file opened in write only mode. ++ (Dmitry) ++- Fixed var_export() to use the new H modifier so that it can generate ++ parseable PHP code for floats, independent of the locale. (Derick) ++- Fixed regression introduced by the fix for the libgd bug #74. (Pierre) ++- Fixed SimpleXML's behavior when used with empty(). (Sara) ++- Fixed crash in OpenSSL extension because of non-string passphrase. (Dmitry) ++ ++- Fixed PECL Bug #11345 (PDO_OCI crash after National language Support "NLS" ++ environment initialization error). (Chris Jones) ++- Fixed PECL bug #11216 (crash in ZipArchive::addEmptyDir when a directory ++ already exists). (Pierre) ++ ++- Fixed bug #43926 (isInstance() isn't equivalent to instanceof operator). (Marcus) ++- Fixed bug #42368 (Incorrect error message displayed by pg_escape_string). ++ (Ilia) ++- Fixed bug #42365 (glob() crashes and/or accepts way too many flags). ++ (Jani) ++- Fixed Bug #42364 (Crash when using getRealPath with DirectoryIterator). ++ (Johannes) ++- Fixed bug #42292 ($PHP_CONFIG not set for phpized builds). (Jani) ++- Fixed bug #42261 (header wrong for date field). ++ (roberto at spadim dot com dot br, Ilia) ++- Fixed bug #42259 (SimpleXMLIterator loses ancestry). (Rob) ++- Fixed bug #42247 (ldap_parse_result() not defined under win32). (Jani) ++- Fixed bug #42243 (copy() does not output an error when the first arg is a ++ dir). (Ilia) ++- Fixed bug #42242 (sybase_connect() crashes). (Ilia) ++- Fixed bug #42237 (stream_copy_to_stream returns invalid values for mmaped ++ streams). (andrew dot minerd at sellingsource dot com, Ilia) ++- Fixed bug #42233 (Problems with æøå in extract()). (Jani) ++- Fixed bug #42222 (possible buffer overflow in php_openssl_make_REQ). (Pierre) ++- Fixed bug #42211 (property_exists() fails to find protected properties ++ from a parent class). (Dmitry) ++- Fixed bug #42208 (substr_replace() crashes when the same array is passed ++ more than once). (crrodriguez at suse dot de, Ilia) ++- Fixed bug #42198 (SCRIPT_NAME and PHP_SELF truncated when inside a userdir ++ and using PATH_INFO). (Dmitry) ++- Fixed bug #42195 (C++ compiler required always). (Jani) ++- Fixed bug #42183 (classmap causes crash in non-wsdl mode). (Dmitry) ++- Fixed bug #42173 (oci8 INTERVAL and TIMESTAMP type fixes). (Chris) ++- Fixed bug #42151 (__destruct functions not called after catching a SoapFault ++ exception). (Dmitry) ++- Fixed bug #42142 (substr_replace() returns FALSE when length > string length). ++ (Ilia) ++- Fixed bug #42135 (Second call of session_start() causes creation of SID). ++ (Ilia) ++- Fixed bug #42134 (oci_error() returns false after oci_new_collection() fails). ++ (Tony) ++- Fixed bug #42119 (array_push($arr,&$obj) doesn't work with ++ zend.ze1_compatibility_mode On). (Dmitry) ++- Fixed bug #42117 (bzip2.compress loses data in internal buffer). ++ (Philip, Ilia) ++- Fixed bug #42112 (deleting a node produces memory corruption). (Rob) ++- Fixed bug #42107 (sscanf broken when using %2$s format parameters). (Jani) ++- Fixed bug #42090 (json_decode causes segmentation fault). (Hannes) ++- Fixed bug #42082 (NodeList length zero should be empty). (Hannes) ++- Fixed bug #42072 (No warning message for clearstatcache() with arguments). ++ (Ilia) ++- Fixed bug #42071 (ini scanner allows using NULL as option name). (Jani) ++- Fixed bug #42027 (is_file() / is_dir() matches file/dirnames with wildcard char ++ or trailing slash in Windows). (Dmitry) ++- Fixed bug #42019 (configure option --with-adabas=DIR does not work). (Jani) ++- Fixed bug #42015 (ldap_rename(): server error "DSA is unwilling to perform"). ++ (bob at mroczka dot com, Jani) ++- Fixed bug #42009 (is_a() and is_subclass_of() should NOT call autoload, in the ++ same way as "instanceof" operator). (Dmitry) ++- Fixed bug #41989 (move_uploaded_file() & relative path in ZTS mode). (Tony) ++- Fixed bug #41984 (Hangs on large SoapClient requests). (Dmitry) ++- Fixed bug #41983 (Error Fetching http headers terminated by '\n'). (Dmitry) ++- Fixed bug #41973 (--with-ldap=shared fails with LDFLAGS="-Wl,--as-needed"). (Nuno) ++- Fixed bug #41971 (PDOStatement::fetch and PDOStatement::setFetchMode causes ++ unexpected behavior). (Ilia) ++- Fixed bug #41964 (strtotime returns a timestamp for non-time string of ++ pattern '(A|a) .+'). (Derick) ++- Fixed bug #41961 (Ensure search for hidden private methods does not stray from ++ class hierarchy). (robin_fernandes at uk dot ibm dot com) ++- Fixed bug #41947 (SimpleXML incorrectly registers empty strings asnamespaces). ++ (Rob) ++- Fixed bug #41929 (Foreach on object does not iterate over all visible properties). ++ (Dmitry) ++- Fixed bug #41919 (crash in string to array conversion). ++ (judas dot iscariote at gmail dot com, Ilia) ++- Fixed bug #41909 (var_export() is locale sensitive when exporting float ++ values). (Derick) ++- Fixed bug #41908 (CFLAGS="-Os" ./configure --enable-debug fails). ++ (christian at hoffie dot info, Tony) ++- Fixed bug #41904 (proc_open(): empty env array should cause empty environment ++ to be passed to process). (Jani) ++- Fixed bug #41867 (SimpleXML: getName is broken). (Rob) ++- Fixed bug #41865 (fputcsv(): 2nd parameter is not optional). (Jani) ++- Fixed bug #41861 (SimpleXML: getNamespaces() returns the namespaces of a node's ++ siblings). (Rob) ++- Fixed bug #41845 (pgsql extension does not compile with PostgreSQL <7.4). (Ilia) ++- Fixed bug #41844 (Format returns incorrect number of digits for negative years ++ -0001 to -0999). (Derick) ++- Fixed bug #41842 (Cannot create years < 0100 & negative years with date_create ++ or new DateTime). (Derick) ++- Fixed bug #41833 (addChild() on a non-existent node, no node created, ++ getName() segfaults). (Rob) ++- Fixed bug #41831 (pdo_sqlite prepared statements convert resources to ++ strings). (Ilia) ++- Fixed bug #41815 (Concurrent read/write fails when EOF is reached). (Sascha) ++- Fixed bug #41813 (segmentation fault when using string offset as an object). ++ (judas dot iscariote at gmail dot com, Tony) ++- Fixed bug #41795 (checkdnsrr does not support DNS_TXT type). ++ (lucas at facebook dot com, Tony) ++- Fixed bug #41773 (php_strip_whitespace() sends headers with errors ++ suppressed). (Tony) ++- Fixed bug #41770 (SSL: fatal protocol error due to buffer issues). (Ilia) ++- Fixed bug #41765 (Recode crashes/does not work on amd64). ++ (nexus at smoula dot net, Stas) ++- Fixed bug #41724 (libxml_get_last_error() - errors service request scope). ++ (thekid at php dot net, Ilia) ++- Fixed bug #41717 (imagepolygon does not respect thickness). (Pierre) ++- Fixed bug #41713 (Persistent memory consumption on win32 since 5.2). (Dmitry) ++- Fixed bug #41711 (NULL temporary lobs not supported in OCI8). ++ (Chris Jones, Tony) ++- Fixed bug #41709 (strtotime() does not handle 00.00.0000). (Derick) ++- Fixed bug #41698 (float parameters truncated to integer in prepared ++ statements). (Ilia) ++- Fixed bug #41692 (ArrayObject shows weird behavior in respect to ++ inheritance). (Tony) ++- Fixed bug #41691 (ArrayObject::exchangeArray hangs Apache). (Tony) ++- Fixed bug #41686 (Omitting length param in array_slice not possible). (Ilia) ++- Fixed bug #41685 (array_push() fails to warn when next index is ++ already occupied). (Ilia) ++- Fixed bug #41655 (open_basedir bypass via glob()). (Ilia) ++- Fixed bug #41640 (get_class_vars produces error on class constants). ++ (Johannes) ++- Fixed bug #41635 (SoapServer and zlib.output_compression with FastCGI ++ result in major slowdown). (Dmitry) ++- Fixed bug #41633 (Crash instantiating classes with self-referencing ++ constants). (Dmitry) ++- Fixed bug #41630 (segfault when an invalid color index is present in the ++ image data). (Reported by Elliot ) (Pierre) ++- Fixed bug #41628 (PHP settings leak between Virtual Hosts in Apache 1.3). ++ (Scott, manuel at mausz dot at) ++- Fixed bug #41608 (segfault on a weird code with objects and switch()). ++ (Tony) ++- Fixed bug #41600 (url rewriter tags doesn't work with namespaced tags). ++ (Ilia) ++- Fixed bug #41596 (Fixed a crash inside pdo_pgsql on some non-well-formed ++ SQL queries). (Ilia) ++- Fixed bug #41594 (OCI8 statement cache is flushed too frequently). (Tony) ++- Fixed bug #41582 (SimpleXML crashes when accessing newly created element). ++ (Tony) ++- Fixed bug #41576 (configure failure when using --without-apxs or some other ++ SAPIs disabling options). (Jani) ++- Fixed bug #41567 (json_encode() double conversion is inconsistent with PHP). ++ (Lucas, Ilia) ++- Fixed bug #41566 (SOAP Server not properly generating href attributes). ++ (Dmitry) ++- Fixed bug #41555 (configure failure: regression caused by fix for #41265). ++ (Jani) ++- Fixed bug #41527 (WDDX deserialize numeric string array key). ++ (Matt, Ilia) ++- Fixed bug #41523 (strtotime('0000-00-00 00:00:00') is parsed as 1999-11-30). ++ (Derick) ++- Fixed bug #41518 (file_exists() warns of open_basedir restriction on ++ non-existent file). (Tony) ++- Fixed bug #41445 (parse_ini_file() has a problem with certain types of ++ integer as sections). (Tony) ++- Fixed bug #41433 (DBA: configure fails to include correct db.h for db4). ++ (Jani) ++- Fixed bug #41372 (Internal pointer of source array resets during array ++ copying). (Dmitry) ++- Fixed bug #41350 (my_thread_global_end() error during request shutdown on ++ Windows). (Scott, Andrey) ++- Fixed bug #41278 (get_loaded_extensions() should list Zend extensions). ++ (Johannes) ++- Fixed bug #41127 (Memory leak in ldap_{first|next}_attribute functions). ++ (Jani) ++- Fixed bug #40757 (get_object_vars get nothing in child class). (Dmitry) ++- Fixed bug #40705 (Iterating within function moves original array pointer). ++ (Dmitry) ++- Fixed bug #40509 (key() function changed behaviour if global array is used ++ within function). (Dmitry) ++- Fixed bug #40419 (Trailing slash in CGI request does not work). (Dmitry) ++- Fixed bug #39330 (apache2handler does not call shutdown actions before ++ apache child die). (isk at ecommerce dot com, Gopal, Tony) ++- Fixed bug #39291 (ldap_sasl_bind() misses the sasl_authc_id parameter). ++ (diafour at gmail dot com, Jani) ++- Fixed bug #37715 (array pointers resetting on copy). (Dmitry) ++- Fixed bug #37273 (Symlinks and mod_files session handler allow open_basedir ++ bypass). (Ilia) ++- Fixed bug #36492 (Userfilters can leak buckets). (Sara) ++- Fixed bugs #36796, #36918, #41371 (stream_set_blocking() does not work). ++ (Jani) ++- Fixed bug #35981 (pdo-pgsql should not use pkg-config when not present). ++ (Jani) ++- Fixed bug #31892 (PHP_SELF incorrect without cgi.fix_pathinfo, but turning on ++ screws up PATH_INFO). (Dmitry) ++- Fixed bug #21197 (socket_read() outputs error with PHP_NORMAL_READ). ++ (Nuno, Jani) ++ ++31 May 2007, PHP 5.2.3 ++- Changed CGI install target to php-cgi and 'make install' to install CLI ++ when CGI is selected. (Jani) ++- Changed JSON maximum nesting depth from 20 to 128. (Rasmus) ++ ++- Improved compilation of heredocs and interpolated strings. (Matt, Dmitry) ++- Optimized out a couple of per-request syscalls. (Rasmus) ++- Optimized digest generation in md5() and sha1() functions. (Ilia) ++- Upgraded bundled SQLite 3 to version 3.3.17. (Ilia) ++ ++- Added "max_input_nesting_level" php.ini option to limit nesting level of ++ input variables. Fix for MOPB-03-2007. (Stas) ++- Added a 4th parameter flag to htmlspecialchars() and htmlentities() that ++ makes the function not encode existing html entities. (Ilia) ++- Added PDO::FETCH_KEY_PAIR mode that will fetch a 2 column result set into ++ an associated array. (Ilia) ++- Added CURLOPT_TIMEOUT_MS and CURLOPT_CONNECTTIMEOUT_MS cURL constants. (Sara) ++- Added --ini switch to CLI that prints out configuration file names. (Marcus) ++- Added mysql_set_charset() to allow runtime altering of connection encoding. ++ (Scott) ++ ++- Implemented FR #41416 (getColumnMeta() should also return table name). (Tony) ++ ++- Fixed an integer overflow inside chunk_split(). Identified by Gerhard Wagner. ++ (Ilia) ++- Fixed SOAP extension's handler() to work even when ++ "always_populate_raw_post_data" is off. (Ilia) ++- Fixed possible infinite loop in imagecreatefrompng. (libgd #86) ++ (by Xavier Roche, CVE-2007-2756). (Pierre) ++- Fixed ext/filter Email Validation Vulnerability (MOPB-45 by Stefan Esser). ++ (Ilia) ++- Fixed altering $this via argument named "this". (Dmitry) ++- Fixed PHP CLI usage of php.ini from the binary location. (Hannes) ++- Fixed segfault in strripos(). (Tony, Joxean Koret) ++- Fixed bug #41693 (scandir() allows empty directory names). (Ilia) ++- Fixed bug #41673 (json_encode breaks large numbers in arrays). (Ilia) ++- Fixed bug #41525 (ReflectionParameter::getPosition() not available). (Marcus) ++- Fixed bug #41511 (Compile failure under IRIX 6.5.30 building md5.c). (Jani) ++- Fixed bug #41504 (json_decode() incorrectly decodes JSON arrays with empty ++ string keys). (Ilia) ++- Fixed bug #41492 (open_basedir/safe_mode bypass inside realpath()). (Ilia) ++- Fixed bug #41477 (no arginfo about SoapClient::__soapCall()). (Ilia) ++- Fixed bug #41455 (ext/dba/config.m4 pollutes global $LIBS and $LDFLAGS). ++ (mmarek at suse dot cz, Tony) ++- Fixed bug #41442 (imagegd2() under output control). (Tony) ++- Fixed bug #41430 (Fatal error with negative values of maxlen parameter of ++ file_get_contents()). (Tony) ++- Fixed bug #41423 (PHP assumes wrongly that certain ciphers are enabled in ++ OpenSSL). (Pierre) ++- Fixed bug #41421 (Uncaught exception from a stream wrapper segfaults). ++ (Tony, Dmitry) ++- Fixed bug #41403 (json_decode cannot decode floats if localeconv ++ decimal_point is not '.'). (Tony) ++- Fixed bug #41401 (wrong unary operator precedence). (Stas) ++- Fixed bug #41394 (dbase_create creates file with corrupted header). (Tony) ++- Fixed bug #41390 (Clarify error message with invalid protocol scheme). ++ (Scott) ++- Fixed bug #41378 (fastcgi protocol lacks support for Reason-Phrase in ++ "Status:" header). (anight at eyelinkmedia dot com, Dmitry) ++- Fixed bug #41374 (whole text concats values of wrong nodes). (Rob) ++- Fixed bug #41358 (configure cannot determine SSL lib with libcurl >= 7.16.2). ++ (Mike) ++- Fixed bug #41353 (crash in openssl_pkcs12_read() on invalid input). (Ilia) ++- Fixed bug #41351 (Invalid opcode with foreach ($a[] as $b)). (Dmitry, Tony) ++- Fixed bug #41347 (checkdnsrr() segfaults on empty hostname). (Scott) ++- Fixed bug #41337 (WSDL parsing doesn't ignore non soap bindings). (Dmitry) ++- Fixed bug #41326 (Writing empty tags with Xmlwriter::WriteElement[ns]) ++ (Pierre) ++- Fixed bug #41321 (downgrade read errors in getimagesize() to E_NOTICE). ++ (Ilia) ++- Fixed bug #41304 (compress.zlib temp files left). (Dmitry) ++- Fixed bug #41293 (Fixed creation of HTTP_RAW_POST_DATA when there is no ++ default post handler). (Ilia) ++- Fixed bug #41291 (FastCGI does not set SO_REUSEADDR). ++ (fmajid at kefta dot com, Dmitry) ++- Fixed gd build when used with freetype 1.x (Pierre, Tony) ++- Fixed bug #41287 (Namespace functions don't allow xmlns definition to be ++ optional). (Rob) ++- Fixed bug #41285 (Improved fix for CVE-2007-1887 to work with non-bundled ++ sqlite2 lib). (Ilia) ++- Fixed bug #41283 (Bug with deserializing array key that are doubles or ++ floats in wddx). (Ilia) ++- Fixed bug #41257 (lookupNamespaceURI does not work as expected). (Rob) ++- Fixed bug #41236 (Regression in timeout handling of non-blocking SSL ++ connections during reads and writes). (Ilia) ++- Fixed bug #41134 (zend_ts_hash_clean not thread-safe). ++ (marco dot cova at gmail dot com, Tony) ++- Fixed bug #41097 (ext/soap returning associative array as indexed without ++ using WSDL). (Dmitry) ++- Fixed bug #41004 (minOccurs="0" and null class member variable). (Dmitry) ++- Fixed bug #39542 (Behavior of require/include different to < 5.2.0). ++ (Dmitry) ++ ++03 May 2007, PHP 5.2.2 ++- Improved bundled GD ++ . Sync to 2.0.35 ++ . Added imagegrabwindow and imagegrabscreen, capture a screen or a ++ window using its handle (Pierre) ++ . colors allocated henceforth from the resulting image overwrite the palette ++ colors (Rob Leslie) ++ . Improved thread safety of the gif support (Roman Nemecek, Nuno, Pierre) ++ . Use the dimension of the GIF frame to create the destination image (Pierre) ++ . Load only once the local color map from a GIF data (Pierre) ++ . Improved thread safety of the freetype cache (Scott MacVicar, Nuno, Pierre) ++ . imagearc huge CPU usage with large angles, libgd bug #74 (Pierre) ++- Improved FastCGI SAPI to support external pipe and socket servers on win32. ++ (Dmitry) ++- Improved Zend Memory Manager ++ . guarantee of reasonable time for worst cases of best-fit free block ++ searching algorithm. (Dmitry) ++ . better cache usage and less fragmentation on erealloc() (Tony, Dmitry) ++- Improved SPL (Marcus) ++ . Added SplFileInfo::getBasename(), DirectoryIterator::getBasename(). ++ . Added SplFileInfo::getLinkTarget(), SplFileInfo::getRealPath(). ++ . Made RecursiveFilterIterator::accept() abstract as stated in documentation. ++- Improved SOAP ++ . Added ability to encode arrays with "SOAP-ENC:Array" type instead of WSDL ++ type. To activate the ability use "feature"=>SOAP_USE_XSI_ARRAY_TYPE ++ option in SoapClient/SoapServer constructors. (Rob, Dmitry) ++ ++- Added GMP_VERSION constant. (Tony) ++- Added --ri switch to CLI which allows to check extension information. (Marcus) ++- Added tidyNode::getParent() method (John, Nuno) ++- Added openbasedir and safemode checks in zip:// stream wrapper and ++ ZipArchive::open (Pierre) ++- Added php_pdo_sqlite_external.dll, a version of the PDO SQLite driver that ++ links against an external sqlite3.dll. This provides Windows users to upgrade ++ their sqlite3 version outside of the PHP release cycle. (Wez, Edin) ++- Added linenumbers to array returned by token_get_all(). (Johannes) ++ ++- Upgraded SQLite 3 to version 3.3.16 (Ilia) ++- Upgraded libraries bundled in the Windows distribution. (Edin) ++ . c-client (imap) to version 2006e ++ . libpq (PostgreSQL) to version 8.2.3 ++ . libmysql (MySQL) to version 5.0.37 ++ . openssl to version 0.9.8e ++- Upgraded PCRE to version 7.0 (Nuno) ++ ++- Updated timezone database to version 2007.5. (Derick) ++ ++- Fixed commandline handling for CLI and CGI. (Marcus, Johannes) ++- Fixed iterator_apply() with a callback using __call(). (Johannes) ++- Fixed possible multi bytes issues in openssl csr parser (Pierre) ++- Fixed shmop_open() with IPC_CREAT|IPC_EXCL flags on Windows. ++ (Vladimir Kamaev, Tony). ++- Fixed possible leak in ZipArchive::extractTo when safemode checks fails (Ilia) ++- Fixed possible relative path issues in zip_open and TS mode (old API) (Pierre) ++- Fixed zend_llist_remove_tail (Michael Wallner, Dmitry) ++- Fixed a thread safety issue in gd gif read code (Nuno, Roman Nemecek) ++- Fixed CVE-2007-1001, GD wbmp used with invalid image size (Pierre) ++- Fixed unallocated memory access/double free in in array_user_key_compare() ++ (MOPB-24 by Stefan Esser) (Stas) ++- Fixed wrong length calculation in unserialize S type ++ (MOPB-29 by Stefan Esser) (Stas) ++ ++- Fixed bug #41215 (setAttribute return code reversed). (Ilia) ++- Fixed bug #41192 (Per Directory Values only work for one key). (Dmitry) ++- Fixed bug #41175 (addAttribute() fails to add an attribute with an empty ++ value). (Ilia) ++- Fixed bug #41159 (mysql_pconnect() hash does not account for connect ++ flags). (Ilia) ++- Fixed bug #41121 (range() overflow handling for large numbers on 32bit ++ machines). (Ilia) ++- Fixed bug #41118 (PHP does not handle overflow of octal integers). (Tony) ++- Fixed bug #41109 (recursiveiterator.inc says "implements" Iterator instead of ++ "extends"). (Marcus) ++- Fixed bug #40130 (TTF usage doesn't work properly under Netware). (Scott, ++ gk at gknw dot de) ++- Fixed bug #41093 (magic_quotes_gpc ignores first arrays keys). (Arpad, Ilia) ++- Fixed bug #41075 (memleak when creating default object caused exception). ++ (Dmitry) ++- Fixed bug #41067 (json_encode() problem with UTF-16 input). (jp at df5ea ++ dot net. Ilia) ++- Fixed bug #41063 (chdir doesn't like root paths). (Dmitry) ++- Fixed bug #41061 ("visibility error" in ReflectionFunction::export()). ++ (Johannes) ++- Fixed bug #41043 (pdo_oci crash when freeing error text with persistent ++ connection). (Tony) ++- Fixed bug #41037 (unregister_tick_function() inside the tick function crash PHP). ++ (Tony) ++- Fixed bug #41034 (json_encode() ignores null byte started keys in arrays). ++ (Ilia) ++- Fixed bug #41026 (segfault when calling "self::method()" in shutdown functions). ++ (Tony) ++- Fixed bug #40999 (mcrypt_create_iv() not using random seed). (Ilia) ++- Fixed bug #40998 (long session array keys are truncated). (Tony) ++- Implement feature request #40947, allow a single filter as argument ++ for filter_var_array (Pierre) ++- Fixed bug #40935 (pdo_mysql does not raise an exception on empty ++ fetchAll()). (Ilia) ++- Fixed bug #40931 (open_basedir bypass via symlink and move_uploaded_file()). ++ (Tony) ++- Fixed bug #40921 (php_default_post_reader crashes when post_max_size is ++ exceeded). (trickie at gmail dot com, Ilia) ++- Fixed bug #40915 (addcslashes unexpected behavior with binary input). (Tony) ++- Fixed bug #40899 (memory leak when nesting list()). (Dmitry) ++- Fixed bug #40897 (error_log file not locked). (Ilia) ++- Fixed bug #40883 (mysql_query() is allocating memory incorrectly). (Tony) ++- Fixed bug #40872 (inconsistency in offsetSet, offsetExists treatment of ++ string enclosed integers). (Marcus) ++- Fixed bug #40861 (strtotime() doesn't handle double negative relative time ++ units correctly). (Derick, Ilia) ++- Fixed bug #40854 (imap_mail_compose() creates an invalid terminator for ++ multipart e-mails). (Ilia) ++- Fixed bug #40848 (sorting issue on 64-bit Solaris). (Wez) ++- Fixed bug #40836 (Segfault in ext/dom). (Rob) ++- Fixed bug #40833 (Crash when using unset() on an ArrayAccess object retrieved ++ via __get()). (Dmitry) ++- Fixed bug #40822 (pdo_mysql does not return rowCount() on select). (Ilia) ++- Fixed bug #40815 (using strings like "class::func" and static methods in ++ set_exception_handler() might result in crash). (Tony) ++- Fixed bug #40809 (Poor performance of ".="). (Dmitry) ++- Fixed bug #40805 (Failure executing function ibase_execute()). (Tony) ++- Fixed bug #40800 (cannot disable memory_limit with -1). (Dmitry, Tony) ++- Fixed bug #40794 (ReflectionObject::getValues() may crash when used with ++ dynamic properties). (Tony) ++- Fixed bug #40784 (Case sensitivity in constructor's fallback). (Tony) ++- Fixed bug #40770 (Apache child exits when PHP memory limit reached). (Dmitry) ++- Fixed bug #40764 (line thickness not respected for horizontal and vertical ++ lines). (Pierre) ++- Fixed bug #40758 (Test fcgi_is_fastcgi() is wrong on windows). (Dmitry) ++- Fixed bug #40754 (added substr() & substr_replace() overflow checks). (Ilia) ++- Fixed bug #40752 (parse_ini_file() segfaults when a scalar setting is ++ redeclared as an array). (Tony) ++- Fixed bug #40750 (openssl stream wrapper ignores default_stream_timeout). ++ (Tony) ++- Fixed bug #40727 (segfault in PDO when failed to bind parameters). (Tony) ++- Fixed bug #40709 (array_reduce() behaves strange with one item stored arrays). ++ (Ilia) ++- Fixed bug #40703 (Resolved a possible namespace conflict between libxmlrpc ++ and MySQL's NDB table handler). (Ilia) ++- Fixed bug #40961 (Incorrect results of DateTime equality check). (Mike) ++- Fixed bug #40678 (Cross compilation fails). (Tony) ++- Fixed bug #40621 (Crash when constructor called inappropriately). (Tony) ++- Fixed bug #40609 (Segfaults when using more than one SoapVar in a request). ++ (Rob, Dmitry) ++- Fixed bug #40606 (umask is not being restored when request is finished). ++ (Tony) ++- Fixed bug #40598 (libxml segfault). (Rob) ++- Fixed bug #40591 (list()="string"; gives invalid opcode). (Dmitry) ++- Fixed bug #40578 (imagettftext() multithreading issue). (Tony, Pierre) ++- Fixed bug #40576 (double values are truncated to 6 decimal digits when ++ encoding). (Tony) ++- Fixed bug #40560 (DIR functions do not work on root UNC path). (Dmitry) ++- Fixed bug #40548 (SplFileInfo::getOwner/getGroup give a warning on broken ++ symlink). (Marcus) ++- Fixed bug #40546 (SplFileInfo::getPathInfo() throws an exception if directory ++ is in root dir). (Marcus) ++- Fixed bug #40545 (multithreading issue in zend_strtod()). (Tony) ++- Fixed bug #40503 (json_encode() value corruption on 32bit systems with ++ overflown values). (Ilia) ++- Fixed bug #40467 (Partial SOAP request sent when XSD sequence or choice ++ include minOccurs=0). (Dmitry) ++- Fixed bug #40465 (Ensure that all PHP elements are printed by var_dump). ++ (wharmby at uk dot ibm dot com, Ilia) ++- Fixed bug #40464 (session.save_path wont use default-value when safe_mode ++ or open_basedir is enabled). (Ilia) ++- Fixed bug #40455 (proc_open() uses wrong command line when safe_mode_exec_dir ++ is set). (Tony) ++- Fixed bug #40432 (strip_tags() fails with greater than in attribute). (Ilia) ++- Fixed bug #40431 (dynamic properties may cause crash in ReflectionProperty ++ methods). (Tony) ++- Fixed bug #40451 (addAttribute() may crash when used with non-existent child ++ node). (Tony) ++- Fixed bug #40442 (ArrayObject::offsetExists broke in 5.2.1, works in 5.2.0). ++ (olivier at elma dot fr, Marcus) ++- Fixed bug #40428 (imagepstext() doesn't accept optional parameter). (Pierre) ++- Fixed bug #40417 (Allow multiple instances of the same named PDO token in ++ prepared statement emulation code). (Ilia) ++- Fixed bug #40414 (possible endless fork() loop when running fastcgi). ++ (Dmitry) ++- Fixed bug #40410 (ext/posix does not compile on MacOS 10.3.9). (Tony) ++- Fixed bug #40392 (memory leaks in PHP milter SAPI). ++ (tuxracer69 at gmail dot com, Tony) ++- Fixed bug #40371 (pg_client_encoding() not working on Windows). (Edin) ++- Fixed bug #40352 (FCGI_WEB_SERVER_ADDRS function get lost). (Dmitry) ++- Fixed bug #40290 (strtotime() returns unexpected result with particular ++ timezone offset). (Derick) ++- Fixed bug #40286 (PHP fastcgi with PHP_FCGI_CHILDREN don't kill children when ++ parent is killed). (Dmitry) ++- Fixed bug #40261 (Extremely slow data handling due to memory fragmentation). ++ (Dmitry) ++- Fixed bug #40236 (php -a function allocation eats memory). (Dmitry) ++- Fixed bug #40109 (iptcembed fails on non-jfif jpegs). (Tony) ++- Fixed bug #39965 (Latitude and longitude are backwards in date_sun_info()). ++ (Derick) ++- Implement #39867 (openssl PKCS#12 support) (Marc Delling, Pierre) ++- Fixed bug #39836 (SplObjectStorage empty after unserialize). (Marcus) ++- Fixed bug #39416 (Milliseconds in date()). (Derick) ++- Fixed bug #39396 (stream_set_blocking crashes on Win32). (Ilia, maurice at ++ iceblog dot de) ++- Fixed bug #39351 (relative include fails on Solaris). (Dmitry, Tony) ++- Fixed bug #39322 (proc_terminate() destroys process resource). (Nuno) ++- Fixed bug #38406 (crash when assigning objects to SimpleXML attributes). (Tony) ++- Fixed bug #37799 (ftp_ssl_connect() falls back to non-ssl connection). (Nuno) ++- Fixed bug #36496 (SSL support in imap_open() not working on Windows). (Edin) ++- Fixed bug #36226 (Inconsistent handling when passing nillable arrays). ++ (Dmitry) ++- Fixed bug #35872 (Avoid crash caused by object store being referenced during ++ RSHUTDOWN). (Andy) ++- Fixed bug #34794 (proc_close() hangs when used with two processes). ++ (jdolecek at netbsd dot org, Nuno) ++- Fixed PECL bug #10194 (crash in Oracle client when memory limit reached in ++ the callback). (Tony) ++- Fixed substr_compare and substr_count information leak (MOPB-14) (Stas, Ilia) ++- Fixed crash on op-assign where argument is string offset (Brian, Stas) ++- Fixed bug #38710 (data leakage because of nonexisting boundary checking in ++ statements in mysqli) (Stas) ++- Fixed bug #37386 (autocreating element doesn't assign value to first node). ++ (Rob) ++- Fixed bug #37013 (server hangs when returning circular object references). ++ (Dmitry) ++- Fixed bug #33664 Console window appears when using exec() ++ (Richard Quadling, Stas) ++ ++ ++08 Feb 2007, PHP 5.2.1 ++- Added read-timeout context option "timeout" for HTTP streams. (Hannes, Ilia). ++- Added CURLOPT_TCP_NODELAY constant to Curl extension. (Sara) ++- Added support for hex numbers of any size. (Matt) ++- Added function stream_socket_shutdown(). It is a wrapper for system ++ shutdown() function, that shut downs part of a full-duplex connection. ++ (Dmitry) ++- Added internal heap protection (Dmitry) ++ . memory-limit is always enabled (--enable-memory-limit removed) ++ . default value if memory-limit is set to 128M ++ . safe unlinking ++ . cookies ++ . canary protection (debug build only) ++ . random generation of cookies and canaries ++- Added forward support for 'b' prefix in front of string literals. (Andrei) ++- Added three new functions to ext/xmlwriter (Rob, Ilia) ++ . xmlwriter_start_dtd_entity() ++ . xmlwriter_end_dtd_entity() ++ . xmlwriter_write_dtd_entity() ++- Added a meta tag to phpinfo() output to prevent search engines from indexing ++ the page. (Ilia) ++- Added new function, sys_get_temp_dir(). (Hartmut) ++- Added missing object support to file_put_contents(). (Ilia) ++- Added support for md2, ripemd256 and ripemd320 algos to hash(). (Sara) ++- Added forward support for (binary) cast. (Derick) ++- Added optimization for imageline with horizontal and vertical lines (Pierre) ++ ++- Removed dependency from SHELL32.DLL. (Dmitry) ++- Removed double "wrong parameter count" warnings in various functions. ++ (Hannes) ++- Moved extensions to PECL: ++ . ext/informix (Derick, Tony) ++ ++- Changed double-to-string utilities to use BSD implementation. (Dmitry, Tony) ++- Updated bundled libcURL to version 7.16.0 in the Windows distro. (Edin) ++- Updated timezone database to version 2006.16. (Derick) ++- cgi.* and fastcgi.* directives are moved to INI subsystem. The new directive ++ cgi.check_shebang_line can be used to omitting check for "#! /usr/bin/php" ++ line. (Dmitry). ++- Improved proc_open(). Now on Windows it can run external commands not ++ through CMD.EXE. (Dmitry) ++- VCWD_REALPATH() is improved to use realpath cache without VIRTUAL_DIR. ++ (Dmitry) ++- ext/bcmath initialization code is moved from request startup to module ++ startup. (Dmitry) ++- Zend Memory Manager Improvements (Dmitry) ++ . use HeapAlloc() instead of VirtualAlloc() ++ . use "win32" storage manager (instead of "malloc") on Windows by default ++- Zip Extension Improvements (Pierre) ++ . Fixed leak in statName and stateIndex ++ . Fixed return setComment (Hannes) ++ . Added addEmptyDir method ++- Filter Extension Improvements (Ilia, Pierre) ++ . Fixed a bug when callback function returns a non-modified value. ++ . Added filter support for $_SERVER in cgi/apache2 sapis. ++ . Make sure PHP_SELF is filtered in Apache 1 sapi. ++ . Fixed bug #39358 (INSTALL_HEADERS contains incorrect reference to ++ php_filter.h). ++ . Added "default" option that allows a default value to be set for an ++ invalid or missing value. ++ . Invalid filters fails instead of returning unsafe value ++ . Fixed possible double encoding problem with sanitizing filters ++ . Make use of space-strict strip_tags() function ++ . Fixed whitespace trimming ++ . Added support for FastCGI environment variables. (Dmitry) ++- PDO_MySQL Extension Improvements (Ilia) ++ . Enabled buffered queries by default. ++ . Enabled prepared statement emulation by default. ++ ++- Small optimization of the date() function. (Matt,Ilia) ++- Optimized the internal is_numeric_string() function. (Matt,Ilia) ++- Optimized array functions utilizing php_splice(). (Ilia) ++- Windows related optimizations (Dmitry, Stas) ++ . COM initialization/deinitialization are done only if necessary ++ . removed unnecessary checks for ISREG file and corresponding stat() calls ++ . opendir() is reimplementation using GetFistFile/GetNextFile those are ++ faster then _findfirst/_findnext ++ . implemented registry cache that prevent registry lookup on each request. ++ In case of modification of corresponding registry-tree PHP will reload it ++ automatic ++ . start timeout thread only if necessary ++ . stat() is reimplementation using GetFileAttributesEx(). The new ++ implementation is faster then implementation in MS VC CRT, but it doesn't ++ support Windows 95. ++- Streams optimization (Dmitry) ++ . removed unnecessary ftell() calls (one call for each included PHP file) ++ . disabled calls to read() after EOF ++ ++- Fixed incorrect function names on FreeBSD where inet_pton() was named ++ __inet_pton() and inet_ntop() was named __inet_ntop(). (Hannes) ++- Fixed FastCGI impersonation for persistent connections on Windows. (Dmitry) ++- Fixed wrong signature initialization in imagepng (Takeshi Abe) ++- Fixed ftruncate() with negative size on FreeBSD. (Hannes) ++- Fixed segfault in RegexIterator when given invalid regex. (Hannes) ++- Fixed segfault in SplFileObject->openFile()->getPathname(). (Hannes) ++- Fixed segfault in ZTS mode when OCI8 statements containing sub-statements ++ are destroyed in wrong order. (Tony) ++- Fixed the validate email filter so that the letter "v" can also be used in ++ the user part of the email address. (Derick) ++- Fixed bug #40297 (compile failure in ZTS mode when collections support is ++ missing). (Tony) ++- Fixed bug #40285 (The PDO prepare parser goes into an infinite loop in ++ some instances). (Ilia) ++- Fixed bug #40274 (Sessions fail with numeric root keys). (Ilia) ++- Fixed bug #40259 (ob_start call many times - memory error). (Dmitry) ++- Fixed bug #40231 (file_exists incorrectly reports false). (Dmitry) ++- Fixed bug #40228 (ZipArchive::extractTo does create empty directories ++ recursively). (Pierre) ++- Fixed bug #40200 (The FastCgi version has different realpath results than ++ thread safe version). (Dmitry) ++- Fixed bug #40191 (use of array_unique() with objects triggers segfault). ++ (Tony) ++- Fixed bug #40189 (possible endless loop in zlib.inflate stream filter). ++ (Greg, Tony) ++- Fixed bug #40169 (CURLOPT_TCP_NODELAY only available in curl >= 7.11.2). ++ (Tony) ++- Fixed bug #40129 (iconv extension doesn't compile with CodeWarrior on ++ Netware). (gk at gknw dot de, Tony) ++- Fixed bug #40127 (apache2handler doesn't compile on Netware). ++ (gk at gknw dot de) ++- Fixed bug #40121 (PDO_DBLIB driver wont free statements). (Ilia) ++- Fixed bug #40098 (php_fopen_primary_script() not thread safe). (Ilia) ++- Fixed bug #40092 (chroot() doesn't clear realpath cache). (Dmitry) ++- Fixed bug #40091 (spl_autoload_register with 2 instances of the same class). ++ (Ilia) ++- Fixed bug #40083 (milter SAPI functions always return false/null). (Tony) ++- Fixed bug #40079 (php_get_current_user() not thread safe). ++ (Ilia, wharmby at uk dot ibm dot com) ++- Fixed bug #40078 (ORA-01405 when fetching NULL values using ++ oci_bind_array_by_name()). (Tony) ++- Fixed bug #40076 (zend_alloc.c: Value of enumeration constant must be in ++ range of signed integer). (Dmitry) ++- Fixed bug #40073 (exif_read_data dies on certain images). (Tony, Marcus) ++- Fixed bug #40036 (empty() does not work correctly with ArrayObject when ++ using ARRAY_AS_PROPS). (Ilia) ++- Fixed bug #40012 (php_date.c doesn't compile on Netware). ++ (gk at gknw dot de, Derick) ++- Fixed bug #40009 (http_build_query(array()) returns NULL). (Ilia) ++- Fixed bug #40002 (Try/Catch performs poorly). (Dmitry) ++- Fixed bug #39993 (tr_TR.UTF-8 locale has problems with PHP). (Ilia) ++- Fixed bug #39990 (Cannot "foreach" over overloaded properties). (Dmitry) ++- Fixed bug #39988 (type argument of oci_define_by_name() is ignored). ++ (Chris Jones, Tony) ++- Fixed bug #39984 (redirect response code in header() could be ignored ++ in CGI sapi). (Ilia) ++- Fixed bug #39979 (PGSQL_CONNECT_FORCE_NEW will causes next connect to ++ establish a new connection). (Ilia) ++- Fixed bug #39971 (pg_insert/pg_update do not allow now() to be used ++ for timestamp fields). (Ilia) ++- Fixed bug #39969 (ini setting short_open_tag has no effect when using ++ --enable-maintainer-zts). (Dmitry) ++- Fixed bug #39952 (zip ignoring --with-libdir on zlib checks) ++ (judas dot iscariote at gmail dot com) ++- Fixed bug #39944 (References broken). (Dmitry) ++- Fixed bug #39935 (Extensions tidy,mcrypt,mhash,pdo_sqlite ignores ++ --with-libdir). (judas dot iscariote at gmail dot com, Derick) ++- Fixed bug #39903 (Notice message when executing __halt_compiler() more than ++ once). (Tony) ++- Fixed bug #39898 (FILTER_VALIDATE_URL validates \r\n\t etc). (Ilia) ++- Fixed bug #39890 (using autoconf 2.6x and --with-layout=GNU breaks PEAR ++ install path). (Tony) ++- Fixed bug #39884 (ReflectionParameter::getClass() throws exception for ++ type hint self). (thekid at php dot net) ++- Fixed bug #39878 (CURL doesn't compile on Sun Studio Pro). (Ilia) ++- Fixed bug #39873 (number_format() breaks with locale & decimal points). ++ (Ilia) ++- Fixed bug #39869 (safe_read does not initialize errno). ++ (michiel at boland dot org, Dmitry) ++- Fixed bug #39850 (SplFileObject throws contradictory/wrong error messages ++ when trying to open "php://wrong"). (Tony) ++- Fixed bug #39846 (Invalid IPv4 treated as valid). (Ilia) ++- Fixed bug #39845 (Persistent connections generate a warning in pdo_pgsql). ++ (Ilia) ++- Fixed bug #39832 (SOAP Server: parameter not matching the WSDL specified ++ type are set to 0). (Dmitry) ++- Fixed bug #39825 (foreach produces memory error). (Dmitry) ++- Fixed bug #39816 (apxs2filter ignores httpd.conf & .htaccess php config ++ settings). (Ilia) ++- Fixed bug #39815 (SOAP double encoding is not locale-independent). (Dmitry) ++- Fixed bug #39797 (virtual() does not reset changed INI settings). (Ilia) ++- Fixed bug #39795 (build fails on AIX because crypt_r() uses different ++ data struct). (Tony) ++- Fixed bug #39791 (Crash in strtotime() on overly long relative date ++ multipliers). (Ilia) ++- Fixed bug #39787 (PHP doesn't work with Apache 2.3). ++ (mv at binarysec dot com). ++- Fixed bug #39782 (setTime() on a DateTime constructed with a Weekday ++ yields incorrect results). (Ilia) ++- Fixed bug #39780 (PNG image with CRC/data error raises fatal error) (Pierre) ++- Fixed bug #39779 (Enable AUTH PLAIN mechanism in underlying libc-client). ++ (michael dot heimpold at s2000 dot tu-chemnitz dot de, Ilia) ++- Fixed bug #39775 ("Indirect modification ..." message is not shown). ++ (Dmitry) ++- Fixed bug #39763 (magic quotes are applied twice by ext/filter in ++ parse_str()). (Ilia) ++- Fixed bug #39760 (cloning fails on nested SimpleXML-Object). (Rob) ++- Fixed bug #39759 (Can't use stored procedures fetching multiple result ++ sets in pdo_mysql). (Ilia) ++- Fixed bug #39754 (Some POSIX extension functions not thread safe). ++ (Ilia, wharmby at uk dot ibm dot com) ++- Fixed bug #39751 (putenv crash on Windows). (KevinJohnHoffman at gmail.com) ++- Fixed bug #39732 (oci_bind_array_by_name doesn't work on Solaris 64bit). ++ (Tony) ++- Fixed bug #39724 (Broken build due to spl/filter usage of pcre extension). ++ (Tony, Ilia) ++- Fixed bug #39718 (possible crash if assert.callback is set in ini). (Ilia) ++- Fixed bug #39702 (php crashes in the allocator on linux-m68k). (Dmitry) ++- Fixed bug #39685 (iconv() - undefined function). (Hannes) ++- Fixed bug #39673 (file_get_contents causes bus error on certain offsets). ++ (Tony) ++- Fixed bug #39663 (Memory leak in pg_get_notify() and a possible memory ++ corruption on Windows in pgsql and pdo_pgsql extensions). ++ (Ilia, matteo at beccati dot com) ++- Fixed bug #39662 (Segfault when calling asXML() of a cloned ++ SimpleXMLElement). (Rob, Tony) ++- Fixed bug #39656 (crash when calling fetch() on a PDO statment object after ++ closeCursor()). (Ilia, Tony) ++- Fixed bug #39653 (ext/dba doesn't check for db-4.5 and db-4.4 when db4 ++ support is enabled). (Tony) ++- Fixed bug #39652 (Wrong negative results from memory_get_usage()). (Dmitry) ++- Fixed bug #39648 (Implementation of PHP functions chown() and chgrp() are ++ not thread safe). (Ilia, wharmby at uk dot ibm dot com) ++- Fixed bug #39640 (Segfault with "Allowed memory size exhausted"). (Dmitry) ++- Fixed bug #39625 (Apache crashes on importStylesheet call). (Rob) ++- Fixed bug #39623 (thread safety fixes on *nix for putenv() & mime_magic). ++ (Ilia, wharmby at uk dot ibm dot com) ++- Fixed bug #39621 (str_replace() is not binary safe on strings with equal ++ length). (Tony) ++- Fixed bug #39613 (Possible segfault in imap initialization due to missing ++ module dependency). (wharmby at uk dot ibm dot com, Tony) ++- Fixed bug #39606 (Use of com.typelib_file in PHP.ini STILL causes A/V). (Rob) ++- Fixed bug #39602 (Invalid session.save_handler crashes PHP). (Dmitry) ++- Fixed bug #39596 (Creating Variant of type VT_ARRAY). (Rob) ++- Fixed bug #39583 (ftp_put() does not change transfer mode to ASCII). (Tony) ++- Fixed bug #39576 (array_walk() doesn't separate user data zval). (Tony) ++- Fixed bug #39575 (move_uploaded_file() no longer working (safe mode ++ related)). (Tony) ++- Fixed bug #39571 (timeout ssl:// connections). (Ilia) ++- Fixed bug #39564 (PDO::errorInfo() returns inconsistent information when ++ sqlite3_step() fails). (Tony) ++- Fixed bug #39548 (ZMSG_LOG_SCRIPT_NAME not routed to OutputDebugString() ++ on Windows). (Dmitry) ++- Fixed bug #39538 (fgetcsv can't handle starting newlines and trailing odd ++ number of backslashes). (David Soria Parra, Pierre) ++- Fixed bug #39534 (Error in maths to calculate of ++ ZEND_MM_ALIGNED_MIN_HEADER_SIZE). (wharmby at uk dot ibm dot com, Dmitry) ++- Fixed bug #39527 (Failure to retrieve results when multiple unbuffered, ++ prepared statements are used in pdo_mysql). (Ilia) ++- Fixed bug #39508 (imagefill crashes with small images 3 pixels or less). ++ (Pierre) ++- Fixed bug #39506 (Archive corrupt with ZipArchive::addFile method). (Pierre) ++- Fixed bug #39504 (xmlwriter_write_dtd_entity() creates Attlist tag, not ++ entity). (Hannes) ++- Fixed bug #39483 (Problem with handling of \ char in prepared statements). ++ (Ilia, suhachov at gmail dot com) ++- Fixed bug #39458 (ftp_nlist() returns false on empty dirs). (Nuno) ++- Fixed bug #39454 (Returning a SOAP array segfaults PHP). (Dmitry) ++- Fixed bug #39450 (getenv() fills other super-globals). (Ilia, Tony) ++- Fixed bug #39449 (Overloaded array properties do not work correctly). ++ (Dmitry) ++- Fixed bug #39445 (Calling debug_backtrace() in the __toString() ++ function produces a crash). (Dmitry) ++- Fixed bug #39438 (Fatal error: Out of memory). (Dmitry) ++- Fixed bug #39435 ('foo' instanceof bar gives invalid opcode error). (Sara) ++- Fixed bug #39414 (Syntax error while compiling with Sun Workshop Complier). ++ (Johannes) ++- Fixed bug #39398 (Booleans are not automatically translated to integers). ++ (Ilia) ++- Fixed bug #39394 (Missing check for older variants of openssl). (Ilia) ++- Fixed bug #39367 (clearstatcache() doesn't clear realpath cache). ++ (j at pureftpd dot org, Dmitry) ++- Fixed bug #39366 (imagerotate does not use alpha with angle > 45 degrees) ++ (Pierre) ++- Fixed bug #39364 (Removed warning on empty haystack inside mb_strstr()). ++ (Ilia) ++- Fixed bug #39362 (Added an option to imap_open/imap_reopen to control the ++ number of connection retries). (Ilia) ++- Fixed bugs #39361 & #39400 (mbstring function overloading problem). (Seiji) ++- Fixed bug #39354 (Allow building of curl extension against libcurl ++ 7.16.0). (Ilia) ++- Fixed bug #39350 (crash with implode("\n", array(false))). (Ilia) ++- Fixed bug #39344 (Unnecessary calls to OnModify callback routine for ++ an extension INI directive). (wharmby at uk dot ibm dot com, Dmitry) ++- Fixed bug #39320 (ZEND_HASH_APPLY_STOP causes deletion). (Marcus) ++- Fixed bug #39313 (spl_autoload triggers Fatal error). (Marcus) ++- Fixed bug #39300 (make install fails if wget is not available). (Tony) ++- Fixed bug #39297 (Memory corruption because of indirect modification of ++ overloaded array). (Dmitry) ++- Fixed bug #39286 (misleading error message when invalid dimensions are ++ given) (Pierre) ++- Fixed bug #39273 (imagecopyresized may ignore alpha channel) (Pierre) ++- Fixed bug #39265 (Fixed path handling inside mod_files.sh). ++ (michal dot taborsky at gmail dot com, Ilia) ++- Fixed bug #39217 (serialNumber might be -1 when the value is too large). ++ (Pierre, Tony) ++- Fixed bug #39215 (Inappropriate close of stdin/stdout/stderr). (Wez, Ilia) ++- Fixed bug #39201 (Possible crash in Apache 2 with 413 ErrorHandler). (Ilia) ++- Fixed bug #39151 (Parse error in recursiveiteratoriterator.php). (Marcus) ++- Fixed bug #39121 (Incorrect return array handling in non-wsdl soap client). ++ (Dmitry) ++- Fixed bug #39090 (DirectoryFilterDots doxygen docs and example is wrong). ++ (Marcus) ++- Fixed bug #38852 (XML-RPC Breaks iconv). (Hannes) ++- Fixed bug #38770 (unpack() broken with longs on 64 bit machines). ++ (Ilia, David Soria Parra). ++- Fixed bug #38698 (for some keys cdbmake creates corrupted db and cdb can't ++ read valid db). (Marcus) ++- Fixed bug #38680 (Added missing handling of basic types in json_decode). ++ (Ilia) ++- Fixed bug #38604 (Fixed request time leak inside foreach() when iterating ++ through virtual properties). (Dmitry) ++- Fixed bug #38602 (header( "HTTP/1.0 ..." ) does not change proto version). ++ (Ilia) ++- Fixed bug #38542 (proc_get_status() returns wrong PID on windows). (Nuno) ++- Fixed bug #38536 (SOAP returns an array of values instead of an object). ++ (Dmitry) ++- Fixed bug #38456 (Apache2 segfaults when virtual() is called in .php ++ ErrorDocument). (Ilia) ++- Fixed bug #38325 (spl_autoload_register() gives wrong line for "class not ++ found"). (Ilia) ++- Fixed bug #38319 (Remove bogus warnings from persistent PDO connections). ++ (Ilia) ++- Fixed bug #38274 (Memlimit fatal error sent to "wrong" stderr when using ++ fastcgi). (Dmitry) ++- Fixed bug #38252 (Incorrect PDO error message on invalid default fetch ++ mode). (Ilia) ++- Fixed bug #37927 (Prevent trap when COM extension processes argument of ++ type VT_DISPATCH|VT_REF) (Andy) ++- Fixed bug #37773 (iconv_substr() gives "Unknown error" when string ++ length = 1"). (Ilia) ++- Fixed bug #37627 (session save_path check checks the parent directory). ++ (Ilia) ++- Fixed bug #37619 (proc_open() closes stdin on fork() failure). ++ (jdolecek at NetBSD dot org, Nuno) ++- Fixed bug #37588 (COM Property propputref converts to PHP function ++ and can't be accesed). (Rob) ++- Fixed bug #36975 (natcasesort() causes array_pop() to misbehave). ++ (Hannes) ++- Fixed bug #36812 (pg_execute() modifies input array). (Ilia) ++- Fixed bug #36798 (Error parsing named parameters with queries containing ++ high-ascii chars). (Ilia) ++- Fixed bug #36644 (possible crash in variant_date_from_timestamp()). (Ilia) ++- Fixed bug #36427 (proc_open() / proc_close() leak handles on windows). ++ (jdolecek at NetBSD dot org, Nuno) ++- Fixed bug #36392 (wrong number of decimal digits with %e specifier in ++ sprintf). (Matt,Ilia) ++- Fixed bug #36214 (__get method works properly only when conditional ++ operator is used). (Dmitry) ++- Fixed bug #35634 (Erroneous "Class declarations may not be nested" ++ error raised). (Carl P. Corliss, Dmitry) ++- Fixed bug #35106 (nested foreach fails when array variable has a ++ reference). (Dmitry) ++- Fixed bug #34564 (COM extension not returning modified "out" argument) (Andy) ++- Fixed bug #33734 (Something strange with COM Object). (Rob) ++- Fixed bug #33386 (ScriptControl only sees last function of class). (Rob) ++- Fixed bug #33282 (Re-assignment by reference does not clear the is_ref ++ flag) (Ilia, Dmitry, Matt Wilmas) ++- Fixed bug #30074 (apparent symbol table error with ++ extract($blah, EXTR_REFS)) (Brian) ++- Fixed bug #29840 (is_executable() does not honor safe_mode_exec_dir ++ setting). (Ilia) ++- Fixed PECL bug #7295 (ORA-01405: fetched column value is NULL on LOB ++ fields). (Tony) ++ ++02 Nov 2006, PHP 5.2.0 ++- Updated bundled OpenSSL to version 0.9.8d in the Windows distro. (Edin) ++- Updated Postgresql client libraries to 8.1.4 in the Windows distro. (Edin) ++- Updated PCRE to version 6.7. (Ilia) ++- Updated libsqlite in ext/pdo_sqlite to 3.3.7. (Ilia) ++- Updated bundled MySQL client library to version 5.0.22 in the Windows ++ distribution. (Edin) ++- Updated timezonedb to version 2006.7. (Derick) ++ ++- Added ability to make SOAP call userspace PHP<->XML converters. (Dmitry) ++- Added support for character sets in pg_escape_string() for PostgreSQL 8.1.4 ++ and higher. (Ilia) ++- Added support for character sets in PDO quote() method for PostgreSQL 8.1.4 ++ and higher. (Ilia) ++- Added DSA key generation support to openssl_pkey_new(), FR #38731 (marci ++ at balabit dot hu, Tony) ++- Added SoapServer::setObject() method (it is a simplified version of ++ SoapServer::setClass() method). (Dmitry) ++- Added support for hexadecimal entity in imagettftext() for the bundled GD. ++ (Pierre) ++- Added support for httpOnly flag for session extension and cookie setting ++ functions. (Scott MacVicar, Ilia) ++- Added version specific registry keys to allow different configurations for ++ different php version. (Richard, Dmitry) ++- Added "PHPINIDir" Apache directive to apache and apache_hooks SAPIs. ++ (Dmitry) ++- Added an optional boolean parameter to memory_get_usage() and ++ memory_get_peak_usage() to get memory size allocated by emalloc() or real ++ size of memory allocated from system. (Dmitry) ++- Added Zip Archive extension. (Pierre) ++- Added RFC1867 fileupload processing hook. (Stefan E.) ++- Added JSON and Filter extensions. (Derick, Rasmus) ++- Added error messages to disk_free_space() and disk_total_space() functions. ++ FR #37971 (Tony) ++- Added PATHINFO_FILENAME option to pathinfo() to get the filename. ++ (Toby S. and Christian S.) ++- Added array_fill_keys() function. (Marcus, Matt Wilmas) ++- Added posix_initgroups() function. (Ilia) ++- Added an optional parameter to parse_url() to allow retrieval of distinct ++ URL components. (Ilia) ++- Added optional parameter to http_build_query() to allow specification of ++ string separator. (Ilia) ++- Added image_type_to_extension() function. (Hannes, Ilia) ++- Added allow_url_include ini directive to complement allow_url_fopen. (Rasmus) ++- Added automatic module globals management. (Dmitry) ++- Added RFC2397 (data: stream) support. (Marcus) ++- Added new error mode E_RECOVERABLE_ERROR. (Derick, Marcus, Tony) ++- Added support for getenv() input filtering. (Rasmus) ++- Added support for constructors in interfaces to force constructor signature ++ checks in implementations. (Marcus) ++- Added memory_get_peak_usage() function for retrieving peak memory usage of ++ a PHP script. (Ilia) ++- Added pg_field_table() function. (Edin) ++- Added SimpleXMLElement::saveXML() as an alias for SimpleXMLElement::asXML(). ++ (Hannes) ++- Added DOMNode::getNodePath() for getting an XPath for a node. (Christian) ++- Added gmp_nextprime() function. (ants dot aasma at gmail dot com, Tony) ++- Added error_get_last() function. (Mike) ++ ++- Removed current working directory from the php.ini search path for CLI and ++ re-added it for other SAPIs (restore to pre 5.1.x behavior). (Edin) ++- Moved extensions to PECL: ++ . ext/filepro (Derick, Tony) ++ . ext/hwapi (Derick, Tony) ++- Disabled CURLOPT_FOLLOWLOCATION in curl when open_basedir or ++ safe_mode are enabled. (Stefan E., Ilia) ++ ++- Increased default memory limit to 16 megabytes to accommodate for a more ++ accurate memory utilization measurement. ++- In addition to path to php.ini, PHPRC now may specify full file name. ++ (Dmitry) ++ ++- Optimized array/HashTable copying. (Matt Wilmas, Dmitry) ++- Optimized zend_try/zend_catch macros by eliminating memcpy(3). (Dmitry) ++- Optimized require_once() and include_once() by eliminating fopen(3) on ++ second usage. (Dmitry) ++- Optimized request shutdown sequence. Restoring ini directives now iterates ++ only over modified directives instead of all. (Dmitry) ++ ++- Changed priority of PHPRC environment variable on win32 to be higher then ++ value from registry. (Dmitry) ++- Changed __toString() to be called wherever applicable. (Marcus) ++- Changed E_ALL error reporting mode to include E_RECOVERABLE_ERROR. (Marcus) ++- Changed realpath cache to be disabled when "open_basedir" or "safe_mode" ++ are enabled on per-request basis. (Ilia) ++ ++- Improved SNMP extension: (Jani) ++ . Renamed snmp_set_oid_numeric_print() to snmp_set_oid_output_format(). ++ . Added 2 new constants: SNMP_OID_OUTPUT_FULL and SNMP_OID_OUTPUT_NUMERIC ++ . Fixed bug #37564 (AES privacy encryption not possible due to net-snmp 5.2 ++ compatibility issue). (Patch: scott dot moynes+php at gmail dot com) ++- Improved OpenSSL extension: (Pierre) ++ . Added support for all supported algorithms in openssl_verify ++ . Added openssl_pkey_get_details, returns the details of a key ++ . Added x509 v3 extensions support ++ . Added openssl_csr_get_subject() and openssl_csr_get_public_key() ++ . Added 3 new constants OPENSSL_VERSION_TEXT and OPENSSL_VERSION_NUMBER and ++ OPENSSL_KEYTYPE_EC ++- Improved the Zend memory manager: (Dmitry) ++ . Removed unnecessary "--disable-zend-memory-manager" configure option. ++ . Added "--enable-malloc-mm" configure option which is enabled by default in ++ debug builds to allow using internal and external memory debuggers. ++ . Allow tweaking the memory manager with ZEND_MM_MEM_TYPE and ZEND_MM_SEG_SIZE ++ environment variables. ++ . For more information: Zend/README.ZEND_MM ++- Improved safe_mode check for the error_log() function. (Ilia) ++- Improved the error reporting in SOAP extension on request failure. (Ilia) ++- Improved crypt() on win32 to be about 10 times faster and to have friendlier ++ license. (Frank, Dmitry) ++- Improved performance of the implode() function on associated arrays. (Ilia) ++- Improved performance of str_replace() when doing 1 char to 1 char or 1 char ++ to many chars replacement. (Ilia) ++- Improved apache2filter SAPI: ++ . Allowed PHP to be an arbitrary filter in the chain and read the script from ++ the Apache stream. (John) ++ . Added support for apache2filter in the Windows build including binary ++ support for both Apache 2.0.x (php5apache2_filter.dll) and Apache 2.2.x ++ (php5apache2_2_filter.dll). (Edin) ++- Improved apache2handler SAPI: ++ . Changed ap_set_content_type() to be called only once. (Mike) ++ . Added support for Apache 2.2 handler in the Windows distribution. (Edin) ++- Improved FastCGI SAPI: (Dmitry) ++ . Removed source compatibility with libfcgi. ++ . Optimized access to FastCGI environment variables by using HashTable ++ instead of linear search. ++ . Allowed PHP_FCGI_MAX_REQUESTS=0 that assumes no limit. ++ . Allowed PHP_FCGI_CHILDREN=0 that assumes no worker children. (FastCGI ++ requests are handled by main process itself) ++- Improved CURL: ++ . Added control character checks for "open_basedir" and "safe_mode" checks. ++ (Ilia) ++ . Added implementation of curl_multi_info_read(). (Brian) ++- Improved PCRE: (Andrei) ++ . Added run-time configurable backtracking/recursion limits. ++ . Added preg_last_error(). (Andrei) ++- Improved PDO: ++ . Added new attribute ATTR_DEFAULT_FETCH_MODE. (Pierre) ++ . Added FETCH_PROPS_LATE. (Marcus) ++- Improved SPL: (Marcus) ++ . Made most iterator code exception safe. ++ . Added RegExIterator and RecursiveRegExIterator. ++ . Added full caching support and ArrayAccess to CachingIterator. ++ . Added array functions to ArrayObject/ArrayIterator and made them faster. ++ . Added support for reading csv and skipping empty lines in SplFileObject. ++ . Added CachingIterator::TOSTRING_USE_INNER, calls inner iterator __toString. ++ . Added ability to set the CSV separator per SplFileObject. ++- Improved xmlReader: (Rob) ++ . Added readInnerXml(), xmlReader::setSchema(). ++ . Added readInnerXML(), readOuterXML(), readString(), setSchema(). (2.6.20+) ++ . Changed to passing libxml options when loading reader. ++ ++- Fixed invalid read in imagecreatefrompng when an empty file is given ++ (Pierre, Tony) ++- Fixed infinite loop when a wrong color index is given to imagefill (Pierre) ++- Fixed mess with CGI/CLI -d option (now it works with cgi; constants are ++ working exactly like in php.ini; with FastCGI -d affects all requests). ++ (Dmitry) ++- Fixed missing open_basedir check inside chdir() function. (Ilia) ++- Fixed overflow on 64bit systems in str_repeat() and wordwrap(). (Stefan E.) ++- Fixed XSLTProcessor::importStylesheet() to return TRUE on success ++ (Christian) ++- Fixed leaks in openssl_csr_sign and openssl_csr_new (Pierre) ++- Fixed phpinfo() cutoff of variables at \0. (Ilia) ++- Fixed a bug in the filter extension that prevented magic_quotes_gpc from ++ being applied when RAW filter is used. (Ilia) ++- Fixed memory leaks in openssl streams context options. (Pierre) ++- Fixed handling of extremely long paths inside tempnam() function. (Ilia) ++- Fixed bug #39721 (Runtime inheritance causes data corruption). (Dmitry) ++- Fixed bug #39304 (Segmentation fault with list unpacking of string offset). ++ (Dmitry) ++- Fixed bug #39192 (Not including nsapi.h properly with SJSWS 7). This will ++ make PHP 5.2 compatible to new Sun Webserver. (Uwe) ++- Fixed bug #39140 (Uncaught exception may cause crash). (Dmitry) ++- Fixed bug #39125 (Memleak when reflecting non-existing class/method). (Tony) ++- Fixed bug #39067 (getDeclaringClass() and private properties). (Tony) ++- Fixed bug #39039 (SSL: fatal protocol error when fetching HTTPS from servers ++ running Google web server). (Ilia) ++- Fixed bug #39035 (Compatibility issue between DOM and ++ zend.ze1_compatibility_mode). (Rob) ++- Fixed bug #39034 (curl_exec() with return transfer returns TRUE on empty ++ files). (Ilia) ++- Fixed bug #39032 (strcspn() stops on null character). (Tony) ++- Fixed bug #39020 (PHP in FastCGI server mode crashes). (Dmitry) ++- Fixed bug #39017 (foreach(($obj = new myClass) as $v); echo $obj; ++ segfaults). (Dmitry) ++- Fixed bug #39004 (Fixed generation of config.nice with autoconf 2.60). (Ilia) ++- Fixed bug #39003 (__autoload() is called for type hinting). (Dmitry, Tony) ++- Fixed bug #39001 (ReflectionProperty returns incorrect declaring class for ++ protected properties). (Tony) ++- Fixed bug #38996 (PDO_MYSQL doesn't check connections for liveness). (Tony) ++- Fixed bug #38993 (Fixed safe_mode/open_basedir checks for session.save_path, ++ allowing them to account for extra parameters). (Ilia) ++- Fixed bug #38989 (Absolute path with slash at beginning doesn't work on win). ++ (Dmitry) ++- Fixed bug #38985 (Can't cast COM objects). (Wez) ++- Fixed bug #38981 (using FTP URLs in get_headers() causes crash). (Tony) ++- Fixed bug #38963 (Fixed a possible open_basedir bypass in tempnam()). (Ilia) ++- Fixed bug #38961 (metaphone() results in segmentation fault on NetBSD). ++ (Tony) ++- Fixed bug #38949 (Cannot get xmlns value attribute). (Rob) ++- Fixed bug #38942 (Double old-style-ctor inheritance). (Dmitry) ++- Fixed bug #38941 (imap extension does not compile against new version of the ++ imap library). (Ilia) ++- Fixed bug #38934 (move_uploaded_file() cannot read uploaded file outside of ++ open_basedir). (Ilia) ++- Fixed bug #38904 (apache2filter changes cwd to /). (Ilia, Hannes) ++- Fixed bug #38891 (get_headers() do not work with curl-wrappers). (Ilia) ++- Fixed bug #38882 (ldap_connect causes segfault with newer versions of ++ OpenLDAP). (Tony) ++- Fixed bug #38859 (parse_url() fails if passing '@' in passwd). (Tony) ++- Fixed bug #38850 (lookupNamespaceURI doesn't return default namespace). (Rob) ++- Fixed bug #38844 (curl_easy_strerror() is defined only since cURL 7.12.0). ++ (Tony) ++- Fixed bug #38813 (DOMEntityReference->__construct crashes when called ++ explicitly). (Rob) ++- Fixed bug #38808 ("maybe ref" issue for current() and others). (Dmitry) ++- Fixed bug #38779 (engine crashes when require()'ing file with syntax error ++ through userspace stream wrapper). (Tony, Dmitry) ++- Fixed bug #38772 (inconsistent overriding of methods in different visibility ++ contexts). (Dmitry) ++- Fixed bug #38759 (PDO sqlite2 empty query causes segfault). (Tony) ++- Fixed bug #38721 (Invalid memory read in date_parse()). (Tony, Derick) ++- Fixed bug #38700 (SoapClient::__getTypes never returns). (Dmitry) ++- Fixed bug #38693 (curl_multi_add_handle() set curl handle to null). (Ilia) ++- Fixed bug #38687 (sockaddr local storage insufficient for all sock families). ++ (Sara) ++- Fixed bug #38661 (mixed-case URL breaks url-wrappers). (Ilia) ++- Fixed bug #38653 (memory leak in ReflectionClass::getConstant()). (Tony) ++- Fixed bug #38649 (uninit'd optional arg in stream_socket_sendto()). (Sara) ++- Fixed bug #38637 (curl_copy_handle() fails to fully copy the cURL handle). ++ (Tony, Ilia) ++- Fixed bug #38624 (Strange warning when incrementing an object property and ++ exception is thrown from __get method). (Tony) ++- Fixed bug #38623 (leaks in a tricky code with switch() and exceptions). ++ (Dmitry) ++- Fixed bug #38579 (include_once() may include the same file twice). (Dmitry) ++- Fixed bug #38574 (missing curl constants and improper constant detection). ++ (Ilia) ++- Fixed bug #38543 (shutdown_executor() may segfault when memory_limit is too ++ low). (Dmitry) ++- Fixed bug #38535 (memory corruption in pdo_pgsql driver on error retrieval ++ inside a failed query executed via query() method). (Ilia) ++- Fixed bug #38534 (segfault when calling setlocale() in userspace session ++ handler). (Tony) ++- Fixed bug #38524 (strptime() does not initialize the internal date storage ++ structure). (Ilia) ++- Fixed bug #38511, #38473, #38263 (Fixed session extension request shutdown ++ order to ensure it is shutdown before the extensions it may depend on). ++ (Ilia) ++- Fixed bug #38488 (Access to "php://stdin" and family crashes PHP on win32). ++ (Dmitry) ++- Fixed bug #38474 (getAttribute select attribute by order, even when ++ prefixed). (Rob) ++- Fixed bug #38467 (--enable-versioning causes make fail on OS X). (Tony) ++- Fixed bug #38465 (ReflectionParameter fails if default value is an access ++ to self::). (Johannes) ++- Fixed bug #38464 (array_count_values() mishandles numeric strings). ++ (Matt Wilmas, Ilia) ++- Fixed bug #38461 (setting private attribute with __set() produces ++ segfault). (Tony) ++- Fixed bug #38458, PECL bug #8944, PECL bug #7775 (error retrieving columns ++ after long/text columns with PDO_ODBC). (Wez) ++- Fixed bug #38454 (warning upon disabling handler via ++ xml_set_element_handler). (dtorop933 at gmail dot com, Rob) ++- Fixed bug #38451 (PDO_MYSQL doesn't compile on Solaris). (Tony) ++- Fixed bug #38450 (constructor is not called for classes used in userspace ++ stream wrappers). (Tony) ++- Fixed bug #38438 (DOMNodeList->item(0) segfault on empty NodeList). (Ilia) ++- Fixed bug #38431 (xmlrpc_get_type() crashes PHP on objects). (Tony) ++- Fixed bug #38427 (unicode causes xml_parser to misbehave). (Rob) ++- Fixed bug #38424 (Different attribute assignment if new or existing). (Rob) ++- Fixed bug #38400 (Use of com.typelib_file may cause a crash). (Ilia) ++- Fixed bug #38394 (PDO fails to recover from failed prepared statement ++ execution). (Ilia) ++- Fixed bug #38377 (session_destroy() gives warning after ++ session_regenerate_id()). (Ilia) ++- Implemented #38357 (dbase_open can't open DBase 3 dbf file). ++ (rodrigo at fabricadeideias dot com, Mike) ++- Fixed bug #38354 (Unwanted reformatting of XML when using AsXML). (Christian) ++- Fixed bug #38347 (Segmentation fault when using foreach with an unknown/empty ++ SimpleXMLElement). (Tony) ++- Fixed bug #38322 (reading past array in sscanf() leads to arbitrary code ++ execution). (Tony) ++- Fixed bug #38315 (Constructing in the destructor causes weird behavior). ++ (Dmitry) ++- Fixed bug #38303 (spl_autoload_register() suppress all errors silently). ++ (Ilia) ++- Fixed bug #38290 (configure script ignores --without-cdb,inifile,flatfile). ++ (Marcus) ++- Fixed bug #38289 (segfault in session_decode() when _SESSION is NULL). ++ (Tony) ++- Fixed bug #38287 (static variables mess up global vars). (Dmitry) ++- Fixed bug #38278 (session_cache_expire()'s value does not match phpinfo's ++ session.cache_expire). (Tony) ++- Fixed bug #38276 (file_exists() works incorrectly with long filenames ++ on Windows). (Ilia, Tony) ++- Fixed bug #38269 (fopen wrapper doesn't fail on invalid hostname with ++ curlwrappers enabled). (Tony) ++- Fixed bug #38265 (heap corruption). (Dmitry) ++- Fixed bug #38261 (openssl_x509_parse() leaks with invalid cert) (Pierre) ++- Fixed bug #38255 (openssl possible leaks while passing keys) (Pierre) ++- Fixed bug #38253 (PDO produces segfault with default fetch mode). (Tony) ++- Fixed bug #38251 (socket_select() and invalid arguments). (Tony) ++- Fixed bug #38236 (Binary data gets corrupted on multipart/formdata POST). ++ (Ilia) ++- Fixed bug #38234 (Exception in __clone makes memory leak). (Dmitry, Nuno) ++- Fixed bug #38229 (strtotime() does not parse YYYY-MM format). (Ilia) ++- Fixed bug #38224 (session extension can't handle broken cookies). (Ilia) ++- Fixed bug #38220 (Crash on some object operations). (Dmitry) ++- Fixed bug #38217 (ReflectionClass::newInstanceArgs() tries to allocate too ++ much memory). (Tony) ++- Fixed bug #38214 (gif interlace output cannot work). (Pierre) ++- Fixed bug #38213, #37611, #37571 (wddx encoding fails to handle certain ++ characters). (Ilia) ++- Fixed bug #38212 (Segfault on invalid imagecreatefromgd2part() parameters). ++ (Pierre) ++- Fixed bug #38211 (variable name and cookie name match breaks script ++ execution). (Dmitry) ++- Fixed bug #38199 (fclose() unable to close STDOUT and STDERR). (Tony) ++- Fixed bug #38198 (possible crash when COM reports an exception). (Ilia) ++- Fixed bug #38194 (ReflectionClass::isSubclassOf() returns TRUE for the ++ class itself). (Ilia) ++- Fixed bug #38183 (disable_classes=Foobar causes disabled class to be ++ called Foo). (Jani) ++- Fixed bug #38179 (imagecopy from a palette to a truecolor image loose alpha ++ channel) (Pierre) ++- Fixed bug #38173 (Freeing nested cursors causes OCI8 to segfault). (Tony) ++- Fixed bug #38168 (Crash in pdo_pgsql on missing bound parameters). (Ilia) ++- Fixed bug #38161 (oci_bind_by_name() returns garbage when Oracle didn't set ++ the variable). (Tony) ++- Fixed bug #38146 (Cannot use array returned from foo::__get('bar') in write ++ context). (Dmitry) ++- Fixed bug #38132 (ReflectionClass::getStaticProperties() retains \0 in key ++ names). (Ilia) ++- Fixed bug #38125 (undefined reference to spl_dual_it_free_storage). (Marcus) ++- Fixed bug #38112 (corrupted gif segfaults) (Pierre) ++- Fixed bug #38096 (large timeout values ignored on 32bit machines in ++ stream_socket_accept() and stream_socket_client()). (Ilia) ++- Fixed bug #38086 (stream_copy_to_stream() returns 0 when maxlen is bigger ++ than the actual length). (Tony) ++- Fixed bug #38072 (boolean arg for mysqli_autocommit() is always true on ++ Solaris). (Tony) ++- Fixed bug #38067 (Parameters are not decoded from utf-8 when using encoding ++ option). (Dmitry) ++- Fixed bug #38064 (ignored constructor visibility). (Marcus) ++- Fixed bug #38055 (Wrong interpretation of boolean parameters). (Dmitry) ++- Fixed bug #38047 ("file" and "line" sometimes not set in backtrace from ++ inside error handler). (Dmitry) ++- Fixed bug #38019 (segfault extending mysqli class). (Dmitry) ++- Fixed bug #38005 (SoapFault faultstring doesn't follow encoding rules). ++ (Dmitry) ++- Fixed bug #38004 (Parameters in SoapServer are decoded twice). (Dmitry) ++- Fixed bug #38003 (in classes inherited from MySQLi it's possible to call ++ private constructors from invalid context). (Tony) ++- Fixed bug #37987 (invalid return of file_exists() in safe mode). (Ilia) ++- Fixed bug #37947 (zend_ptr_stack reallocation problem). (Dmitry) ++- Fixed bug #37945 (pathinfo() cannot handle argument with special characters ++ like German "Umlaut"). (Mike) ++- Fixed bug #37931 (possible crash in OCI8 after database restart ++ when using persistent connections). (Tony) ++- Fixed bug #37923 (Display constant value in reflection::export). (Johannes) ++- Fixed bug #37920 (compilation problems on z/OS). (Tony) ++- Fixed bug #37870 (pgo_pgsql tries to de-allocate unused statements). ++ (Ilia, ce at netage dot bg) ++- Fixed bug #37864 (file_get_contents() leaks on empty file). (Hannes) ++- Fixed bug #37862 (Integer pointer comparison to numeric value). ++ (bugs-php at thewrittenword dot com) ++- Fixed bug #37846 (wordwrap() wraps incorrectly). (ddk at krasn dot ru, Tony) ++- Fixed bug #37816 (ReflectionProperty does not throw exception when accessing ++ protected attribute). (Marcus) ++- Fixed bug #37811 (define not using toString on objects). (Marcus) ++- Fixed bug #37807 (segmentation fault during SOAP schema import). (Tony) ++- Fixed bug #37806 (weird behavior of object type and comparison). (Marcus) ++- Fixed bug #37780 (memory leak trying to execute a non existing file (CLI)). ++ (Mike) ++- Fixed bug #37779 (empty include_path leads to search for files inside /). ++ (jr at terragate dot net, Ilia) ++- Fixed bug #37747 (strtotime segfaults when given "nextyear"). (Derick) ++- Fixed bug #37720 (merge_php_config scrambles values). ++ (Mike, pumuckel at metropolis dot de) ++- Fixed bug #37709 (Possible crash in PDO::errorCode()). (Ilia) ++- Fixed bug #37707 (clone without assigning leaks memory). (Ilia, Nuno, Dmitri) ++- Fixed bug #37705 (Semaphore constants not available). (Ilia) ++- Fixed bug #37671 (MySQLi extension fails to recognize BIT column). (Ilia) ++- Fixed bug #37667 (Object is not added into array returned by __get). (Marcus) ++- Fixed bug #37635 (parameter of pcntl signal handler is trashed). (Mike) ++- Fixed bug #37632 (Protected method access problem). (Marcus) ++- Fixed bug #37630 (MySQL extensions should link against thread safe client ++ libs if built with ZTS). (Mike) ++- Fixed bug #37620 (mysqli_ssl_set validation is inappropriate). (Georg) ++- Fixed bug #37616 (DATE_RFC822 does not product RFC 822 dates). ++ (Hannes Magnusson, Derick) ++- Fixed bug #37614 (Class name lowercased in error message). (Johannes) ++- Fixed bug #37587 (var without attribute causes segfault). (Marcus) ++- Fixed bug #37586 (Bumped minimum PCRE version to 6.6, needed for recursion ++ limit support). (Ilia) ++- Fixed bug #37581 (oci_bind_array_by_name clobbers input array when using ++ SQLT_AFC, AVC). (Tony) ++- Fixed bug #37569 (WDDX incorrectly encodes high-ascii characters). (Ilia) ++- Fixed bug #37565 (Using reflection::export with simplexml causing a crash). ++ (Marcus) ++- Fixed bug #37564 (AES privacy encryption not possible due to net-snmp 5.2 ++ compatibility issue). (Jani, patch by scott dot moynes+php at gmail dot com) ++- Fixed bug #37563 (array_key_exists performance is poor for &$array). (Ilia) ++- Fixed bug #37558 (timeout functionality doesn't work after a second PHP ++ start-up on the same thread). (p dot desarnaud at wanadoo dot fr) ++- Fixed bug #37531 (oci8 persistent connection corruption). (Tony) ++- Fixed bug #37523 (namespaces added too late, leads to missing xsi:type ++ attributes. Incompatibility with libxml2-2.6.24). (Dmitry) ++- Fixed bug #37514 (strtotime doesn't assume year correctly). (Derick) ++- Fixed bug #37510 (session_regenerate_id changes session_id() even on ++ failure). (Hannes) ++- Fixed bug #37505 (touch() truncates large files). (Ilia) ++- Fixed bug #37499 (CLI segmentation faults during cleanup with sybase-ct ++ extension enabled). (Tony) ++- Fixed bug #37496 (FastCGI output buffer overrun). (Piotr, Dmitry) ++- Fixed bug #37487 (oci_fetch_array() array-type should always default to ++ OCI_BOTH). (Tony) ++- Fixed bug #37457 (Crash when an exception is thrown in accept() method of ++ FilterIterator). (Marcus) ++- Fixed bug #37456 (DOMElement->setAttribute() loops forever). (Rob) ++- Fixed bug #37445 (Fixed crash in pdo_mysql resulting from premature object ++ destruction). (Ilia) ++- Fixed bug #37428 (PHP crashes on windows if there are start-up errors and ++ event log is used for logging them). (Edin) ++- Fixed bug #37418 (tidy module crashes on shutdown). (Tony) ++- Fixed bug #37416 (iterator_to_array() hides exceptions thrown in rewind() ++ method). (Tony) ++- Fixed bug #37413 (Rejected versions of flex that don't work). (Ilia) ++- Fixed bug #37395 (recursive mkdir() fails to create nonexistent directories ++ in root dir). (Tony) ++- Fixed bug #37394 (substr_compare() returns an error when offset equals ++ string length). (Ilia) ++- Fixed bug #37392 (Unnecessary call to OCITransRollback() at the end of ++ request). (Tony) ++- Fixed bug #37376 (fastcgi.c compile fail with gcc 2.95.4). (Ilia) ++- Fixed bug #37368 (Incorrect timestamp returned for strtotime()). (Derick) ++- Fixed bug #37363 (PDO_MYSQL does not build if no other mysql extension is ++ enabled). (Mike) ++- Fixed bug #37348 (make PEAR install ignore open_basedir). (Ilia) ++- Fixed bug #37341 ($_SERVER in included file is shortened to two entries, ++ if $_ENV gets used). (Dmitry) ++- Fixed bug #37313 (sigemptyset() used without including ). ++ (jdolecek) ++- Fixed bug #37306 (max_execution_time = max_input_time). (Dmitry) ++- Fixed bug #37278 (SOAP not respecting uri in __soapCall). (Dmitry) ++- Fixed bug #37265 (Added missing safe_mode & open_basedir checks to ++ imap_body()). (Ilia) ++- Fixed bug #37262 (var_export() does not escape \0 character). (Ilia) ++- Fixed bug #37256 (php-fastcgi doesn't handle connection abort). (Dmitry) ++- Fixed bug #37244 (Added strict flag to base64_decode() that enforces ++ RFC3548 compliance). (Ilia) ++- Fixed bug #37144 (PHP crashes trying to assign into property of dead object). ++ (Dmitry) ++- Fixed bug #36949 (invalid internal mysqli objects dtor). (Mike) ++- Implement #36732 (req/x509 extensions support for openssl_csr_new and ++ openssl_csr_sign) (ben at psc dot edu, Pierre) ++- Fixed bug #36759 (Objects destructors are invoked in wrong order when script ++ is finished). (Dmitry) ++- Fixed bug #36681 (pdo_pgsql driver incorrectly ignored some errors). ++ (Wez, Ilia) ++- Fixed bug #36630 (umask not reset at the end of the request). (Ilia) ++- Fixed bug #36515 (Unlinking buckets from non-existent brigades). (Sara) ++- Fixed bug #35973 (Error ORA-24806 occurs when trying to fetch a NCLOB ++ field). (Tony) ++- Fixed bug #35886 (file_get_contents() fails with some combinations of ++ offset & maxlen). (Nuno) ++- Fixed bug #35512 (Lack of read permission on main script results in ++ E_WARNING rather then E_ERROR). (Ilia) ++- Fixed bug #34180 (--with-curlwrappers causes PHP to disregard some HTTP ++ stream context options). (Mike) ++- Fixed bug #34066 (recursive array_walk causes segfault). (Tony) ++- Fixed bug #34065 (throw in foreach causes memory leaks). (Dmitry) ++- Fixed bug #34005 (oci_password_change() fails). ++ (pholdaway at technocom-wireless dot com, Tony) ++- Fixed bug #33895 (Missing math constants). (Hannes) ++- Fixed bug #33770 (https:// or ftps:// do not work when --with-curlwrappers ++ is used and ssl certificate is not verifiable). (Ilia) ++- Fixed bug #29538 (number_format and problem with 0). (Matt Wilmas) ++- Implement #28382 (openssl_x509_parse() extensions support) (Pierre) ++- Fixed PECL bug #9061 (oci8 might reuse wrong persistent connection). (Tony) ++- Fixed PECL bug #8816 (issue in php_oci_statement_fetch with more than one ++ piecewise column) (jeff at badtz-maru dot com, Tony) ++- Fixed PECL bug #8112 (OCI8 persistent connections misbehave when Apache ++ process times out). (Tony) ++- Fixed PECL bug #7755 (error selecting DOUBLE fields with PDO_ODBC). ++ ("slaws", Wez) ++ ++ ++04 May 2006, PHP 5.1.4 ++- Added "capture_peer_cert" and "capture_peer_cert_chain" context options ++ for SSL streams. (Wez). ++- Added PDO::PARAM_EVT_* family of constants. (Sara) ++- Fixed possible crash in highlight_string(). (Dmitry) ++- Fixed bug #37291 (FastCGI no longer works with isapi_fcgi.dll). (Dmitry) ++- Fixed bug #37277 (cloning Dom Documents or Nodes does not work). (Rob) ++- Fixed bug #37276 (problems with $_POST array). (Dmitry) ++- Fixed bug #36632 (bad error reporting for pdo_odbc exec UPDATE). (Wez). ++- Fixed bug #35552 (crash when pdo_odbc prepare fails). (Wez). ++ ++28 Apr 2006, PHP 5.1.3 ++- Updated bundled PCRE library to version 6.6. (Andrei) ++- Moved extensions to PECL: ++ . ext/msession (Derick) ++- Reimplemented FastCGI interface. (Dmitry) ++- Improved SPL: (Marcus) ++ - Fixed issues with not/double calling of constructors of SPL iterators. ++ - Fixed issues with info-class/file-class in SPL directory handling classes. ++ - Fixed ArrayIterator::seek(). ++ - Added SimpleXMLIterator::count(). ++ - Dropped erroneous RecursiveDirectoryIterator::getSubPathInfo(). ++- Improved SimpleXML: (Marcus, Rob) ++ . Added SimpleXMLElement::getName() to retrieve name of element. ++ . Added ability to create elements on the fly. ++ . Added addChild() method for element creation supporting namespaces. ++ . Added addAttribute() method for attribute creation supporting namespaces. ++ . Added ability to delete specific elements and attributes by offset. ++- Improved Reflection API: (Marcus) ++ . Added ReflectionClass::newInstanceArgs($args). ++ . Added ability to analyze extension dependency. ++ . Added ReflectionFunction::isDeprecated() and constant IS_DEPRECATED. ++ . Added ReflectionParameter::getDeclaringClass(). ++ . Changed reflection constants to be prefixed with IS_. (Johannes) ++- Improved cURL extension: (Ilia) ++ . Added curl_setopt_array() function that allows setting of multiple ++ options via an associated array. ++ . Added the ability to retrieve the request message sent to the server. ++- Improved GD extension: (Pierre) ++ . Added a weak/tolerant mode to the JPEG loader. ++ . Added filtering mode option to imagepng() to allow reducing file size. ++ . Fixed imagecolorallocate() and imagecolorallocatelapha() to return FALSE ++ on error. ++- Changed get_headers() to retrieve headers also from non-200 responses. ++ (Ilia) ++- Changed get_headers() to use the default context. (Ilia) ++- Added lchown() and lchgrp() to change user/group ownership of symlinks. ++ (Derick) ++- Added support for exif date format in strtotime(). (Derick) ++- Added a check for special characters in the session name. (Ilia) ++- Added "consumed" stream filter. (Marcus) ++- Added new mysqli constants for BIT and NEW_DECIMAL field types: ++ MYSQLI_TYPE_NEWDECIMAL and MYSQLI_TYPE_BIT. FR #36007. (Georg) ++- Added imap_savebody() that allows message body to be written to a ++ file. (Mike) ++- Added overflow checks to wordwrap() function. (Ilia) ++- Added support for BINARY_DOUBLE and BINARY_FLOAT to PDO_OCI and OCI8 ++ (also fixes bug #36764). (Tony) ++- Eliminated run-time constant fetching for TRUE, FALSE and NULL. (Dmitry) ++- Removed the E_STRICT deprecation notice from "var". (Ilia) ++- Fixed reading stream filters never notified about EOF. (Mike) ++- Fixed tempnam() 2nd parameter to be checked against path components. (Ilia) ++- Fixed a bug that would not fill in the fifth argument to preg_replace() ++ properly, if the variable was not declared previously. (Andrei) ++- Fixed safe_mode check for source argument of the copy() function. (Ilia) ++- Fixed mysqli bigint conversion under Windows (Georg) ++- Fixed XSS inside phpinfo() with long inputs. (Ilia) ++- Fixed Apache2 SAPIs header handler modifying header strings. (Mike) ++- Fixed 'auto_globals_jit' to work together with 'register_argc_argv'. (Dmitry) ++- Fixed offset/length parameter validation in substr_compare() function. (Ilia) ++- Fixed debug_zval_dump() to support private and protected members. (Dmitry) ++- Fixed SoapFault::getMessage(). (Dmitry) ++- Fixed issue with iconv_mime_decode where the "encoding" would only allow ++ upper case specifiers. (Derick) ++- Fixed tiger hash algorithm generating wrong results on big endian platforms. ++ (Mike) ++- Fixed crash with DOMImplementation::createDocumentType("name:"). (Mike) ++- Fixed bug #37205 (Serving binary content/images fails with "comm with server ++ aborted" FastCGI err). (Dmitry) ++- Fixed bug #37192 (cc may complain about non-constant initializers in ++ hash_adler.c). (Mike) ++- Fixed bug #37191 (chmod takes off sticky bit when safe_mode is On). (Tony) ++- Fixed bug #37167 (PDO segfaults when throwing exception from the ++ fetch handler). (Tony) ++- Fixed bug #37162 (wddx does not build as a shared extension). ++ (jdolecek at NetBSD dot org, Ilia) ++- Fixed bug #37158 (fread behavior changes after calling ++ stream_wrapper_register). (Wez) ++- Fixed bug #37138 (__autoload tries to load callback'ed self and parent). ++ (Dmitry) ++- Fixed bug #37103 (libmbfl headers not installed). (Jani) ++- Fixed bug #37062 (compile failure on ARM architecture). (Tony) ++- Fixed bug #37061 (curl_exec() doesn't zero-terminate binary strings). (Tony) ++- Fixed bug #37060 (Type of retval of Countable::count() is not checked). ++ (Johannes) ++- Fixed bug #37059 (oci_bind_by_name() doesn't support RAW and LONG RAW ++ fields). (Tony) ++- Fixed bug #37057 (xmlrpc_decode() may produce arrays with numeric strings, ++ which are unaccessible). (Tony) ++- Fixed bug #37055 (incorrect reference counting for persistent OCI8 ++ connections). (Tony) ++- Fixed bug #37054 (SoapClient Error Fetching http headers). (Dmitry) ++- Fixed bug #37053 (html_errors with internal classes produces wrong links). ++ (Tony) ++- Fixed bug #37046 (foreach breaks static scope). (Dmitry) ++- Fixed bug #37045 (Fixed check for special chars for http redirects). (Ilia) ++- Fixed bug #37017 (strtotime fails before 13:00:00 with some time zones ++ identifiers). (Derick) ++- Fixed bug #37002 (Have to quote literals in INI when concatenating with ++ vars). (Dmitry)z ++- Fixed bug #36988 (mktime freezes on long numbers). (Derick) ++- Fixed bug #36981 (SplFileObject->fgets() ignores max_length). (Tony) ++- Fixed bug #36957 (serialize() does not handle recursion). (Ilia) ++- Fixed bug #36944 (strncmp & strncasecmp do not return false on negative ++ string length). (Tony) ++- Fixed bug #36941 (ArrayIterator does not clone itself). (Marcus) ++- Fixed bug #36934 (OCILob->read() doesn't move internal pointer when ++ reading 0's). (Tony) ++- Fixed bug #36908 (wsdl default value overrides value in soap request). ++ (Dmitry) ++- Fixed bug #36898 (__set() leaks in classes extending internal ones). ++ (Tony, Dmitry) ++- Fixed bug #36886 (User filters can leak buckets in some situations). (Ilia) ++- Fixed bug #36878 (error messages are printed even though an exception has ++ been thrown). (Tony) ++- Fixed bug #36875 (is_*() functions do not account for open_basedir). (Ilia) ++- Fixed bug #36872 (session_destroy() fails after call to ++ session_regenerate_id(true)). (Ilia) ++- Fixed bug #36869 (memory leak in output buffering when using chunked ++ output). (Tony) ++- Fixed bug #36859 (DOMElement crashes when calling __construct when ++ cloning). (Tony) ++- Fixed bug #36857 (Added support for partial content fetching to the ++ HTTP streams wrapper). (Ilia) ++- Fixed bug #36851 (Documentation and code discrepancies for NULL ++ data in oci_fetch_*() functions). (Tony) ++- Fixed bug #36825 (Exceptions thrown in ArrayObject::offsetGet cause ++ segfault). (Tony) ++- Fixed bug #36820 (Privileged connection with an Oracle password file ++ fails). (Tony) ++- Fixed bug #36809 (__FILE__ behavior changed). (Dmitry) ++- Fixed bug #36808 (syslog ident becomes garbage between requests). (Tony) ++- Fixed bug #36802 (mysqli_set_charset() crash with a non-open connection). ++ (Ilia) ++- Fixed bug #36756 (DOMDocument::removeChild corrupts node). (Rob) ++- Fixed bug #36749 (SOAP: 'Error Fetching http body' when using HTTP Proxy). ++ (Dmitry) ++- Fixed bug #36745 (No error message when load data local file isn't found). ++ (Georg) ++- Fixed bug #36743 (In a class extending XMLReader array properties are not ++ writable). (Tony) ++- Fixed bug #36727 (segfault in pdo_pgsql bindValue() when no parameters are ++ defined). (Tony) ++- Fixed bug #36721 (The SoapServer is not able to send a header that it didn't ++ receive). (Dmitry) ++- Fixed bug #36697 (Transparency is lost when using imagecreatetruecolor). ++ (Pierre) ++- Fixed bug #36689 (Removed arbitrary limit on the length of syslog messages). ++ (Ilia) ++- Fixed bug #36656 (http_build_query generates invalid URIs due to use of ++ square brackets). (Mike) ++- Fixed bug #36638 (strtotime() returns false when 2nd argument < 1). (Derick) ++- Fixed bug #36629 (SoapServer::handle() exits on SOAP faults). (Dmitry) ++- Fixed bug #36625 (pg_trace() does not work). (iakio at mono-space dot net) ++- Fixed bug #36614 (Segfault when using Soap). (Dmitry) ++- Fixed bug #36611 (assignment to SimpleXML object attribute changes argument ++ type to string). (Tony) ++- Fixed bug #36606 (pg_query_params() changes arguments type to string). (Tony) ++- Fixed bug #36599 (DATE_W3C format constant incorrect). (Derick) ++- Fixed bug #36575 (SOAP: Incorrect complex type instantiation with ++ hierarchies). (Dmitry) ++- Fixed bug #36572 (Added PDO::MYSQL_ATTR_DIRECT_QUERY constant that should ++ be set when executing internal queries like "show master status" via MySQL). ++ (Ilia) ++- Fixed bug #36568 (memory_limit setting on win32 has no effect). (Dmitry) ++- Fixed bug #36513 (comment will be outputted in last line). (Dmitry) ++- Fixed bug #36510 (strtotime() fails to parse date strings with tabs). ++ (Ilia, Derick) ++- Fixed bug #36459 (Incorrect adding PHPSESSID to links, which contains \r\n). ++ (Ilia) ++- Fixed bug #36458 (sleep() accepts negative values). (Ilia) ++- Fixed bug #36436 (DBA problem with Berkeley DB4). (Marcus) ++- Fixed bug #36434 (Improper resolution of declaring class name of an ++ inherited property). (Ilia) ++- Fixed bug #36420 (segfault when access result->num_rows after calling ++ result->close()). (Ilia,Tony) ++- Fixed bug #36403 (oci_execute() no longer supports OCI_DESCRIBE_ONLY). (Tony) ++- Fixed bug #36400 (Custom 5xx error does not return correct HTTP response error ++ code). (Tony) ++- Fixed bug #36396 (strtotime() fails to parse dates in dd-mm-yyyy format). ++ (Derick) ++- Fixed bug #36388 (ext/soap crashes when throwing exception and session ++ persistence). (David) ++- Fixed bug #36382 (PDO/PgSQL's getColumnMeta() crashes). (Derick) ++- Fixed bug #36359 (splFileObject::fwrite() doesn't write when no data ++ length specified). (Tony) ++- Fixed bug #36351 (parse_url() does not parse numeric paths properly). (Ilia) ++- Fixed bug #36345 (PDO/MySQL problem loading BLOB over 1MB). (Ilia) ++- Fixed bug #36337 (ReflectionProperty fails to return correct visibility). ++ (Ilia) ++- Fixed bug #36334 (Added missing documentation about realpath cache INI ++ settings). (Ilia) ++- Fixed bug #36308 (ReflectionProperty::getDocComment() does not reflect ++ extended class commentary). (Ilia) ++- Fixed bug #36306 (crc32() differ on 32-bit and 64-bit platforms) ++ (anight@eyelinkmedia dot com, Pierre) ++- Fixed bug #36303 (foreach on error_zval produces segfault). (Dmitry) ++- Fixed bug #36295 (typo in SplFileObject::flock() parameter name). (Tony) ++- Fixed bug #36287 (Segfault with SplFileInfo conversion). (Marcus) ++- Fixed bug #36283 (SOAPClient Compression Broken). (Dmitry) ++- Fixed bug #36268 (Object destructors called even after fatal errors). (Dmitry) ++- Fixed bug #36258 (SplFileObject::getPath() may lead to segfault). (Tony) ++- Fixed bug #36250 (PHP causes ORA-07445 core dump in Oracle server 9.2.x). ++ (Tony) ++- Fixed bug #36242 (Possible memory corruption in stream_select()). (Tony) ++- Fixed bug #36235 (ocicolumnname returns false before a successful fetch). ++ (Tony) ++- Fixed bug #36226 (Inconsistent handling when passing potential arrays). ++ (Dmitry) ++- Fixed bug #36224 (date(DATE_ATOM) gives wrong results). ++ (Derick, Hannes Magnusson) ++- Fixed bug #36222 (errorInfo in PDOException is always NULL). (Ilia) ++- Fixed bug #36208 (symbol namespace conflicts using bundled gd). (Jakub Moc) ++- Fixed bug #36205 (Memory leaks on duplicate cookies). (Dmitry) ++- Fixed bug #36185 (str_rot13() crash on non-string parameter). (Pierre) ++- Fixed bug #36176 (PDO_PGSQL - PDO::exec() does not return number of rows ++ affected by the operation). (Ilia) ++- Fixed bug #36158 (SIGTERM is not handled correctly when running as a ++ FastCGI server). (Dmitry) ++- Fixed bug #36152 (problems with curl+ssl and pgsql+ssl in same PHP). (Mike) ++- Fixed bug #36148 (unpack("H*hex", $data) is adding an extra character to ++ the end of the string). (Ilia) ++- Fixed bug #36134 (DirectoryIterator constructor failed to detect empty ++ directory names). (Ilia) ++- Fixed bug #36113 (Reading records of unsupported type causes segfault). ++ (Tony) ++- Fixed bug #36096 (oci_result() returns garbage after oci_fetch() failed). ++ (Tony) ++- Fixed bug #36083 (SoapClient waits for responses on one-way operations). ++ (Dmitry) ++- Fixed bug #36071 (Engine Crash related with 'clone'). (Dmitry) ++- Fixed bug #36055 (possible OCI8 crash in multi-threaded environment). (Tony) ++- Fixed bug #36046 (parse_ini_file() miscounts lines in multi-line values). ++ (Ilia) ++- Fixed bug #36038 (ext/hash compile failure on Mac OSX). (Tony) ++- Fixed bug #36037 (heredoc adds extra line number). (Dmitry) ++- Fixed bug #36016 (realpath cache memleaks). (Dmitry, Nuno) ++- Fixed bug #36011 (Strict errormsg wrong for call_user_func() and the likes). ++ (Marcus) ++- Fixed bug #36010 (Segfault when re-creating and re-executing statements with ++ bound parameters). (Tony) ++- Fixed bug #36006 (Problem with $this in __destruct()). (Dmitry) ++- Fixed bug #35999 (recursive mkdir() does not work with relative path ++ like "foo/bar"). (Tony) ++- Fixed bug #35998 (SplFileInfo::getPathname() returns unix style filenames ++ in win32). (Marcus) ++- Fixed bug #35988 (Unknown persistent list entry type in module shutdown). ++ (Dmitry) ++- Fixed bug #35954 (Fatal com_exception casting object). (Rob) ++- Fixed bug #35900 (stream_select() should warning when tv_sec is negative). ++ (Ilia) ++- Fixed bug #35785 (SimpleXML causes memory read error zend engine). (Marcus) ++- Fixed bug #34272 (empty array onto COM object blows up). (Rob) ++- Fixed bug #33292 (apache_get_modules() crashes on Windows). (Edin) ++- Fixed bug #29476 (sqlite_fetch_column_types() locks the database forever). ++ (Ilia) ++ ++12 Jan 2006, PHP 5.1.2 ++- Updated libsqlite in ext/sqlite to 2.8.17. (Ilia) ++- Updated libsqlite in ext/pdo_sqlite to 3.2.8. (Ilia) ++- Updated to libxml2-2.6.22 and libxslt-1.1.15 in the win32 bundle. (Rob) ++- Added new extensions: (Ilia, Wez) ++ . XMLWriter ++ . Hash ++- Added PNG compression support to GD extension. (Pierre) ++- Added reflection constants as class constants. (Johannes) ++- Added --enable-gcov configure option to enable C-level code coverage. ++ (John, Jani, Ilia, Marcus) ++- Added missing support for 'B' format identifier to date() function. (Ilia) ++- Changed reflection to be an extension. (Marcus) ++- Improved SPL extension: (Marcus) ++ . Added class SplFileInfo as root class for DirectoryIterator and ++ SplFileObject ++ . Added SplTempFileObject ++- Improved SimpleXML extension: (Marcus) ++ . Fixed memleaks ++ . Fixed var_dump() ++ . Fixed isset/empty/(bool) behavior ++ . Fixed iterator edge cases ++ . Added methods getNamespaces(), getDocNamespaces() ++- Upgraded pear to version 1.4.6. (Greg) ++- Added constants for libxslt and libexslt versions: LIBXSLT_VERSION, ++ LIBXSLT_DOTTED_VERSION, LIBEXSLT_VERSION and LIBEXSLT_DOTTED_VERSION. (Pierre) ++- Fixed possible crash in apache_getenv()/apache_setenv() on invalid parameters. ++ (Ilia) ++- Changed errors to warnings in imagecolormatch(). (Pierre) ++- Fixed segfault/leak in imagecolormatch(). (Pierre) ++- Fixed small leak in mysqli_stmt_fetch() when bound variable was empty string. ++ (Andrey) ++- Fixed prepared statement name conflict handling in PDO_PGSQL. (Thies, Ilia) ++- Fixed memory corruption when PDO::FETCH_LAZY mode is being used. (Ilia) ++- Fixed possible leaks in imagecreatefromstring() with invalid data. (Pierre) ++- Fixed possible memory corruption inside mb_strcut(). (Ilia) ++- Fixed possible header injection by limiting each header to a single line. ++ (Ilia) ++- Fixed possible XSS inside error reporting functionality. (Ilia) ++- Fixed many bugs in OCI8. (Tony) ++- Fixed crash and leak in mysqli when using 4.1.x client libraries and ++ connecting to 5.x server. (Andrey) ++- Fixed bug #35916 (Duplicate calls to stream_bucket_append() lead to a crash). ++ (Ilia) ++- Fixed bug #35908 (curl extension uses undefined GCRY_THREAD_OPTIONS_USER). ++ (Ilia) ++- Fixed bug #35907 (PDO_OCI uses hardcoded lib path $ORACLE_HOME/lib). (Tony) ++- Fixed bug #35887 (wddx_deserialize not parsing dateTime fields properly). ++ (Derick) ++- Fixed bug #35885 (strtotime("NOW") no longer works). (Derick) ++- Fixed bug #35821 (array_map() segfaults when exception is throwed from ++ the callback). (Tony) ++- Fixed bug #35817 (unpack() does not decode odd number of hexadecimal values). ++ (Ilia) ++- Fixed bug #35797 (segfault on PDOStatement::execute() with ++ zend.ze1_compatibility_mode = On). (Tony, Ilia) ++- Fixed bug #35781 (stream_filter_append() can cause segfault). (Tony) ++- Fixed bug #35760 (sybase_ct doesn't compile on Solaris using old gcc). (Tony) ++- Fixed bug #35759 (mysqli_stmt_bind_result() makes huge allocation when ++ column empty). (Andrey) ++- Fixed bug #35751 (using date with a timestamp makes httpd segfault). (Derick) ++- Fixed bug #35740 (memory leak when including a directory). (Tony) ++- Fixed bug #35730 (ext/mssql + freetds: Use correct character encoding ++ and allow setting it). (Frank) ++- Fixed bug #35723 (xmlrpc_introspection.c fails compile per C99 std). (Jani) ++- Fixed bug #35720 (A final constructor can be overwritten). (Marcus) ++- Fixed bug #35713 (getopt() returns array with numeric strings when passed ++ options like '-1'). (Tony) ++- Fixed bug #35705 (strtotime() fails to parse soap date format without TZ). ++ (Ilia) ++- Fixed bug #35699 (date() can't handle leap years before 1970). (Derick) ++- Fixed bug #35694 (Improved error message for invalid fetch mode). (Ilia) ++- Fixed bug #35692 (iconv_mime_decode() segmentation fault; with libiconv ++ only). (Tony) ++- Fixed bug #35690 (pack() tries to allocate huge memory block when packing ++ float values to strings). (Tony) ++- Fixed bug #35669 (imap_mail_compose() crashes with ++ multipart-multiboundary-email). (Ilia) ++- Fixed bug #35660 (AIX TZ variable format not understood, yields UTC ++ timezone). (Derick) ++- Fixed bug #35655 (whitespace following end of heredoc is lost). (Ilia) ++- Fixed bug #35630 (strtotime() crashes on certain relative identifiers). ++ (Ilia) ++- Fixed bug #35629 (crash in http:// wrapper on multiple redirects). (Ilia) ++- Fixed bug #35624 (strtotime() does not handle 3 character weekdays). (Ilia) ++- Fixed bug #35612 (iis6 Access Violation crash). (Dmitry, alacn.uhahaa) ++- Fixed bug #35594 (Multiple calls to getopt() may result in a crash). ++ (rabbitt at gmail dot com, Ilia) ++- Fixed bug #35571 (Fixed crash in Apache 2 SAPI when more then one php ++ script is loaded via SSI include). (Ilia) ++- Fixed bug #35570 (segfault when re-using soap client object). (Dmitry) ++- Fixed bug #35558 (mktime() interpreting 3 digit years incorrectly). (Ilia) ++- Fixed bug #35543 (php crash when calling non existing method of a class ++ that extends PDO). (Tony) ++- Fixed bug #35539 (typo in error message for ErrorException). (Tony) ++- FIxed bug #35536 (mysql_field_type() doesn't handle NEWDECIMAL). (Tony) ++- Fixed bug #35517 (mysql_stmt_fetch returns NULL on data truncation). (Georg) ++- Fixed bug #35509 (string constant as array key has different behavior inside ++ object). (Dmitry) ++- Fixed bug #35508 (PDO fails when unknown fetch mode specified). (Tony) ++- Fixed bug #35499 (strtotime() does not handle whitespace around the date ++ string). (Ilia) ++- Fixed bug #35496 (Crash in mcrypt_generic()/mdecrypt_generic() without ++ proper init). (Ilia) ++- Fixed bug #35490 (socket_sendto() unable to handle IPv6 addresses). (Tony) ++- Fixed bug #35461 (Ming extension fails to compile with ming 0.3beta1). (Jani) ++- Fixed bug #35437 (Segfault or Invalid Opcode 137/1/4). (Dmitry) ++- Fixed bug #35470 (Assigning global using variable name from array doesn't ++ function). (Dmitry) ++- Fixed bug #35456 (+ 1 [time unit] format did not work). (Ilia) ++- Fixed bug #35447 (xml_parse_into_struct() chokes on the UTF-8 BOM). (Rob) ++- Fixed bug #35431 (PDO crashes when using LAZY fetch with fetchAll). (Wez) ++- Fixed bug #35430 (PDO crashes on incorrect FETCH_FUNC use). (Tony) ++- Fixed bug #35427 (str_word_count() handles '-' incorrectly). (Ilia) ++- Fixed bug #35425 (idate() function ignores timezone settings). (Ilia) ++- Fixed bug #35422 (strtotime() does not parse times with UTC as timezone). ++ (Ilia) ++- Fixed bug #35414 (strtotime() no longer works with ordinal suffix). (Ilia) ++- Fixed bug #35410 (wddx_deserialize() doesn't handle large ints as keys ++ properly). (Ilia) ++- Fixed bug #35409 (undefined reference to 'rl_completion_matches'). (Jani) ++- Fixed bug #35399 (Since fix of bug #35273 SOAP decoding of ++ soapenc:base64binary fails). (Dmitry) ++- Fixed bug #35393 (changing static protected members from outside the class, ++ one more reference issue). (Dmitry) ++- Fixed bug #35381 (ssl library is not initialized properly). (Alan) ++- Fixed bug #35377 (PDO_SQLITE: undefined reference to "fdatasync"). ++ (Nuno, Jani) ++- Fixed bug #35373 (HP-UX "alias not allowed in this configuration"). (Dmitry) ++- Fixed bug #35288 (iconv() function defined as libiconv()). (Nuno) ++- Fixed bug #35103 (mysqli handles bad unsigned (big)int incorrectly).(Andrey) ++- Fixed bug #35062 (socket_read() produces warnings on non blocking sockets). ++ (Nuno, Ilia) ++- Fixed bug #35028 (SimpleXML object fails FALSE test). (Marcus) ++- Fixed bug #34729 (Crash in ZTS mode under Apache). (Dmitry, Zeev) ++- Fixed bug #34429 (Output buffering cannot be turned off with FastCGI). ++ (Dmitry, Ilya) ++- Fixed bug #34359 (Possible crash inside fopen http wrapper). (Ilia,Sara,Nuno) ++- Fixed bug #33789 (Many Problems with SunFuncs). (Derick) ++- Fixed bug #33671 (sun_rise and sun_set don't return a GMT timestamp if one ++ passes an offset). (Derick) ++- Fixed bug #32820 (date_sunrise and date_sunset don't handle GMT offset ++ well). (Derick) ++- Fixed bug #31347 (is_dir and is_file (incorrectly) return true for any string ++ greater then 255 characters). (Nuno,Ilia) ++- Fixed bug #30937 (date_sunrise() & date_sunset() don't handle endless ++ day/night at high latitudes). (Derick) ++- Fixed bug #30760 (Remove MessageBox on win32 for E_CORE errors if ++ display_startup_error is off). (Ilia) ++- Fixed bug #29955 (mb_strtoupper() / lower() broken with Turkish encoding). ++ (Rui) ++- Fixed bug #28899 (mb_substr() and substr() behave differently when ++ "mbstring.func_overload" is enabled). (Rui) ++- Fixed bug #27678 (number_format() crashes with large numbers). (Marcus) ++ ++28 Nov 2005, PHP 5.1.1 ++- Disabled native date class to prevent pear::date conflict. (Ilia) ++- Changed reflection constants be both PHP and class constants. (Johannes) ++- Added an additional field $frame['object'] to the result array of ++ debug_backtrace() that contains a reference to the respective object when the ++ frame was called from an object. (Sebastian) ++- Fixed bug #35423 (RecursiveDirectoryIterator doesnt appear to recurse with ++ RecursiveFilterIterator). (Marcus) ++- Fixed bug #35413 (Removed -dev flag from Zend Engine version). (Ilia) ++- Fixed bug #35411 (Regression with \{$ handling). (Ilia) ++- Fixed bug #35406 (eval hangs when evall'ed code ends with comment w/o ++ newline). (Marcus) ++- Fixed bug #35391 (pdo_mysql::exec does not return number of affected rows). ++ (Tony) ++- Fixed bug #35382 (Comment in end of file produces fatal error). (Ilia) ++- Fixed bug #35360 (exceptions in interactive mode (php -a) may cause crash). ++ (Dmitry) ++- Fixed bug #35358 (Incorrect error messages for PDO class constants). (Ilia) ++- Fixed bug #35338 (pdo_pgsql does not handle binary bound params). (Wez) ++- Fixed bug #35316 (Application exception trying to create COM object). (Rob) ++- Fixed bug #35170 (PHP_AUTH_DIGEST differs under Apache 1.x and 2.x). (Ilia) ++ ++24 Nov 2005, PHP 5.1 ++- Added support for class constants and static members for internal classes. ++ (Dmitry, Michael Wallner) ++- Added "new_link" parameter to mssql_connect() (Bug #34369). (Frank) ++- Added missing safe_mode checks for image* functions and cURL. (Ilia) ++- Added missing safe_mode/open_basedir checks for file uploads. (Ilia) ++- Added PDO_MYSQL_ATTR_USE_BUFFERED_QUERY parameter for pdo_mysql. (Ilia) ++- Added date_timezone_set() function to set the timezone that the date ++ function will use. (Derick) ++- Added pg_fetch_all_columns() function to fetch all values of a column from a ++ result cursor. (Ilia) ++- Added support for LOCK_EX flag for file_put_contents(). (Ilia) ++- Added bindto socket context option. (Ilia) ++- Added offset parameter to the stream_copy_to_stream() function. (Ilia) ++- Added offset & length parameters to substr_count() function. (Ilia) ++- Added man pages for "phpize" and "php-config" scripts. (Jakub Vrana) ++- Added support for .cc files in extensions. (Brian) ++- Added PHP_INT_MAX and PHP_INT_SIZE as predefined constants. (Andrey) ++- Added user opcode API that allow overloading of opcode handlers. (Dmitry) ++- Added an optional remove old session parameter to session_regenerate_id(). ++ (Ilia) ++- Added array type hinting. (Dmitry) ++- Added the tidy_get_opt_doc() function to return documentation for ++ configuration options in tidy. (Patch by: nlopess@php.net) ++- Added support for .cc files in extensions. (Brian) ++- Added imageconvolution() function which can be used to apply a custom 3x3 ++ matrix convolution to an image. (Pierre) ++- Added optional first parameter to XsltProcessor::registerPHPFunctions to ++ only allow certain functions to be called from XSLT. (Christian) ++- Added the ability to override the autotools executables used by the ++ buildconf script via the PHP_AUTOCONF and PHP_AUTOHEADER environmental ++ variables. (Jon) ++- Added several new functions to support the PostgreSQL v3 protocol introduced ++ in PostgreSQL 7.4. (Christopher) ++ . pg_transaction_status() - in-transaction status of a database connection. ++ . pg_query_params() - execution of parameterized queries. ++ . pg_prepare() - prepare named queries. ++ . pg_execute() - execution of named prepared queries. ++ . pg_send_query_params() - async equivalent of pg_query_params(). ++ . pg_send_prepare() - async equivalent of pg_prepare(). ++ . pg_send_execute() - async equivalent of pg_execute(). ++ . pg_result_error_field() - highly detailed error information, most ++ importantly ++ the SQLSTATE error code. ++ . pg_set_error_verbosity() - set verbosity of errors. ++- Added optional fifth parameter "count" to preg_replace_callback() and ++ preg_replace() to count the number of replacements made. FR #32275. (Andrey) ++- Added optional third parameter "charlist" to str_word_count() which contains ++ characters to be considered as word part. FR #31560. (Andrey, Ilia) ++- Added interface Serializable. (Stanislav, Marcus) ++- Added pg_field_type_oid() PostgreSQL function. (mauroi at digbang dot com) ++- Added zend_declare_property_...() and zend_update_property_...() API ++ functions for bool, double and binary safe strings. (Hartmut) ++- Added possibility to access INI variables from within .ini file. (Andrei) ++- Added variable $_SERVER['REQUEST_TIME'] containing request start time. ++ (Ilia) ++- Added optional float parameter to gettimeofday(). (Ilia) ++- Added apache_reset_timeout() Apache1 function. (Rasmus) ++- Added sqlite_fetch_column_types() 3rd argument for arrays. (Ilia) ++- Added optional offset parameter to stream_get_contents() and ++ file_get_contents(). (Ilia) ++- Added optional maxlen parameter to file_get_contents(). (Ilia) ++- Added SAPI hook to get the current request time. (Rasmus) ++- Added new functions: ++ . array_diff_key() (Andrey) ++ . array_diff_ukey() (Andrey) ++ . array_intersect_key() (Christiano Duarte) ++ . array_intersect_ukey() (Christiano Duarte) ++ . array_product() (Andrey) ++ . DomDocumentFragment::appendXML() (Christian) ++ . fputcsv() (David Sklar) ++ . htmlspecialchars_decode() (Ilia) ++ . inet_pton() (Sara) ++ . inet_ntop() (Sara) ++ . mysqli::client_info property (Georg) ++ . posix_access() (Magnus) ++ . posix_mknod() (Magnus) ++ . SimpleXMLElement::registerXPathNamespace() (Christian) ++ . stream_context_get_default() (Wez) ++ . stream_socket_enable_crypto() (Wez) ++ . stream_wrapper_unregister() (Sara) ++ . stream_wrapper_restore() (Sara) ++ . stream_filter_remove() (Sara) ++ . time_sleep_until() (Ilia) ++- Added DomDocument::$recover property for parsing not well-formed XML ++ Documents. (Christian) ++- Added Cursor support for MySQL 5.0.x in mysqli (Georg) ++- Added proxy support to ftp wrapper via http. (Sara) ++- Added MDTM support to ftp_url_stat. (Sara) ++- Added zlib stream filter support. (Sara) ++- Added bz2 stream filter support. (Sara) ++- Added max_redirects context option that specifies how many HTTP ++ redirects to follow. (Ilia) ++- Added support of parameter=>value arrays to ++ xsl_xsltprocessor_set_parameter(). (Tony) ++ ++- PHP extension loading mechanism with support for module ++ dependencies and conflicts. (Jani, Dmitry) ++- Improved interactive mode of PHP CLI (php -a). (Johannes, Marcus) ++- Improved performance of: ++ . general execution/compilation. (Andi, Thies, Sterling, Dmitry, Marcus) ++ . switch() statement. (Dmitry) ++ . several array functions. (Marcus) ++ . virtual path handling by adding a realpath() cache. (Andi) ++ . variable fetches. (Andi) ++ . magic method invocations. (Marcus) ++- Improved support for embedded server in mysqli. (Georg) ++- Improved mysqli extension. (Georg) ++ . added constructor for mysqli_stmt and mysqli_result classes ++ . added new function mysqli_get_charset() ++ . added new function mysqli_set_charset() ++ . added new class mysqli_driver ++ . added new class mysqli_warning ++ . added new class mysqli_exception ++ . added new class mysqli_sql_exception ++- Improved SPL extension. (Marcus) ++ . Moved RecursiveArrayIterator from examples into extension ++ . Moved RecursiveFilterIterator from examples into extension ++ . Added SplObjectStorage ++ . Made all SPL constants class constants ++ . Renamed CachingRecursiveIterator to RecursiveCachingIterator to follow ++ Recursive<*>Iterator naming scheme. ++ . added standard hierarchy of Exception classes ++ . added interface Countable ++ . added interfaces Subject and SplObserver ++ . added spl_autoload*() functions ++ . converted several 5.0 examples into c code ++ . added class SplFileObject ++ . added possibility to use a string with class_parents() and ++ class_implements(). (Andrey) ++ ++- Changed type hints to allow "null" as default value for class and array. ++ (Marcus, Derick, Dmitry) ++- Changed SQLite extension to be a shared module in Windows distribution. ++ (Edin) ++- Changed "instanceof" and "catch" operators, is_a() and is_subclass_of() ++ functions to not call __autoload(). (Dmitry) ++- Changed sha1_file() and md5_file() functions to use streams instead of low ++ level IO. (Uwe) ++- Changed abstract private methods to be not allowed anymore. (Stas) ++- Changed stream_filter_(ap|pre)pend() to return resource. (Sara) ++- Changed mysqli_exception and sqlite_exception to use RuntimeException as ++ base if SPL extension is present. (Georg, Marcus) ++ ++- Upgraded bundled libraries: ++ . PCRE library to version 6.2. (Andrei) ++ . SQLite 3 library in ext/pdo_sqlite to 3.2.7. (Ilia) ++ . SQLite 2 library in ext/sqlite to 2.8.16. (Ilia) ++- Upgraded bundled libraries in Windows distribution. (Edin) ++ . zlib 1.2.3 ++ . curl 7.14.0 ++ . openssl 0.9.8 ++ . ming 0.3b ++ . libpq (PostgreSQL) 8.0.1 ++ ++- Implemented feature request #33452 (Year belonging to ISO week). (Derick) ++- Allowed return by reference from internal functions. (Marcus, Andi, Dmitry) ++- Rewrote strtotime() with support for timezones and many new formats. ++ Implements feature requests #21399, #26694, #28088, #29150, #29585 and ++ #29595. (Derick) ++ ++- Moved extensions to PECL: ++ . ext/cpdf (Tony, Derick) ++ . ext/dio (Jani, Derick) ++ . ext/fam (Jani, Derick) ++ . ext/ingres_ii (Jani, Derick) ++ . ext/mnogosearch (Jani, Derick) ++ . ext/w32api (Jani, Derick) ++ . ext/yp (Jani, Derick) ++ . ext/mcve (Jani, Derick, Pierre) ++ . ext/oracle (Jani, Derick) ++ . ext/ovrimos (Jani, Derick, Pierre) ++ . ext/pfpro (Jani, Derick, Pierre) ++ . ext/dbx (Jani, Derick) ++ . ext/ircg (Jani, Derick) ++ ++- Removed php_check_syntax() function which never worked properly. (Ilia) ++- Removed garbage manager in Zend Engine which results in more aggressive ++ freeing of data. (Dmitry, Andi) ++ ++- Fixed "make test" to work for phpized extensions. (Hartmut, Jani) ++- Fixed Apache 2 regression with sub-request handling on non-linux systems. ++ (Ilia, Tony) ++- Fixed PDO shutdown problem (possible infinite loop running rollback on ++ shutdown). (Wez) ++- Fixed PECL bug #3714 (PDO: beginTransaction doesn't work if you're in ++ auto-commit mode). (Wez) ++- Fixed ZTS destruction. (Marcus) ++- Fixed __get/__set to allow recursive calls for different properties. (Dmitry) ++- Fixed a bug where stream_get_meta_data() did not return the "uri" element ++ for files opened with tmpname(). (Derick) ++- Fixed a problem with SPL iterators aggregating the inner iterator. (Marcus) ++- Fixed an error in mysqli_fetch_fields (returned NULL instead of an array ++ when row number > field_count). (Georg) ++- Fixed bug in mysql::client_version(). (Georg) ++- Fixed bug in mysqli extension with unsigned int(11) being represented as ++ signed integer in PHP instead of string in 32bit systems. (Andrey) ++- Fixed bug with $HTTP_RAW_POST_DATA not getting set. (Brian) ++- Fixed crash inside stream_get_line() when length parameter equals 0. (Ilia) ++- Fixed ext/mysqli to allocate less memory when fetching bound params of type ++ (MEDIUM|LONG)BLOB/(MEDIUM|LONG)TEXT. (Andrey) ++- Fixed extension initialization to respect dependencies between extensions. ++ (Wez) ++- Fixed failing queries (FALSE returned) with mysqli_query() on 64 bit systems. ++ (Andrey) ++- Fixed fgetcsv() and fputcsv() inconsistency. (Dmitry) ++- Fixed inheritance check to control return by reference and pass by ++ reference correctly (ArrayAccess can no longer support references correctly). ++ (Marcus, Andi, Dmitry) ++- Fixed initializing and argument checking for posix_mknod(). (Derick) ++- Fixed memory corruption in ImageTTFText() with 64bit systems. (Andrey) ++- Fixed memory corruption in pg_copy_from() in case the as_null parameter was ++ passed. (Derick) ++- Fixed memory corruption in stristr(). (Derick) ++- Fixed possible GLOBALS variable override when register_globals are ON. ++ (Ilia, Stefan) ++- Fixed possible INI setting leak via virtual() in Apache 2 sapi. (Ilia) ++- Fixed possible register_globals toggle via parse_str(). (Ilia, Stefan) ++- Fixed potential GLOBALS overwrite via import_request_variables() and ++ possible crash and/or memory corruption. (Ilia) ++- Fixed segfaults when CURL callback functions throw exception. (Tony) ++- Fixed support for shared extensions on AIX. (Dmitry) ++- Fixed bug #35342 (isset(DOMNodeList->length) returns false). (Rob) ++- Fixed bug #35341 (Fix for bug #33760 breaks build with older curl). (Tony) ++- Fixed bug #35336 (crash on PDO::FETCH_CLASS + __set()). (Tony) ++- Fixed bug #35303 (PDO prepare() crashes with invalid parameters). (Ilia) ++- Fixed bug #35293 (PDO segfaults when using persistent connections). (Tony) ++- Fixed bug #35278 (Multiple virtual() calls crash Apache 2 php module). (Ilia) ++- Fixed bug #35273 (Error in mapping soap - java types). (Dmitry) ++- Fixed bug #35249 (compile failure when ext/readline is compiled as shared). ++ (Jani) ++- Fixed bug #35248 (sqlite_query() doesn't set error_msg when return value is ++ being used). (Ilia) ++- Fixed bug #35243 (php_mblen() crashes when compiled with thread-safety on ++ Linux). (Patch: shulmanb at il dot ibm dot com, Jani) ++- Fixed bug #35239 (Objects can lose references). (Dmitry) ++- Fixed bug #35229 (call_user_func() crashes when argument_stack is nearly ++ full). (Dmitry) ++- Fixed bug #35197 (Destructor is not called). (Tony) ++- Fixed bug #35179 (tokenizer extension needs T_HALT_COMPILER). (Greg) ++- Fixed bug #35176 (include()/require()/*_once() produce wrong error messages ++ about main()). (Dmitry) ++- Fixed bug #35147 (__HALT_COMPILER() breaks with --enable-zend-multibyte). ++ (Dmitry, Moriyoshi) ++- Fixed bug #35143 (gettimeofday() ignores current time zone). (Derick) ++- Fixed bug #35142 (SOAP Client/Server Complex Object Support). (Dmitry) ++- Fixed bug #35135 (PDOStatment without related PDO object may crash). (Ilia) ++- Fixed bug #35091 (SoapClient leaks memory). (Dmitry) ++- Fixed bug #35079 (stream_set_blocking(true) toggles, not enables blocking). ++ (askalski at gmail dot com, Tony) ++- Fixed bug #35078 (configure does not find ldap_start_tls_s). (Jani) ++- Fixed bug #35046 (phpinfo() uses improper css enclosure). (Ilia) ++- Fixed bugs #35022, #35019 (Regression in the behavior of key() and ++ current() functions). (Ilia) ++- Fixed bug #35017 (Exception thrown in error handler may cause unexpected ++ behavior). (Dmitry) ++- Fixed bug #35014 (array_product() always returns 0). (Ilia) ++- Fixed bug #35009 (ZTS: Persistent resource destruct crashes when extension ++ is compiled as shared). (Dmitry) ++- Fixed bug #34996 (ImageTrueColorToPalette() crashes when ncolors is zero). ++ (Tony) ++- Fixed bug #34982 (array_walk_recursive() modifies elements outside function ++ scope). (Dmitry) ++- Fixed bug #34977 (Compile failure on MacOSX due to use of varargs.h). (Tony) ++- Fixed bug #34968 (bz2 extension fails on to build on some win32 setups). ++ (Ilia) ++- Fixed bug #34965 (tidy is not binary safe). (Mike) ++- Fixed bug #34957 (PHP doesn't respect ACLs for access checks). (Wez) ++- Fixed bug #34950 (Unable to get WSDL through proxy). (Dmitry) ++- Fixed bug #34938 (dns_get_record() doesn't resolve long hostnames and ++ leaks). (Tony) ++- Fixed bug #34905 (Digest authentication does not work with Apache 1). (Ilia) ++- Fixed bug #34902 (mysqli::character_set_name() - undefined method). (Tony) ++- Fixed bug #34899 (Fixed sqlite extension compile failure). (Ilia) ++- Fixed bug #34893 (PHP5.1 overloading, Cannot access private property). ++ (Dmitry) ++- Fixed bug #34884 (Possible crash in ext/sqlite when sqlite.assoc_case is ++ being used). (Tony, Ilia) ++- Fixed bug #34879 (str_replace, array_map corrupt negative array indexes on ++ 64-bit platforms). (Dmitry) ++- Fixed bug #34873 (Segmentation Fault on foreach in object). (Dmitry) ++- Fixed bug #34856 (configure fails to detect libiconv's type). (Tony) ++- Fixed bug #34855 (ibase_service_attach() segfault on AMD64). ++ (irie at gmx dot de, Tony) ++- Fixed bug #34851 (SO_RECVTIMEO and SO_SNDTIMEO socket options expect ++ integer parameter on Windows). (Mike) ++- Fixed bug #34850 (--program-suffix and --program-prefix not included in ++ man page names). (Jani) ++- Fixed bug #34821 (zlib encoders fail on widely varying binary data on ++ windows). (Mike, Ilia) ++- Fixed bug #34818 (several functions crash when invalid mysqli_link object ++ is passed). (Tony) ++- Fixed bug #34810 (mysqli::init() and others use wrong $this pointer without ++ checks). (Tony) ++- Fixed bug #34809 (FETCH_INTO in PDO crashes without a destination object). ++ (Ilia) ++- Fixed bug #34802 (Fixed crash on object instantiation failure). (Ilia) ++- Fixed bug #34796 (missing SSL linking in ext/ftp when configured as shared). ++ (Jani) ++- Fixed bug #34790 (preg_match_all(), named capturing groups, variable ++ assignment/return => crash). (Dmitry) ++- Fixed bug #34788 (SOAP Client not applying correct namespace to generated ++ values). (Dmitry) ++- Fixed bug #34787 (SOAP Client not handling boolean types correctly). (Dmitry) ++- Fixed bug #34786 (2 @ results in change to error_reporting() to random ++ value) (Dmitry, Tony) ++- Fixed bug #34785 (subclassing of mysqli_stmt does not work). (Georg) ++- Fixed bug #34782 (token_get_all() gives wrong result). (Dmitry) ++- Fixed bug #34777 (Crash in dblib when fetching non-existent error info). ++ (Ilia) ++- Fixed bug #34771 (strtotime() fails with 1-12am/pm). (Derick) ++- Fixed bug #34767 (Zend Engine 1 Compatibility not copying objects ++ correctly). (Dmitry) ++- Fixed bug #34758 (PDO_DBLIB did not implement rowCount()). (Ilia) ++- Fixed bug #34757 (iconv_substr() gives "Unknown error" when offset > string ++ length). (Tony) ++- Fixed bug #34742 (ftp wrapper failures caused from segmented command ++ transfer). (Ilia) ++- Fixed bug #34725 (CLI segmentation faults during cleanup). (Dmitry) ++- Fixed bug #34723 (array_count_values() strips leading zeroes). (Tony) ++- Fixed bug #34712 (zend.ze1_compatibility_mode = on segfault). (Dmitry) ++- Fixed bug #34704 (Infinite recursion due to corrupt JPEG). (Marcus) ++- Fixed bug #34678 (__call(), is_callable() and static methods). (Dmitry) ++- Fixed bug #34676 (missing support for strtotime("midnight") and ++ strtotime("noon")). (Derick) ++- Fixed bug #34645 (ctype corrupts memory when validating large numbers). ++ (Ilia) ++- Fixed bug #34643 (wsdl default value has no effect). (Dmitry) ++- Fixed bug #34623 (Crash in pdo_mysql on longtext fields). (Ilia) ++- Fixed bug #34617 (zend_deactivate: objects_store used after ++ zend_objects_store_destroy is called). (Dmitry) ++- Fixed bug #34590 (User defined PDOStatement class can't implement ++ methods). (Marcus) ++- Fixed bug #34584 (Segfault with SPL autoload handler). (Marcus) ++- Fixed bug #34581 (crash with mod_rewrite). (Tony, Ilia) ++- Fixed bug #34565 (mb_send_mail does not fetch ++ mail.force_extra_parameters). (Marco, Ilia) ++- Fixed bug #34557 (php -m exits with "error" 1). (Johannes) ++- Fixed bug #34518 (Unset doesn't separate container in CV). (Dmitry) ++- Fixed bug #34505 (Possible memory corruption when unmangling properties ++ with empty names). (Tony) ++- Fixed bug #34478 (Incorrect parsing of url's fragment (#...)). (Dmitry) ++- Fixed bug #34467 (foreach + __get + __set inconsistency). (Dmitry) ++- Fixed bug #34456 (Possible crash inside pspell extension). (Ilia) ++- Fixed bug #34453 (parsing http://www.w3.org/2001/xml.xsd exception). (Dmitry) ++- Fixed bug #34450 (Segfault when calling mysqli_close() in destructor). (Tony) ++- Fixed bug #34449 (ext/soap: XSD_ANYXML functionality not exposed). (Dmitry) ++- Fixed bug #34420 (Possible crash inside curl_multi_remove_handle()). (Ilia) ++- Fixed bug #34358 (Fatal error: Cannot re-assign $this). (Dmitry) ++- Fixed bug #34331 (php crashes when variables_order is empty). (Ilia) ++- Fixed bug #34321 (Possible crash in filter code). (Ilia) ++- Fixed bug #34311 (unserialize() crashes with chars above 191 dec). (Nuno) ++- Fixed bug #34310 (foreach($arr as $c->d => $x) crashes). (Dmitry) ++- Fixed bug #34307 (on_modify handler not called to set the default value if ++ setting from php.ini was invalid). (Andrei) ++- Fixed bug #34306 (wddx_serialize_value() crashes with long array keys). ++ (Jani) ++- Fixed bug #34304 (date() doesn't have a modifier for ISO Week Day). (Derick) ++- Fixed bug #34302 (date('W') do not return leading zeros for week 1 to 9). ++ (Derick) ++- Fixed bug #34299 (ReflectionClass::isInstantiable() returns true for abstract ++ classes). (Marcus) ++- Fixed bug #34284 (CLI phpinfo showing html on _SERVER["argv"]). (Jani) ++- Fixed bug #34277 (array_filter() crashes with references and objects). ++ (Dmitry) ++- Fixed bug #34276 (setAttributeNS doesn't work with default namespace). ++ (Rob) ++- Fixed bug #34260 (Segfault with callbacks (array_map) + overloading). ++ (Dmitry) ++- Fixed bug #34257 (lib64 not handled correctly in ming extension). (Marcus) ++- Fixed bug #34221 (Compiling xmlrpc as shared fails other parts). (Jani) ++- Fixed bug #34216 (Segfault with autoload). (Marcus) ++- Fixed bug #34199 (if($obj)/if(!$obj) inconsistency because of cast handler). ++ (Dmitry, Alex) ++- Fixed bug #34191 (ob_gzhandler does not enforce trailing \0). (Ilia) ++- Fixed bug #34156 (memory usage remains elevated after memory limit is ++ reached). (Ilia) ++- Fixed bug #34148 (+,- and . not supported as parts of scheme). (Ilia) ++- Fixed bug #34137 (assigning array element by reference causes binary mess). ++ (Dmitry) ++- Fixed bug #34103 (line numbering not maintained in dom document). (Rob) ++- Fixed bug #34078 (Reflection API problems in methods with boolean or ++ null default values). (Tony) ++- Fixed bug #34068 (Numeric string as array key not cast to integer in ++ wddx_deserialize()). (Ilia) ++- Fixed bug #34064 (arr[] as param to function in class gives invalid ++ opcode). (Dmitry) ++- Fixed bug #34062 (Crash in catch block when many arguments are used). ++ (Dmitry) ++- Fixed bug #34052 (date('U') returns %ld not unix timestamp). (Nuno) ++- Fixed bug #34045 (Buffer overflow with serialized object). (Dmitry) ++- Fixed bug #34001 (pdo_mysql truncates numeric fields at 4 chars). (Ilia) ++- Fixed bug #33999 (object remains object when cast to int). (Dmitry) ++- Fixed bug #33996 (No information given for fatal error on passing invalid ++ value to typed argument). (Dmitry) ++- Fixed bug #33989 (extract($GLOBALS,EXTR_REFS) crashes PHP). (Dmitry) ++- Fixed bug #33987 (php script as ErrorDocument causes crash in Apache 2). ++ (Ilia) ++- Fixed bug #33967 (misuse of Exception constructor doesn't display ++ errorfile). (Jani) ++- Fixed bug #33966 (Wrong use of reflectionproperty causes a segfault). (Tony) ++- Fixed bug #33963 (mssql_bind() fails on input parameters). (Frank) ++- Fixed bug #33958 (duplicate cookies and magic_quotes=off may cause a crash). ++ (Ilia) ++- Fixed bug #33957 (gmdate('W')/date('W') sometimes returns wrong week number). ++ (Derick) ++- Fixed bug #33940 (array_map() fails to pass by reference when called ++ recursively). (Dmitry) ++- Fixed bug #33917 (number_format() output with > 1 char separators). (Jani) ++- Fixed bug #33904 (input array keys being escaped when magic quotes is off). ++ (Ilia) ++- Fixed bug #33903 (spl_autoload_register class method). (Marcus) ++- Fixed bug #33899 (CLI: setting extension_dir=some/path extension=foobar.so ++ does not work). (Jani) ++- Fixed bug #33882 (CLI was looking for php.ini in wrong path). (Hartmut) ++- Fixed bug #33869 (strtotime() problem with "+1days" format). (Ilia) ++- Fixed bug #33841 (pdo sqlite driver forgets to update affected column ++ count on execution of prepared statments). (Ilia) ++- Fixed bug #33837 (Informix ESQL version numbering schema changed). (Jani) ++- Fixed bug #33829 (mime_content_type() returns text/plain for gzip and bzip ++ files). (Derick) ++- Fixed bug #33802 (throw Exception in error handler causes crash). (Dmitry) ++- Fixed bug #33771 (error_reporting falls to 0 when @ was used inside ++ try/catch block). (Tony) ++- Fixed bug #33760 (cURL needs to implement CRYPTO_callback functions to ++ prevent locking). (Mike, Ilia) ++- Fixed bug #33732 (Wrong behavior of constants in class and interface ++ extending). (Dmitry) ++- Fixed bug #33723 (php_value overrides php_admin_value). (Dmitry) ++- Fixed bug #33720 (mb_encode_mimeheader does not work for multibyte ++ chars). (Rui) ++- Fixed bug #33710 (ArrayAccess objects does not initialize $this). (Dmitry) ++- Fixed bug #33690 (Crash setting some ini directives in httpd.conf). (Rasmus) ++- Fixed bug #33673 (Added detection for partially uploaded files). (Ilia) ++- Fixed bug #33605 (substr_compare() crashes with negative offset and length). ++ (Tony) ++- Fixed bug #33597 (setcookie() "expires" date format doesn't comply with RFC). ++ (Tony) ++- Fixed bug #33588 (LDAP: RootDSE query not possible). (Jani) ++- Fixed bug #33578 (strtotime() problem with "Oct17" format). (Derick) ++- Fixed bug #33578 (strtotime() doesn't understand "11 Oct" format). (Derick) ++- Fixed bug #33562 (date("") crashes). (Derick) ++- Fixed bug #33558 (warning with nested calls to functions returning by ++ reference). (Dmitry) ++- Fixed bug #33536 (strtotime() defaults to now even on non time string). ++ (Derick) ++- Fixed bug #33532 (Different output for strftime() and date()). (Derick) ++- Fixed bug #33523 (Memory leak in xmlrpc_encode_request()). (Ilia) ++- Fixed bug #33520 (crash if safe_mode is on and session.save_path is changed). ++ (Dmitry) ++- Fixed bug #33512 (Add missing support for isset()/unset() overloading to ++ complement the property get/set methods). (Dmitry) ++- Fixed bug #33491 (crash after extending MySQLi internal class). (Tony) ++- Fixed bug #33475 (cURL handle is not closed on curl_close(). (Ilia) ++- Fixed bug #33469 (Compile error undefined reference to ifx_checkAPI). (Jani) ++- Fixed bug #33433 (strtoll not available on Tru64). (Jani, Derick) ++- Fixed bug #33427 (ext/odbc: check if unixODBC header file exists). (Jani) ++- Fixed bug #33415 (strtotime() related bugs). (Derick) ++- Fixed bug #33414 (Comprehensive list of incorrect days returned after ++ strtotime() / date() tests). (Derick) ++- Fixed bug #33389 (double free() when exporting a ReflectionClass). (Marcus) ++- Fixed bug #33383 (crash when retrieving empty LOBs). (Tony) ++- Fixed bug #33382 (array_reverse() fails after *sort()), introduced by ++ zend_hash_sort() optimizations in HEAD. (Tony) ++- Fixed bug #33340 (CLI Crash when calling php:function from XSLT). (Rob) ++- Fixed bug #33326 (Cannot build extensions with phpize on Macosx). (Jani) ++- Fixed bug #33318 (throw 1; results in Invalid opcode 108/1/8). (Dmitry) ++- Fixed bug #33312 (ReflectionParameter methods do not work correctly). ++ (Dmitry) ++- Fixed bug #33299 (php:function no longer handles returned dom objects). ++ (Rob, Joe Orton) ++- Fixed bug #33286 (nested array_walk() calls and user array compare functions ++ broken; FCI cache). (Andrei, patch from m.bretz@metropolis-ag.de) ++- Fixed bug #33277 (private method accessed by child class). (Dmitry) ++- Fixed bug #33268 (iconv_strlen() works only with a parameter of < 3 in ++ length). (Ilia) ++- Fixed bug #33257 (array_splice() inconsistent when passed function instead of ++ variable). (Dmitry) ++- Fixed bug #33243 (ze1_compatibility_mode does not work as expected). (Dmitry) ++- Fixed bug #33242 (Mangled error message when stream fails). (Derick) ++- Fixed bug #33222 (segfault when CURL handle is closed in a callback). (Tony) ++- Fixed bug #33214 (odbc_next_result does not signal SQL errors with ++ 2-statement SQL batches). (rich at kastle dot com, Tony) ++- Fixed bug #33212 ([GCC 4]: 'zend_error_noreturn' aliased to external symbol ++ 'zend_error'). (Dmitry) ++- Fixed bug #33210 (relax jpeg recursive loop protection). (Ilia) ++- Fixed bug #33201 (Crash when fetching some data types). (Frank) ++- Fixed bug #33200 (preg_replace(): magic_quotes_sybase=On makes 'e' modifier ++ misbehave). (Jani) ++- Fixed bug #33185 (--enable-session=shared does not build). (Jani) ++- Fixed bug #33171 (foreach enumerates private fields declared in base ++ classes). (Dmitry) ++- Fixed bug #33167 (Possible crash inside pg_fetch_array()). (Ilia) ++- Fixed bug #33164 (Soap extension incorrectly detects HTTP/1.1). (Ilia) ++- Fixed bug #33156 (cygwin version of setitimer doesn't accept ITIMER_PROF). ++ (Nuno) ++- Fixed bug #33153 (crash in mssql_next result). (Frank) ++- Fixed bug #33150 (shtool: insecure temporary file creation). (Jani) ++- Fixed bug #33136 (method offsetSet in class extended from ArrayObject crash ++ PHP). (Marcus) ++- Fixed bug #33125 (imagecopymergegray() produces mosaic rainbow effect). ++ (Pierre) ++- Fixed bug #33116 (crash when assigning class name to global variable in ++ __autoload). (Dmitry) ++- Fixed bug #33090 (mysqli_prepare() doesn't return an error). (Georg) ++- Fixed bug #33076 (str_ireplace() incorrectly counts result string length ++ and may cause segfault). (Tony) ++- Fixed bug #33072 (Add a safemode/open_basedir check for runtime ++ "session.save_path" change using session_save_path() function). (Rasmus) ++- Fixed bug #33070 (Improved performance of bzdecompress() by several orders ++ of magnitude). (Ilia) ++- Fixed bug #33059 (crash when moving xml attribute set in dtd). (Ilia) ++- Fixed bug #33057 (Don't send extraneous entity-headers on a 304 as per ++ RFC 2616 section 10.3.5) (Rasmus, Choitel) ++- Fixed bug #33019 (socket errors cause memory leaks in php_strerror()). ++ (jwozniak23 at poczta dot onet dot pl, Tony). ++- Fixed bug #33017 ("make distclean" gives an error with VPATH build). (Jani) ++- Fixed bug #33013 ("next month" was handled wrong while parsing dates). ++ (Derick) ++- Fixed bug #32993 (implemented Iterator function current() don't throw ++ exception). (Dmitry) ++- Fixed bug #32981 (ReflectionMethod::getStaticVariables() causes apache2.0.54 ++ seg fault). (Dmitry) ++- Fixed bug #32956 (mysql_bind_result() doesn't support MYSQL_TYPE_NULL). ++ (Georg) ++- Fixed bug #32947 (Incorrect option for mysqli default password). (Georg) ++- Fixed bug #32944 (Disabling session.use_cookies doesn't prevent reading ++ session cookies). (Jani, Tony) ++- Fixed bug #32941 (Sending structured SOAP fault kills a php). (Dmitry) ++- Fixed bug #32937 (open_basedir looses trailing / in the limiter). ++ (Adam Conrad) ++- Fixed bug #32936 (http redirects URLs are not checked for control chars). ++ (Ilia) ++- Fixed bug #32933 (Cannot extend class "SQLiteDatabase"). (Marcus) ++- Fixed bug #32932 (Oracle LDAP: ldap_get_entries(), invalid pointer). (Jani) ++- Fixed bug #32930 (class extending DOMDocument doesn't clone properly). (Rob) ++- Fixed bug #32924 (file included with "auto_prepend_file" can be included ++ with require_once() or include_once()). (Stas) ++- Fixed bug #32904 (pg_get_notify() ignores result_type parameter). (Tony) ++- Fixed bug #32852 (Crash with singleton and __destruct when ++ zend.ze1_compatibility_mode = On). (Dmitry) ++- Fixed bug #32833 (Invalid opcode). (Dmitry) ++- Fixed bug #32813 (parse_url() does not handle scheme-only urls properly). ++ (Ilia) ++- Fixed bug #32810 (temporary files not using plain file wrapper). (Ilia) ++- Fixed bug #32809 (Missing T1LIB support on Windows). (Edin) ++- Fixed bug #32802 (General cookie overrides more specific cookie). (Ilia) ++- Fixed bugs #32800, #32830 (ext/odbc: Problems with 64bit systems). (Jani) ++- Fixed bug #32799 (crash: calling the corresponding global var during the ++ destruct). (Dmitry) ++- Fixed bug #32776 (SOAP doesn't support one-way operations). (Dmitry) ++- Fixed bug #32773 (GMP functions break when second parameter is 0). (Stas) ++- Fixed bug #32759 (incorrect determination of default value (COM)). (Wez) ++- Fixed bug #32758 (Cannot access safearray properties in VB6 objects). (Wez) ++- Fixed bug #32755 (Segfault in replaceChild() when DocumentFragment has no ++ children). (Rob) ++- Fixed bug #32753 (Undefined constant SQLITE_NOTADB). (Ilia) ++- Fixed bug #32742 (segmentation fault when the stream with a wrapper ++ is not closed). (Tony, Dmitry) ++- Fixed bug #32699 (pg_affected_rows() was defined when it was not available). ++ (Derick) ++- Fixed bug #32686 (Require/include file in destructor causes segfault). ++ (Marcus) ++- Fixed bug #32682 (ext/mssql: Error on module shutdown when called from ++ activescript). (Frank) ++- Fixed bug #32674 (exception in iterator causes crash). (Dmitry) ++- Fixed bug #32660 (Assignment by reference causes crash when field access is ++ overloaded (__get)). (Dmitry) ++- Fixed bug #32647 (Using register_shutdown_function() with invalid callback ++ can crash PHP). (Jani) ++- Fixed bug #32615 (Segfault in replaceChild() using fragment when ++ previousSibling is NULL). (Rob) ++- Fixed bug #32613 (ext/snmp: use of snmp_shutdown() causes snmpapp.conf ++ access errors). (Jani, ric at arizona dot edu) ++- Fixed bug #32608 (html_entity_decode() converts single quotes even if ++ ENT_NOQUOTES is given). (Ilia) ++- Fixed bug #32596 (Segfault/Memory Leak by getClass (etc) in __destruct). ++ (Dmitry) ++- Fixed bug #32591 (ext/mysql: Unsatisfied symbol: ntohs with HP-UX). (Jani) ++- Fixed bug #32589 (possible crash inside imap_mail_compose() function). ++ (Ilia) ++- Fixed bug #32589 (Possible crash inside imap_mail_compose, with charsets). ++ (Ilia) ++- Fixed bug #32587 (Apache2: errors sent to error_log do not include ++ timestamps). (Jani) ++- Fixed bug #32560 (configure looks for incorrect db2 library). (Tony) ++- Fixed bug #32553 (mmap loads only the 1st 2000000 bytes on Win32). (Ilia) ++- Fixed bug #32533 (proc_get_status() returns the incorrect process status). ++ (Ilia) ++- Fixed bug #32530 (chunk_split() does not append endstr if chunklen is ++ longer then the original string). (Ilia) ++- Fixed bug #32491 (File upload error - unable to create a temporary file). ++ (Uwe Schindler) ++- Fixed bug #32455 (wrong setting property to unset value). (Dmitry) ++- Fixed bug #32429 (method_exists() always return TRUE if __call method ++ exists). (Dmitry) ++- Fixed bug #32428 (The @ warning error suppression operator is broken). ++ (Dmitry) ++- Fixed bug #32427 (Interfaces are not allowed 'static' access modifier). ++ (Dmitry) ++- Fixed bug #32405 (mysqli::fetch() returns bad data - 64bit problem). ++ (Andrey) ++- Fixed bug #32296 (get_class_methods() output has changed between 5.0.2 and ++ 5.0.3). (Dmitry) ++- Fixed bug #32282 (Segfault in mysqli_fetch_array on 64-bit). (Georg) ++- Fixed bug #32245 (xml_parser_free() in a function assigned to the xml ++ parser gives a segfault). (Rob) ++- Fixed bug #32179 (xmlrpc_encode() segfaults with recursive references). ++ (Tony) ++- Fixed bug #32171 (Userspace stream wrapper crashes PHP). (Tony, Dmitry) ++- Fixed bug #32160 (copying a file into itself leads to data loss). (Ilia) ++- Fixed bug #32139 (SOAP client does not auto-handle base64 encoding). (Ilia) ++- Fixed bug #32109 ($_POST is not populated in multi-threaded environment). ++ (Moriyoshi) ++- Fixed bug #32080 (segfault when assigning object to itself with ++ zend.ze1_compatibility_mode=On). (Dmitry) ++- Fixed bug #32021 (Crash caused by range('', 'z')). (Derick) ++- Fixed bug #32013 (ext/mysqli bind_result causes fatal error: memory limit). ++ (Andrey) ++- Fixed bug #32010 (Memory leak in mssql_fetch_batch). (fmk) ++- Fixed bug #32009 (crash when mssql_bind() is called more than once). (Frank) ++- Fixed bug #31971 (ftp_login fails on some SSL servers). ++ (frantisek at augusztin dot com) ++- Fixed bug #31887 (ISAPI: Custom 5xx error does not return correct HTTP ++ response message). (Jani) ++- Fixed bug #31828 (Crash with zend.ze1_compatibility_mode=On). (Dmitry) ++- Fixed bug #31668 (multi_query works exactly every other time - multi query ++ d/e flag global and not per connection). (Andrey) ++- Fixed bug #31636 (another crash when echoing a COM object). (Wez) ++- Fixed bug #31583 (php_std_date() uses short day names in non-y2k_compliance ++ mode). (mike at php dot net) ++- Fixed bug #31525 (object reference being dropped. $this getting lost). ++ (Stas, Dmitry) ++- Fixed bug #31502 (Wrong deserialization from session when using WDDX ++ serializer). (Dmitry) ++- Fixed bug #31478 (segfault with empty() / isset()). (Moriyoshi) ++- Fixed bug #31465 (False warning in unpack() when working with *). (Ilia) ++- Fixed bug #31363 (broken non-blocking flock()). (ian at snork dot net) ++- Fixed bug #31358 (Older GCC versions do not provide portable va_copy()). ++ (Jani) ++- Fixed bug #31341 (escape on curly inconsistent). (Dmitry) ++- Fixed bug #31256 (PHP_EVAL_LIBLINE configure macro does not handle ++ -pthread). (Jani) ++- Fixed bug #31213 (Side effects caused by fix of bug #29493). (Dmitry) ++- Fixed bug #31177 (memory leaks and corruption because of incorrect ++ refcounting). (Dmitry) ++- Fixed bug #31158 (array_splice on $GLOBALS crashes). (Dmitry) ++- Fixed bug #31054 (safe_mode & open_basedir checks only check first ++ include_path value). (Ilia) ++- Fixed bug #31033 (php:function(string, nodeset) with xsl:key crashes PHP). ++ (Rob) ++- Fixed bug #30961 (Wrong line number in ReflectionClass getStartLine()). ++ (Dmitry) ++- Fixed bug #30889 (Conflict between __get/__set and ++ operator). (Dmitry) ++- Fixed bug #30833 (array_count_values() modifying input array). (Tony) ++- Fixed bug #30828 (debug_backtrace() reports incorrect class in overridden ++ methods). (Dmitry) ++- Fixed bug #30820 (static member conflict with $this->member silently ++ ignored). (Dmitry) ++- Fixed bug #30819 (Better support for LDAP SASL bind). (Jani) ++- Fixed bug #30791 (magic methods (__sleep/__wakeup/__toString) call ++ __call if object is overloaded). (Dmitry) ++- Fixed bug #30707 (Segmentation fault on exception in method). ++ (Stas, Dmitry) ++- Fixed bug #30702 (cannot initialize class variable from class constant). ++ (Dmitry) ++- Fixed bug #30578 (Output buffers flushed before calling __destruct() ++ functions). (Jani) ++- Fixed bug #30519 (Interface not existing says Class not found). (Dmitry) ++- Fixed bug #30407 (Strange behavior of default arguments). (Dmitry) ++- Fixed bug #30394 (Assignment operators yield wrong result with __get/__set). ++ (Dmitry) ++- Fixed bug #30332 (zend.ze1_compatibility_mode isn't fully compatible with ++ array_push()). (Dmitry) ++- Fixed bug #30162 (Catching exception in constructor causes lose of ++ $this). (Dmitry) ++- Fixed bug #30140 (Problem with array in static properties). (Dmitry) ++- Fixed bug #30126 (Enhancement for error message for abstract classes). ++ (Marcus) ++- Fixed bug #30096 (gmmktime does not return the current time). (Derick) ++- Fixed bug #30080 (Passing array or non array of objects). (Dmitry) ++- Fixed bug #30052 (Crash on shutdown after odbc_pconnect()). (Edin) ++- Fixed bug #29983 (PHP does not explicitly set mime type & charset). (Ilia) ++- Fixed bug #29975 (memory leaks when set_error_handler() is used inside error ++ handler). (Tony) ++- Fixed bug #29971 (variables_order behavior). (Dmitry) ++- Fixed bug #29944 (Function defined in switch, crashes). (Dmitry) ++- Fixed bug #29896 (Backtrace argument list out of sync). (Dmitry) ++- Fixed bug #29728 (Reflection API Feature: Default parameter value). (Marcus) ++- Fixed bug #29689 (default value of protected member overrides default value ++ of private and other private variable problems in inherited classes). (Stas) ++- Fixed bug #29683 (headers_list() returns empty array). (Tony) ++- Fixed bug #29583 (crash when echoing a COM object). (M.Sisolak, Wez) ++- Fixed bug #29522 (accessing properties without connection). (Georg) ++- Fixed bug #29361 (var_export() producing invalid code). (Derick) ++- Fixed bug #29338 (unencoded spaces get ignored after certain tags). (Ilia) ++- Fixed bug #29335 (fetch functions now use MYSQLI_BOTH as default). (Georg) ++- Fixed bug #29334 (win32 mail() provides incorrect Date: header). (Jani) ++- Fixed bug #29311 (calling parent constructor in mysqli). (Georg) ++- Fixed bug #29268 (__autoload() not called with Reflection->getClass()). ++ (Dmitry) ++- Fixed bug #29256 (SOAP HTTP Error when envelop size is more than 24345 ++ bytes). (Dmitry, Wez) ++- Fixed bug #29253 (array_diff with $GLOBALS argument fails). (Dmitry) ++- Fixed bug #29236 (memory error when wsdl-cache is enabled). (Dmitry) ++- Fixed bug #29210 (Function: is_callable - no support for private and ++ protected classes). (Dmitry) ++- Fixed bug #29109 (SoapFault exception: [WSDL] Out of memory). (Dmitry) ++- Fixed bug #29104 (Function declaration in method doesn't work). (Dmitry) ++- Fixed bug #29061 (soap extension segfaults). (Dmitry) ++- Fixed bug #29015 (Incorrect behavior of member vars(non string ones)-numeric ++ mem vars and others). (Dmitry) ++- Fixed bug #28985 (__getTypes() returning nothing on complex WSDL). (Dmitry) ++- Fixed bug #28969 (Wrong data encoding of special characters). (Dmitry) ++- Fixed bug #28839 (SIGSEGV in interactive mode (php -a)). ++ (kameshj at fastmail dot fm) ++- Fixed bug #28605 (Need to use -[m]ieee option for Alpha CPUs). (Jani) ++- Fixed bug #28568 (SAPI::known_post_content_types is not thread safe). ++ (Moriyoshi) ++- Fixed bug #28377 (debug_backtrace is intermittently passing args). (Dmitry) ++- Fixed bug #28355 (glob wont error if dir is not readable). (Hartmut) ++- Fixed bug #28072 (static array with some constant keys will be incorrectly ++ ordered). (Dmitry) ++- Fixed bug #27908 (xml default_handlers not being called). (Rob) ++- Fixed bug #27598 (list() array key assignment causes HUGE memory leak). ++ (Dmitry) ++- Fixed bug #27268 (Bad references accentuated by clone). (Dmitry) ++- Fixed bug #26456 (Wrong results from Reflection-API getDocComment() when ++ called via STDIN). (Dmitry) ++- Fixed bug #25922 (In error handler, modifying 5th arg (errcontext) may ++ result in seg fault). (Dmitry) ++- Fixed bug #25359 (array_multisort() doesn't work in a function if array is ++ global or reference). (Dmitry) ++- Fixed bug #22836 (returning reference to uninitialized variable). (Dmitry) ++- Fixed bug #21306 (ext/sesssion: catch bailouts of write handler during ++ RSHUTDOWN). (Jani, Xuefer at 21cn dot com) ++- Fixed bug #15854 (boolean ini options may be incorrectly displayed as Off ++ when they are On). (Tony) ++- Fixed bugs #14561, #20382, #26090, #26320, #28024, #30532, #32086, #32270, ++ #32555, #32588, #33056 (strtotime() related bugs). (Derick) ++ ++31 Mar 2005, PHP 5.0.4 ++- Added SNMPv2 support. (harrie) ++- Added Oracle Instant Client support. (cjbj at hotmail dot com, Tony) ++- Added length and charsetnr for field array and object in mysqli. (Georg) ++- Added checks for negative values to gmp_sqrt(), gmp_powm(), gmp_sqrtrem() ++ and gmp_fact() to prevent SIGFPE. (Tony) ++- Changed foreach() to throw an exception if IteratorAggregate::getIterator() ++ does not return an Iterator. (Marcus) ++- Changed phpize not to require libtool. (Jani) ++- Updated bundled oniguruma library (used for multibyte regular expression) ++ to 3.7.0. (Moriyoshi) ++- Updated bundled libmbfl library (used for multibyte functions). (Moriyoshi) ++ Fixed bugs: ++ . Bug #32311 (mb_encode_mimeheader() does not properly escape characters) ++ . Bug #32063 (mb_convert_encoding ignores named entity 'alpha') ++ . Bug #31911 (mb_decode_mimeheader() is case-sensitive to hex escapes) ++ . bug #30573 (compiler warnings in libmbfl due to invalid type cast) ++ . Bug #30549 (incorrect character translations for some ISO8859 charsets). ++- Fixed bug preventing from building oci8 as shared. ++ (stanislav dot voroniy at portavita dot nl, Tony) ++- Fixed a bug in mysql_affected_rows and mysql_stmt_affected_rows when the ++ api function returns -1 (Georg) ++- Fixed several leaks in ext/browscap and sapi/embed. (Andrei) ++- Fixed several leaks in ext/filepro. (Tony) ++- Fixed build system to always use bundled libtool files. (Jani) ++- Fixed a bug in mysqli_stmt_execute() (type conversion with NULL values). ++ (Georg) ++- Fixed segfault in mysqli_fetch_field_direct() when invalid field offset ++ is passed. (Tony) ++- Fixed posix_getsid() & posix_getpgid() to return sid & pgid instead ++ of true. (Tony) ++- Fixed bug #32394 (offsetUnset() segfaults in a foreach). (Marcus) ++- Fixed bug #32373 (segfault in bzopen() if supplied path to non-existent ++ file). (Tony) ++- Fixed bug #32326 (Check values of Connection/Transfer-Encoding ++ case-incentively in SOAP extension). (Ilia) ++- Fixed bug #32290 (call_user_func_array() calls wrong class method within ++ child class). (Marcus) ++- Fixed bug #32238 (spl_array.c: void function cannot return value). (Johannes) ++- Fixed bug #32210 (proc_get_status() sets "running" always to true). (Ilia) ++- Fixed bug #32200 (Prevent using both --with-apxs2 and --with-apxs2filter). ++ (Jani) ++- Fixed bug #32134 (Overloading offsetGet/offsetSet). (Marcus) ++- Fixed bug #32130 (ArrayIterator::seek() does not throw an Exception on ++ invalid index). (Marcus) ++- Fixed bug #32115 (dateTime SOAP encoding of timezone incorrect). (Dmitry) ++- Fixed bug #32081 (in mysqli default socket value is not being used). (Ilia) ++- Fixed bug #32021 (Crash caused by range('', 'z')). (Derick) ++- Fixed bug #32011 (Fragments which replaced Nodes are not globaly useable). ++ (Rob) ++- Fixed bug #32001 (xml_parse_into_struct() function exceeds maximum ++ execution time). (Rob, Moriyoshi) ++- Fixed bug #31980 (Unicode exif data not available on Windows). (Edin) ++- Fixed bug #31960 (msql_fetch_row() and msql_fetch_array() dropping columns ++ with NULL values). (Daniel Convissor) ++- Fixed bug #31878 (Segmentation fault using clone keyword on nodes). (Rob) ++- Fixed bug #31858 (--disable-cli does not force --without-pear). (Jani) ++- Fixed bug #31842 (*date('r') does not return RFC2822 conforming date string). ++ (Jani) ++- Fixed bug #31832 (SOAP encoding problem with complex types in WSDL mode with ++ multiple parts). (Dmitry) ++- Fixed bug #31797 (exif_read_data() uses too low nesting limit). (Ilia) ++- Fixed bug #31796 (readline completion handler does not handle empty return ++ values). (Ilia) ++- Fixed bug #31792 (getrusage() does not provide ru_nswap value). (Ilia) ++- Fixed bug #31755 (Cannot create SOAP header in no namespace). (Dmitry) ++- Fixed bug #31754 (dbase_open() fails for mode = 1). (Mehdi, Derick) ++- Fixed bug #31751 (pg_parameter_status() missing on Windows). (Edin) ++- Fixed bug #31747 (SOAP Digest Authentication doesn't work with ++ "HTTP/1.1 100 Continue" response). (Dmitry) ++- Fixed bug #31732 (mb_get_info() causes segfault when no parameters ++ specified). (Tony) ++- Fixed bug #31710 (Wrong return values for mysqli_autocommit/commit/rollback). ++ (Georg) ++- Fixed bug #31705 (parse_url() does not recognize http://foo.com#bar). (Ilia) ++- Fixed bug #31695 (Cannot redefine endpoint when using WSDL). (Dmitry) ++- Fixed bug #31684 (dio_tcsetattr(): misconfigured termios settings). ++ (elod at itfais dot com) ++- Fixed bug #31683 (changes to $name in __get($name) override future ++ parameters) (Dmitry) ++- Fixed bug #31699 (unserialize() float problem on non-English locales). (Ilia) ++- Fixed bug #31562 (__autoload() problem with static variables). (Marcus) ++- Fixed bug #31651 (ReflectionClass::getDefaultProperties segfaults with arrays). ++ (Marcus) ++- Fixed bug #31623 (OCILogin does not support password grace period). ++ (daniel dot beet at accuratesoftware dot com, Tony) ++- Fixed bug #31527 (crash in msg_send() when non-string is stored without ++ being serialized). (Ilia) ++- Fixed bug #31515 (Improve performance of scandir() by factor of 10 or so). (Ilia) ++- Fixed bug #31514 (open_basedir uses path_translated rather then cwd for . ++ translation). (Ilia) ++- Fixed bug #31480 (Possible infinite loop in imap_mail_compose()). (Ilia) ++- Fixed bug #31479 (Fixed crash in chunk_split(), when chunklen > strlen). (Ilia) ++- Fixed bug #31454 (session_set_save_handler crashes PHP when supplied ++ non-existent object ref). (Tony) ++- Fixed bug #31444 (Memory leak in zend_language_scanner.c). ++ (hexer at studentcenter dot org) ++- Fixed bug #31442 (unserialize broken on 64-bit systems). (Marcus) ++- Fixed bug #31440 ($GLOBALS can be overwritten via GPC when register_globals ++ is enabled). (Ilia) ++- Fixed bug #31422 (No Error-Logging on SoapServer-Side). (Dmitry) ++- Fixed bug #31413 (curl POSTFIELDS crashes on 64-bit platforms). (Joe) ++- Fixed bug #31396 (compile fails with gd 2.0.33 without freetype). (Jani) ++- Fixed bug #31371 (highlight_file() trims new line after heredoc). (Ilia) ++- Fixed bug #31361 (simplexml/domxml segfault when adding node twice). (Rob) ++- Fixed bug #31348 (CachingIterator::rewind() leaks). (Marcus) ++- Fixed bug #31346 (ArrayIterator::next segfaults). (Marcus) ++- Fixed bug #31190 (Unexpected warning then exception is thrown from ++ call_user_func_array()). (phpbugs at domain51 dot net, Dmitry) ++- Fixed bug #31142 (imap_mail_compose() fails to generate correct output). (Ilia) ++- Fixed bug #31139 (XML Parser Functions seem to drop & when parsing). (Rob) ++- Fixed bug #31398 (When magic_guotes_gpc are enabled filenames with ' get cutoff). ++ (Ilia) ++- Fixed bug #31288 (Possible crash in mysql_fetch_field(), if mysql_list_fields() ++ was not called previously). (Ilia) ++- Fixed bug #31107, #31110, #31111, #31249 (Compile failure of zend_strtod.c). ++ (Jani) ++- Fixed bug #31110 (PHP 4.3.10 does not compile on Tru64 UNIX 5.1B). (Derick) ++- Fixed bug #31107 (Compile failure on Solaris 9 (Intel) and gcc 3.4.3). (Derick) ++- Fixed bug #31103 (Better error message when c-client cannot be found). (Ilia) ++- Fixed bug #31101 (missing kerberos header file path with --with-openssl). (Jani) ++- Fixed bug #31098 (isset() / empty() incorrectly return true in dereference of ++ a string type). (Moriyoshi) ++- Fixed bug #31087 (broken php_url_encode_hash macro). (Ilia) ++- Fixed bug #31072 (var_export() does not output an array element with an empty ++ string key). (Derick) ++- Fixed bug #31060 (imageftbbox() does not use linespacing parameter). (Jani) ++- Fixed bug #31056 (php_std_date() returns invalid formatted date if ++ y2k_compliance is On). (Ilia) ++- Fixed bug #31055 (apache2filter: per request leak proportional to the full ++ path of the request URI). (kameshj at fastmail dot fm) ++- Fixed bug #30901 (can't send cookies with soap envelop). (Dmitry) ++- Fixed bug #30871 (Misleading warning message for array_combine()). (Andrey) ++- Fixed bug #30868 (evaluated pointer comparison in mbregex causes compile ++ failure). (Moriyoshi) ++- Fixed bug #30862 (Static array with boolean indexes). (Marcus) ++- Fixed bug #30726 (-.1 like numbers are not being handled correctly). (Ilia) ++- Fixed bug #30725 (PHP segfaults when an exception is thrown in getIterator() ++ within foreach). (Marcus) ++- Fixed bug #30609 (cURL functions bypass open_basedir). (Jani) ++- Fixed bug #30446 (apache2handler: virtual() includes files out of sequence) ++- Fixed bug #30430 (odbc_next_result() doesn't bind values and that results ++ in segfault). (pdan-php at esync dot org, Tony) ++- Fixed bug #30266 (Invalid opcode 137/1/8). (Marcus) ++- Fixed bug #30120 imagettftext() and imagettfbbox() accept too many ++ parameters). (Jani) ++- Fixed bug #30106 (SOAP cannot not parse 'ref' element. Causes Uncaught ++ SoapFault exception). (Dmitry) ++- Fixed bug #29989 (type re_registers redefined in oniguruma.h). (Moriyoshi) ++- Fixed bug #28803 (enabled debug causes bailout errors with CLI on AIX ++ because of fflush() called on already closed filedescriptor). (Tony) ++- Fixed bug #29767 (Weird behaviour of __set($name, $value)). (Dmitry) ++- Fixed bug #29733 (printf() handles repeated placeholders wrong). ++ (bugs dot php dot net at bluetwanger dot de, Ilia) ++- Fixed bug #29424 (width and height inverted for JPEG2000 files). (Ilia) ++- Fixed bug #29329 (configure for mysqli with shared doesn't work). (Georg) ++- Fixed bug #29136 (make test - libtool failure on MacOSX). (Jani) ++- Fixed bug #28976 (mail(): use "From:" from headers if sendmail_from is empty). ++ (Jani) ++- Fixed bug #28930 (PHP sources pick wrong header files generated by bison). ++ (eggert at gnu dot org, Jani) ++- Fixed bug #28840 (__destruct of a class that extends mysqli not called). ++ (Marcus) ++- Fixed bug #28804 (ini-file section parsing pattern is buggy). ++ (wendland at scan-plus dot de) ++- Fixed bug #28451 (corrupt EXIF headers have unlimited recursive IFD directory ++ entries). (Andrei) ++- Fixed bug #28444 (Cannot access undefined property for object with overloaded ++ property access). (Dmitry) ++- Fixed bug #28442 (Changing a static variables in a class changes it across ++ sub/super classes.) (Marcus) ++- Fixed bug #28324 (HTTP_SESSION_VARS appear when register_long_arrays is ++ Off). (Tony) ++- Fixed bug #28074 (FastCGI: stderr should be written in a FCGI stderr stream). ++ (chris at ex-parrot dot com) ++- Fixed bug #28067 (partially incorrect utf8 to htmlentities mapping). (Derick, ++ Benjamin Greiner) ++- Fixed bug #28041 (SOAP HTTP Digest Access Authentication). (Dmitry) ++- Fixed bug #27633 (Double \r problem on ftp_get in ASCII mode on Win32). (Ilia) ++- Fixed bug #18613 (Multiple OUs in x509 certificate not handled properly). ++ (Jani) ++ ++15 Dec 2004, PHP 5.0.3 ++- Added the %F modifier to *printf to render a non-locale-aware representation ++ of a float with the . as decimal seperator. (Derick) ++- Fixed error handling in mysqli_multi_query. (Georg) ++- Extended the functionality of is_subclass_of() to accept either a class name ++ or an object as first parameter. (Andrey) ++- Fixed potential problems with unserializing invalid serialize data. (Marcus) ++- Fixed bug #32076 (ReflectionMethod::isDestructor() always return true). ++ (Derick, Tony) ++- Fixed bug #31034 (Problem with non-existing iconv header file). (Derick) ++- Fixed bug #30995 (snmp extension does not build with net-snmp 5.2). (Ilia) ++- Fixed bug #30994 (SOAP server unable to handle request with references). ++ (Dmitry) ++- Fixed bug #30990 (allow popen() on *NIX to accept 'b' flag). (Ilia) ++- Fixed bug #30967 (properties in extended mysqli classes don't work). (Georg) ++- Fixed bug #30928 (When Using WSDL, SoapServer doesn't handle private or ++ protected properties). (Dmitry) ++- Fixed bug #30922 (reflective functions crash PHP when interfaces extend ++ themselves). (Tony, Dmitry) ++- Fixed bug #30904 (segfault when recording soapclient into session). (Tony, ++ Dmitry) ++- Fixed bug #30890 (MySQLi testsuite) ++- Fixed bug #30856 (ReflectionClass::getStaticProperties segfaults). (Marcus) ++- Fixed bug #30832 ("!" stripped off comments in xml parser). (Rob) ++- Fixed bug #30799 (SoapServer doesn't handle private or protected properties). ++ (Dmitry) ++- Fixed bug #30783 (Apache crash when using ReflectionFunction:: ++ getStaticVariables()). (Marcus) ++- Fixed bug #30750 (Meaningful error message when upload directory is not ++ accessible). (Ilia) ++- Fixed bug #30685 (Malformed SOAPClient http header reequest). (Dmitry) ++- Fixed bug #30672 (Problem handling exif data in jpeg images at unusual ++ places). (Marcus) ++- Fixed bug #30658 (Ensure that temporary files created by GD are removed). ++ (Ilia) ++- Fixed bug #30645 (def. multi result set support for mysql_connect). (Georg) ++- Fixed bug #30637 (compile with pear error). (Antony) ++- Fixed bug #30587 (array_multisort doesn't separate zvals before ++ changing them). (Tony) ++- Fixed bug #30572 (crash when comparing SimpleXML attribute to a boolean). ++ (Andi) ++- Fixed bug #30566 (attribute namespace URIs are inconsistent when parsing). ++ (Rob) ++- Fixed bug #30490 (PEAR installation fails). (Antony) ++- Fixed bug #30475 (curl_getinfo() may crash in some situations). (Ilia) ++- Fixed bug #30442 (segfault when parsing ?getvariable[][ ). (Tony) ++- Fixed bug #30388 (rename across filesystems loses ownership and ++ permission info). (Tony) ++- Fixed bug #30387 (stream_socket_client async connect was broken). ++ (vnegrier at esds dot com, Wez). ++- Fixed bug #30381 (Strange results with get_class_vars()). (Marcus) ++- Fixed bug #30375 (cal_info() does not work without a parameter). (Ilia) ++- Fixed bug #30362 (stream_get_line() not handling end string correctly). ++ (Ilia) ++- Fixed bug #30359 (SOAP client requests have no port in "Host" field). ++ (Dmitry) ++- Fixed bug #30356 (str_ireplace() does not work on all strings). (Ilia) ++- Fixed bug #30344 (Reflection::getModifierNames() returns too long strings). ++ (Marcus) ++- Fixed bug #30329 (Error Fetching http body, No Content-Length, connection ++ closed or chunked data). (Dmitry) ++- Fixed bug #30282 (segfault when using unknown/unsupported ++ session.save_handler and/or session.serialize_handler). (Tony) ++- Fixed bug #30281 (Prevent non-wbmp images from being detected as such). ++ (Ilia) ++- Fixed bug #30276 (Possible crash in ctype_digit on large numbers). (Ilia) ++- Fixed bug #30230 (exception handler not working with objects). (Marcus) ++- Fixed bug #30224 (Sybase date strings are sometimes not null terminated). ++ (Ilia) ++- Fixed bug #30175 (SOAP results aren't parsed correctly). (Dmitry) ++- Fixed bug #30147 (OO sqlite_fetch_object did not reset error handler). (Wez) ++- Fixed bug #30133 (get_current_user() crashes on Windows). (Edin) ++- Fixed bug #30061 (xml_set_start_namespace_decl_handler not called). (Rob) ++- Fixed bug #30057 (did not detect IPV6 on FreeBSD 4.1). (Wez) ++- Fixed bug #30042 (strtotime does not use second param). (Derick) ++- Fixed bug #30027 (Possible crash inside ftp_get()). ++ (cfield at affinitysolutions dot com) ++- Fixed bug #29954 (array_reduce segfaults when initial value is array). (Tony) ++- Fixed bug #29883 (isset gives invalid values on strings). (Tony, Dmitry) ++- Fixed bug #29801 (Set limit on the size of mmapable data). (Ilia) ++- Fixed bug #29557 (strtotime error). (Derick) ++- Fixed bug #29418 (double free when openssl_csr_new fails). ++ (Kamesh Jayachandran). ++- Fixed bug #29385 (Soapserver always uses std class). (David, Dmitry) ++- Fixed bug #29211 (SoapClient doesn't request wsdl through proxy). (Rob) ++- Fixed bug #28817 (Var problem when extending domDocument). (Georg) ++- Fixed bug #28599 (strtotime fails with zero base time). (Derick) ++- Fixed bug #28598 (Lost support for MS Symbol fonts). (Pierre) ++- Fixed bug #28220 (mb_strwidth() returns wrong width values for some hangul ++ characters). (Moriyoshi) ++- Fixed bug #28228 (NULL decimal separator is not being handled correctly). ++ (Ilia) ++- Fixed bug #28209 (strtotime("now")). (Derick) ++- Fixed bug #27798 (private / protected variables not exposed by ++ get_object_vars() inside class). (Marcus) ++- Fixed bug #27728 (Can't return within a zend_try {} block or the previous ++ bailout state isn't restored. (Andi) ++- Fixed bug #27183 (Userland stream wrapper segfaults on stream_write). ++ (Christian) ++ ++23 Sep 2004, PHP 5.0.2 ++- Added new boolean (fourth) parameter to array_slice() that turns on the ++ preservation of keys in the returned array. (Derick) ++- Added the sorting flag SORT_LOCALE_STRING to the sort() functions which makes ++ them sort based on the current locale. (Derick) ++- Added interface_exists() and make class_exists() only return true for real ++ classes. (Andrey) ++- Added PHP_EOL constant that contains the OS way of representing newlines. ++ (Paul Hudson, Derick) ++- Implemented periodic PCRE compiled regexp cache cleanup, to avoid memory ++ exhaustion. (Andrei) ++- Renamed SoapClient->__call() to SoapClinet->__soapCall(). (Dmitry) ++- Fixed bug with raw_post_data not getting set (Brian) ++- Fixed a file-descriptor leak with phpinfo() and other 'special' URLs (Zeev) ++- Fixed bug #30209 (ReflectionClass::getMethod() lowercases attribute). ++ (Marcus) ++- Fixed bug #30182 (SOAP module processing WSDL file dumps core). (Dmitry) ++- Fixed bug #30045 (Cannot pass big integers (> 2147483647) in SOAP requests). ++ (Dmitry) ++- Fixed bug #29985 (unserialize()/ __PHP_Incomplete_class does not report ++ correctly class name). (Marcus, Tony) ++- Fixed bug #29945 (simplexml_load_file URL limitation 255 char). (Rob) ++- Fixed bug #29873 (No defines around pcntl_*priority definitions). (Derick) ++- Fixed bug #29844 (SOAP doesn't return the result of a valid SOAP request). ++ (Dmitry) ++- Fixed bug #29842 (soapclient return null value). (Dmitry) ++- Fixed bug #29839 (incorrect convert (xml:lang to lang)). (Dmitry) ++- Fixed bug #29830 (SoapServer::setClass() should not export non-public ++ methods). (Dmitry) ++- Fixed bug #29828 (Interfaces no longer work). (Marcus) ++- Fixed bug #29821 (Fixed possible crashes in convert_uudecode() on invalid ++ data). (Ilia) ++- Fixed bug #29808 (array_count_values() breaks with numeric strings). (Ilia) ++- Fixed bug #29805 (HTTP Authentication Issues). (Uwe Schindler) ++- Fixed bug #29795 (SegFault with Soap and Amazon's Web Services). (Dmitry) ++- Fixed bug #29737 (ip2long should return -1 if IP is 255.255.255.255 and FALSE ++ on error). (Tony) ++- Fixed bug #29711 (Changed ext/xml to default to UTF-8 output). (Rob) ++- Fixed bug #29678 (opendir() with ftp:// wrapper segfaults if path does not ++ have trailing slash). (Ilia) ++- Fixed bug #29657 (xml_* functions throw non descriptive error). ++ (Christian, Rob) ++- Fixed bug #29656 (segfault on result and statement properties). (Georg) ++- Fixed bug #29566 (foreach/string handling strangeness (crash)). (Dmitry) ++- Fixed bug #29447 (Reflection API issues). (Marcus) ++- Fixed bug #29296 (Added sslv2 and sslv3 transports). (Wez) ++- Fixed bug #29283 (Invalid statement handle in mysqli on execute). (Georg) ++- Fixed bug #29913 (parse_url() is now binary safe). (Ilia) ++- Fixed bug #27994 (segfault with Soapserver when WSDL-Cache is enabled). ++ (Dmitry) ++- Fixed bug #27791 (Apache 2.0 SAPI build against Apache 2 HEAD). (Joe Orton, ++ Derick) ++- Fixed bug #26737 (private/protected properties not serialized when user ++ declared method __sleep() exists). E_NOTICE thrown when __sleep() returns ++ name of non-existing member. (Andrey, Curt) ++ ++12 Aug 2004, PHP 5.0.1 ++- Changed destructor mechanism so that destructors are called prior to request ++ shutdown. (Marcus) ++- Rewritten UNIX and Windows install help files. (Documentation Team) ++- Updated several libraries bundled with the windows release which now ++ includes libxml2-2.6.11, libxslt-1.1.7 and iconv-1.9.1. (Rob, Edin) ++- Improved and moved ActiveScript SAPI to PECL. (Wez) ++- Fixed bug #29606 (php_strip_whitespace() prints to stdout rather then ++ returning the value). (Ilia) ++- Fixed bug #29577 (MYSQLI_CLIENT_FOUND_ROWS undefined) (Georg) ++- Fixed bug #29573 (Segmentation fault, when exception thrown within ++ PHP function called from XSLT). (Christian) ++- Fixed bug #29522 (accessing properties without connection) (Georg) ++- Fixed bug #29505 (get_class_vars() severely broken when used with arrays). ++ (Marcus) ++- Fixed bug #29490 (.Net object instantiation failed). (Michael Sisolak). ++- Fixed bug #29474 (win32: usleep() doesn't work). (Wez) ++- Fixed bug #29449 (win32: feof() hangs on empty tcp stream). (Wez) ++- Fixed bug #29437 (Possible crash inside array_walk_recursive()). (Ilia) ++- Fixed bug #29431 (crash when parsing invalid address; invalid address ++ returned by stream_socket_recvfrom(), stream_socket_getname()). (Wez) ++- Fixed bug #29409 (Segfault in PHP functions called from XSLT). (Rob) ++- Fixed unloading of dynamically loaded extensions. ++ (Marcus, kameshj at fastmail dot fm) ++- Fixed bug #29395 (sqlite_escape_string() returns bogus data on empty ++ strings). (Ilia, Tony) ++- Fixed bug #29392 (com_dotnet crashes when echo'ing an object). (Wez) ++- Fixed bug #29368 (The destructor is called when an exception is thrown from ++ the constructor). (Marcus) ++- Fixed bug #29354 (Exception constructor marked as both public and protected). ++ (Marcus) ++- Fixed bug #29342 (strtotime() does not handle empty date string properly). ++ (Ilia) ++- Fixed bug #29340 (win32 build produces invalid php_ifx.dll). (Edin) ++- Fixed bug #29335 (fetch functions now use MYSQLI_BOTH as default) (Georg) ++- Fixed bug #29291 (get_class_vars() return names with NULLs). (Marcus) ++- Fixed bug #29264 (gettext extension not working). (Edin) ++- Fixed bug #29258 (variant_date_from_timestamp() does not honour ++ timezone). (Wez) ++- Fixed bug #29256 (error when sending large packets on a socket). (Dmitry) ++- Fixed bug #29236 (memory error when wsdl-cache is enabled). (Dmitry) ++- Fixed bug #29147 (Compile Error in mnoGoSearch functions). (Sergey, Antony) ++- Fixed bug #29132 ($_SERVER["PHP_AUTH_USER"] isn't defined). (Stefan) ++- Fixed bug #29119 (html_entity_decode() misbehaves with UTF-8). (Moriyoshi) ++- Fixed bug #29109 (SoapFault exception: [WSDL] Out of memory). (Dmitry) ++- Fixed bug #29061 (soap extension segfaults). (Dmitry) ++- Fixed bug #28985 (__getTypes() returning nothing on complex WSDL). (Dmitry) ++- Fixed bug #28969 (Wrong data encoding of special characters). (Dmitry) ++- Fixed bug #28895 (ReflectionClass::isAbstract always returns false). (Marcus) ++- Fixed bug #28829 (Thread-unsafety in bcmath elementary values). (Sara) ++- Fixed bug #28464 (catch() does not catch exceptions by interfaces). (Marcus) ++- Fixed bug #27669 (PHP 5 didn't support all possibilities for calling static ++ methods dynamically). (Dmitry) ++- Fixed ReflectionClass::getMethod() and ReflectionClass::getProperty() to ++ raise an ReflectionException instead of returning NULL on failure. ++ (Sebastian) ++- Fixed convert.* filters to consume remaining buckets_in on flush. (Sara) ++- Fixed bug in mysqli->client_version. (Georg) + -<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>> ++13 Jul 2004, PHP 5.0.0 ++- Updated PCRE to provide better error handling in certain cases. (Andrei) ++- Changed doc comments to require a single white space after '/**'. (Marcus) ++- Fixed bug #29019 (Database not closing). (Marcus) ++- Fixed bug #29008 (array_combine() does not handle non-numeric/string keys). ++ (Ilia) ++- Fixed bug #28999 (fixed behaviour of exec() to work as it did in 4.X). (Ilia) ++- Fixed bug #28868 (Internal filter registry not thread safe). (Sara) ++- Fixed bug #28851 (call_user_func_array has typo in error message). (Marcus) ++- Fixed bug #28831 (ArrayObject::offsetGet() does the work of offsetUnset()). ++ (Marcus) ++- Fixed bug #28822 (ArrayObject::offsetExists() works inverted). (Marcus) ++- Fixed bug #28789 (ReflectionProperty getValue() fails on public static ++ members). (Marcus) ++- Fixed bug #28771 (Segfault when using xslt and clone). (Rob) ++- Fixed bug #28751 (SoapServer does not call _autoload()). (Dmitry) ++- Fixed bug #28739 (array_*diff() and array_*intersect() not clearing the fci ++ cache before work). (Andrey) ++- Fixed bug #28721 (appendChild() and insertBefore() unset DOMText).(Rob) ++- Fixed bug #28702 (SOAP does not parse WSDL service address correctly). (Dmitry) ++- Fixed bug #28699 (Reflection api bugs). (Marcus) ++- Fixed bug #28694 (ReflectionExtension::getFunctions() crashes PHP). (Marcus) ++- Fixed bug #28512 (Allocate enough space to store MSSQL data). (Frank) ++- Fixed strip_tags() to correctly handle '\0' characters. (Stefan)