]> granicus.if.org Git - php/commitdiff
Merge branch 'pull-request/1303'
authorJoe Watkins <krakjoe@php.net>
Fri, 6 Jan 2017 05:46:10 +0000 (05:46 +0000)
committerJoe Watkins <krakjoe@php.net>
Fri, 6 Jan 2017 05:48:31 +0000 (05:48 +0000)
* pull-request/1303:
  Distinguish between unmatched subpatterns and empty matches in preg_*()
  news entry for PR #1303

1  2 
NEWS
ext/pcre/php_pcre.c

diff --cc NEWS
index 6520d887eda4e34640538cb9bf3d81c85e662967,e1d67eeadb48b5699bd76bb202b33be6df31e3f4..087f8453d4652aac5fc3a5ec95c9a0f50ac5fb22
--- 1/NEWS
--- 2/NEWS
+++ b/NEWS
 -PHP                                                                        NEWS
 +PHP                                                                        NEWS
  |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 -?? ??? 20??, PHP 7.0.0
 +?? ??? ????, PHP 7.2
  
 -- CLI server:
 -  . Refactor MIME type handling to use a hash table instead of linear search.
 -    (Adam)
 -  . Update the MIME type list from the one shipped by Apache HTTPD. (Adam)
 -  . Added support for SEARCH WebDav method. (Mats Lindh)
 +- Calendar:
 +  . Fix integer overflows (Joshua Rogers)
  
  - Core:
 -  . Fixed bug #68475 (Add support for $callable() sytnax with 'Class::method').
 -    (Julien, Aaron Piotrowski)
 -  . Fixed bug #69485 (Double free on zend_list_dtor). (Laruence)
 -  . Fixed bug #69427 (Segfault on magic method __call of private method in 
 -    superclass). (Laruence)
 -  . Improved __call() and __callStatic() magic method handling. Now they are
 -    called in a stackless way using ZEND_CALL_TRAMPOLINE opcode, without
 -    additional stack frame. (Laruence, Dmitry)
 -  . Optimized strings concatenation. (Dmitry, Laruence)
 -  . Fixed weird operators behavior. Division by zero now emits warning and 
 -    returns +/-INF, modulo by zero and intdid() throws an exception, shifts
 -    by negative offset throw exceptions. Compile-time evaluation of division
 -    by zero is disabled. (Dmitry, Andrea, Nikita)
 -  . Fixed bug #69371 (Hash table collision leads to inaccessible array keys).
 -    (Laruence)
 -  . Fixed bug #68933 (Invalid read of size 8 in zend_std_read_property).
 -    (Laruence, arjen at react dot com)
 -  . Fixed bug #68252 (segfault in Zend/zend_hash.c in function
 -    _zend_hash_del_el). (Laruence)
 -  . Fixed bug #65598 (Closure executed via static autoload incorrectly marked as
 -    static). (Nikita)
 -  . Fixed bug #66811 (Cannot access static::class in lambda, writen outside of a
 -    class). (Nikita)
 -  . Fixed bug #69568 (call a private function in closure failed). (Nikita)
 -  . Added PHP_INT_MIN constant. (Andrea)
 -  . Added Closure::call() method. (Andrea)
 -  . Fixed bug #67959 (Segfault when calling phpversion('spl')). (Florian)
 -  . Implemented the RFC `Catchable "Call to a member function bar() on a
 -    non-object"`. (Timm)
 -  . Added options parameter for unserialize allowing to specify acceptable
 -    classes (https://wiki.php.net/rfc/secure_unserialize). (Stas)
 -  . Fixed bug #63734 (Garbage collector can free zvals that are still
 -    referenced). (Dmitry)
 -  . Removed ZEND_ACC_FINAL_CLASS, promoting ZEND_ACC_FINAL as final class 
 -    modifier. (Guilherme Blanco)
 -  . is_long() & is_integer() is now an alias of is_int(). (Kalle)
 -  . Implemented FR #55467 (phpinfo: PHP Variables with $ and single quotes). (Kalle)
 -  . Added ?? operator. (Andrea)
 -  . Added <=> operator. (Andrea)
 -  . Added \u{xxxxx} Unicode Codepoint Escape Syntax. (Andrea)
 -  . Fixed oversight where define() did not support arrays yet const syntax did.
 -    (Andrea, Dmitry)
 -  . Use "integer" and "float" instead of "long" and "double" in ZPP, type hint
 -    and conversion error messages. (Andrea)
 -  . Implemented FR #55428 (E_RECOVERABLE_ERROR when output buffering in output
 -    buffering handler). (Kalle)
 -  . Removed scoped calls of non-static methods from an incompatible $this
 -    context. (Nikita)
 -  . Removed support for #-style comments in ini files. (Nikita)
 -  . Removed support for assigning the result of new by reference. (Nikita)
 -  . Invalid octal literals in source code now produce compile errors, fixes
 -    PHPSadness #31. (Andrea)
 -  . Removed dl() function on fpm-fcgi. (Nikita)
 -  . Removed support for hexadecimal numeric strings. (Nikita)
 -  . Removed obsolete extensions and SAPIs. See the full list in UPGRADING. (Anatol)
 -  . Added NULL byte protection to exec, system and passthru. (Yasuo)
 -  . Added error_clear_last() function. (Reeze Xia)
 -  . Fixed bug #68797 (Number 2.2250738585072012e-308 converted incorrectly).
 +  . Removed IS_TYPE_IMMUTABLE (it's the same as COPYABLE & !REFCOUNTED). (Dmitry)
 +  . Removed the sql.safe_mode directive. (Kalle)
 +  . Removed support for Netware. (Kalle)
 +  . Fixed bug #54535 (WSA cleanup executes before MSHUTDOWN). (Kalle)
 +  . Implemented FR #69791 (Disallow mail header injections by extra headers)
 +    (Yasuo)
 +  . Implemented FR #49806 (proc_nice() for Windows). (Kalle)
 +  . Fix pthreads detection when cross-compiling (ffontaine)
 +  . Fixed memory leaks caused by exceptions thrown from destructors. (Bob,
 +    Dmitry).
 +  . Fixed bug #73215 (uniqid() should use better random source). (Yasuo)
 +  . Fixed bug #73337 (try/catch not working with two exceptions inside a same
 +    operation). (Dmitry)
 +  . Implemented FR #72768 (Add ENABLE_VIRTUAL_TERMINAL_PROCESSING flag for
 +    php.exe). (Michele Locati)
 +  . Implemented "Convert numeric keys in object/array casts" RFC, fixes
 +    bugs #53838, #61655, #66173, #70925, #72254, etc. (Andrea)
 +  . Raised minimum supported Windows versions to Windows 7/Server 2008 R2.
      (Anatol)
 -  . Improved zend_qsort(using hybrid sorting algo) for better performance, 
 -    and also renamed zend_qsort to zend_sort. (Laruence)
 -  . Added stable sorting algo zend_insert_sort. (Laruence)
 -  . Implemented the RFC `Scalar Type Decalarations v0.5`. (Anthony)
 -  . Implemented the RFC `Group Use Declarations`. (Marcio)
 -  . Implemented the RFC `Continue Output Buffering`. (Mike)
 -  . Implemented the RFC `Constructor behaviour of internal classes`. (Dan, Dmitry)
 -  . Implemented the RFC `Fix "foreach" behavior`. (Dmitry)
 -  . Implemented the RFC `Generator Delegation`. (Bob)
 -  . Implemented the RFC ` Anonymous Class Support`. (Joe, Nikita, Dmitry)
 -  . Fixed bug #69511 (Off-by-one buffer overflow in php_sys_readlink).
 -    (Jan Starke, Anatol)
 -
 -- Curl:
 -  . Fixed bug #68937 (Segfault in curl_multi_exec). (Laruence)
 -  . Removed support for unsafe file uploads. (Nikita)
  
  - Date:
 -  . Fixed day_of_week function as it could sometimes return negative values
 -    internally. (Derick)
 -  . Removed $is_dst parameter from mktime() and gmmktime(). (Nikita)
 -  . Removed date.timezone warning
 -    (https://wiki.php.net/rfc/date.timezone_warning_removal). (Bob)
 -  . Added "v" DateTime format modifier to get the 3-digit version of fraction 
 -    of seconds. (Mariano Iglesias)
 -  . Implemented FR #69089: Added DateTime::RFC3339_EXTENDED to output in 
 -    RFC3339 Extended format which includes fraction of seconds (Mariano 
 -    Iglesias)
 -
 -- DBA:
 -  . Fixed bug #62490 (dba_delete returns true on missing item (inifile)). (Mike)
 -  . Fixed bug #68711 (useless comparisons). (bugreports at internot dot info)
 +  . Fixed bug #69587 (DateInterval properties and isset). (jhdxr)
  
  - DOM:
 -  . Made DOMNode::textContent writeable. (Tjerk)
 -
 -- GD:
 -  . Made fontFetch's path parser thread-safe. (Sara)
 -
 -- Fileinfo:
 -  . Fixed bug #66242 (libmagic: don't assume char is signed). (ArdB)
 -
 -- Filter:
 -  . New FILTER_VALIDATE_DOMAIN and better RFC conformance for FILTER_VALIDATE_URL. (Kevin Dunglas)
 +  . Fixed bug #67474 (getElementsByTagNameNS filter on default ns). (aboks)
 +
 +- EXIF:
 +  . Added support for vendor specific tags for the following formats:
 +    Samsung, DJI, Panasonic, Sony, Pentax, Minolta & Sigma/Foveon. (Kalle)
 +  . Fixed bug #72682 (exif_read_data() fails to read all data for some
 +    images). (Kalle)
 +  . Fixed bug #71534 (Type confusion in exif_read_data() leading to heap
 +    overflow in debug mode). (hlt99 at blinkenshell dot org, Kalle)
 +  . Fixed bug #68547 (Exif Header component value check error).
 +    (sjh21a at gmail dot com, Kalle)
 +  . Fixed bug #66443 (Corrupt EXIF header: maximum directory nesting level
 +    reached for some cameras). (Kalle)
 +  . Fixed Redhat bug #1362571 (PHP not returning full results for
 +    exif_read_data function). (Kalle)
  
  - FPM:
 -  . Fixed bug #68945 (Unknown admin values segfault pools). (Laruence)
 -  . Fixed bug #65933 (Cannot specify config lines longer than 1024 bytes). (Chris Wright)
 -  . Implement request #67106 (Split main fpm config). (Elan Ruusamäe, Remi)
 +  . Configuration to limit fpm slow log trace callers. (Sannis)
  
 -- FTP:
 -  . Fixed bug #69082 (FTPS support on Windows). (Anatol) 
 -
 -- Intl:
 -  . Removed deprecated aliases datefmt_set_timezone_id() and
 -    IntlDateFormatter::setTimeZoneID(). (Nikita)
 -
 -- JSON
 -  . Replace non-free JSON parser with a parser from Jsond extension, fixes #63520
 -    (JSON extension includes a problematic license statement). (Jakub Zelenka)
 -  . Fixed bug #68938 (json_decode() decodes empty string without error).
 -    (jeremy at bat-country dot us)
 +- GD:
 +  . Implemented imageresolution as getter and setter (Christoph)
  
 -- LDAP
 -  . Fixed bug #47222 (Implement LDAP_OPT_DIAGNOSTIC_MESSAGE). (Andreas Heigl)
 +- GMP:
 +  . Fixed bug #70896 (gmp_fact() silently ignores non-integer input). (Sara)
  
 -- LiteSpeed:
 -  . Updated LiteSpeed SAPI code from V5.5 to V6.6. (George Wang)
 +- Mbstring:
 +  . Implemented request #66024 (mb_chr() and mb_ord()). (Masakielastic, Yasuo)
 +  . Implemented request #65081 (mb_scrub()). (Masakielastic, Yasuo)
 +  . Implemented request #69086 (enhancement for mb_convert_encoding() that
 +    handles multibyte replacement char nicely). (Masakielastic, Yasuo)
 +  . Added array input support to mb_convert_encoding(). (Yasuo)
 +  . Added array input support to mb_check_encoding(). (Yasuo)
 +  . Fixed bug #69079 (enhancement for mb_substitute_character). (masakielastic)
  
  - Mcrypt:
 -  . Fixed possible read after end of buffer and use after free. (Dmitry)
 -  . Removed mcrypt_generic_end() alias. (Nikita)
 -  . Removed mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb(), mcrypt_ofb(). (Nikita)
 -
 -- Opcache:
 -  . Fixed bug #69688 (segfault with eval and opcache fast shutdown).
 -    (Laruence)
 -  . Added experimental (disabled by default) file based opcode cache.
 -    (Dmitry, Laruence, Anatol)
 -  . Fixed bug with try blocks being removed when extended_info opcode
 -    generation is turned on. (Laruence)
 -  . Fixed bug #68644 (strlen incorrect : mbstring + func_overload=2 +UTF-8
 -    + Opcache). (Laruence)
 -
 -- OpenSSL:
 -  . Added "alpn_protocols" SSL context option allowing encrypted client/server
 -    streams to negotiate alternative protocols using the ALPN TLS extension when
 -    built against OpenSSL 1.0.2 or newer. Negotiated protocol information is
 -    accessible through stream_get_meta_data() output.
 -  . Removed "CN_match" and "SNI_server_name" SSL context options. Use automatic
 -    detection or the "peer_name" option instead. (Nikita)
 -
 -- pcntl:
 -  . Fixed bug #60509 (pcntl_signal doesn't decrease ref-count of old handler
 -    when setting SIG_DFL). (Julien)
 -  . Added wifcontinued and wcontinued. (xilon-jul)
 -  . Added rusage support to pcntl_wait() and pcntl_waitpid(). (Anton Stepanenko,
 -    Tony)
 +  . The deprecated mcrypt extension has been moved to PECL. (leigh)
 +
 +- mysqlnd:
 +  . Fixed bug #73800 (sporadic segfault with MYSQLI_OPT_INT_AND_FLOAT_NATIVE). 
 +      (vanviegen)
  
 -  . Removed support for the /e (PREG_REPLACE_EVAL) modifier. (Nikita)
+ - PCRE:
++  . Fixed bug #61780 (Inconsistent PCRE captures in match results). (cmb)
  - PDO:
 -  . Fixed bug #59450 (./configure fails with "Cannot find php_pdo_driver.h").
 -    (maxime dot besson at smile dot fr)
 -
 -- PDO_mysql:
 -  . Fixed bug #68424 (Add new PDO mysql connection attr to control multi
 -    statements option). (peter dot wolanin at acquia dot com)
 +  . Add "Sent SQL" to debug dump for emulated prepares. (Adam Baratz)
  
 -- PDO_pgsql:
 -  . Removed PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT attribute in favor of
 -    ATTR_EMULATE_PREPARES). (Nikita)
 -
 -- Reflection
 -  . Fixed inheritance chain of Reflector interface. (Tjerk)
 -  . Added ReflectionGenerator class. (Bob)
 +- PDO_DBlib:
 +  . Fixed bug #73234 (Emulated statements let value dictate parameter type).
 +    (Adam Baratz)
 +  . Fixed bug #73396 (bigint columns are returned as strings). (Adam Baratz)
  
  - Session:
 -  . Fixed bug #67694 (Regression in session_regenerate_id()). (Tjerk)
 -  . Fixed bug #68941 (mod_files.sh is a bash-script). (bugzilla at ii.nl, Yasuo)
 +  . Fixed bug #73461 (Prohibit session save handler recursion). (Yasuo)
 +  . PR #2233 Removed register_globals related code and "!" can be used as $_SESSION key name. (Yasuo)
 +  . Improved bug #73100 fix. 'user' save handler can only be set by session_set_save_handler()
  
  - SOAP:
 -  . Fixed bug #68361 (Segmentation fault on SoapClient::__getTypes). (Laruence)
 -
 -- SPL:
 -  . Changed ArrayIterator implementation using zend_hash_iterator_... API.
 -    Allowed modification of iterated ArrayObject using the same behavior
 -    as proposed in `Fix "foreach" behavior`. Removed "Array was modified
 -    outside object and internal position is no longer valid" hack. (Dmitry)
 -  . Implemented #67886 (SplPriorityQueue/SplHeap doesn't expose extractFlags
 -    nor curruption state). (Julien)
 -  . Fixed bug #66405 (RecursiveDirectoryIterator::CURRENT_AS_PATHNAME
 -    breaks the RecursiveIterator). (Paul Garvin)
 -
 -- Sqlite3:
 -  . Fixed bug #68260 (SQLite3Result::fetchArray declares wrong
 -    required_num_args). (Julien)
 +  . Fixed bug #69137 (Peer verification fails when using a proxy with SoapClient)
 +    (Keith Smiley)
 +
 +- SQLite3:
 +  . Update to Sqlite 3.15.2. (cmb)
  
  - Standard:
 -  . Fixed bug #69523 (Cookie name cannot be empty). (Christoph M. Becker)
 -  . Fixed bug #69325 (php_copy_file_ex does not pass the argument).
 -    (imbolk at gmail dot com)
 -  . Fixed bug #69299 (Regression in array_filter's $flag argument in PHP 7).
 -    (Laruence)
 -  . Removed call_user_method() and call_user_method_array() functions. (Kalle)
 -  . Fixed user session handlers (See rfc:session.user.return-value). (Sara)
 -  . Added intdiv() function. (Andrea)
 -  . Improved precision of log() function for base 2 and 10. (Marc Bennewitz)
 -  . Remove string category support in setlocale(). (Nikita)
 -  . Remove set_magic_quotes_runtime() and its alias magic_quotes_runtime().
 -    (Nikita)
 -  . Fixed bug #65272 (flock() out parameter not set correctly in windows).
 -    (Daniel Lowrey)
 -  . Added preg_replace_callback_array function. (Wei Dai)
 -  . Deprecated salt option to password_hash. (Anthony)
 -  . Fixed bug #69686 (password_verify reports back error on PHP7 will null
 -    string). (Anthony)
 -  . Added Windows support for getrusage(). (Kalle)
 -
 -- Streams:
 -  . Fixed bug #68532 (convert.base64-encode omits padding bytes).
 -    (blaesius at krumedia dot de)
 -  . Removed set_socket_blocking() in favor of its alias stream_set_blocking().
 -    (Nikita)
 -
 -- XSL:
 -  . Fixed bug #64776 (The XSLT extension is not thread safe). (Mike)
 -  . Removed xsl.security_prefs ini option. (Nikita)
 -
 -- Zlib:
 -  . Added deflate_init(), deflate_add(), inflate_init(), inflate_add()
 -    functions allowing incremental/streaming compression/decompression.
 -    (Daniel Lowrey & Bob Weinand)
 -
 -- Zip:
 -  . Added ZipArchive::setCompressionName and ZipArchive::setCompressionIndex
 -    methods (Remi, Cedric Delmas)
 -  . Update bundled libzip to 1.0.1 (Remi, Anatol)
 -  . Fixed bug #67161. (ZipArchive::getStream() returns NULL for certain file)
 -    (Christoph M. Becker)
 +  . Add subject to mail log. (tomsommer)
 +  . Fixed bug #31875 (get_defined_functions additional param to exclude
 +      disabled functions). (willianveiga)
 +
 +- XML:
 +  . Moved utf8_encode() and utf8_decode() to the Standard extension. (Andrea)
 +  . Fixed bug #72135 (malformed XML causes fault) (edgarsandi)
 +
 +- XMLRPC:
 +  . Use Zend MM for allocation in bundled libxmlrpc (Joe)
 +
 +- ZIP:
 +  . Fixed bug #70103 (ZipArchive::addGlob ignores remove_all_path option). (cmb)
  
  <<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>
Simple merge