Commits on Jul 2, 2017
  1. Add NEWS entry and a test for Bug#71412

    sgolemon committed Jul 2, 2017
Commits on Jun 20, 2017
  1. Update NEWS for 7.2.0alpha3

    sgolemon committed Jun 20, 2017
  2. Update NEWS for PHP 7.2.0alpha2

    sgolemon committed Jun 20, 2017
  3. NEWS entries for 7.2.0alpha2

    sgolemon committed Jun 20, 2017
Commits on Jun 19, 2017
  1. NEWS

    sgolemon committed Jun 19, 2017
Commits on Jun 18, 2017
  1. NEWS

    sgolemon committed Jun 18, 2017
Commits on Jun 6, 2017
  1. Update NEWS for 7.2.0alpha2

    sgolemon committed Jun 6, 2017
Commits on May 31, 2017
  1. Rename ReflectionClass::isIterateable() to isIterable()

    Iterateable is not a word.
    Add the correct spelling, but keep the original one around
    for BC purposes.
    
    Perhaps we can add ZEND_ACC_DEPRECATED at some later date
    and even remove it from PHP 8.
    sgolemon committed May 31, 2017
Commits on May 28, 2017
  1. Merge branch 'PHP-7.1'

    * PHP-7.1:
      Bugfix #74556 stream_socket_get_name() returns empty string
      Fix abstract name handling to be binary safe
    sgolemon committed May 28, 2017
  2. Merge branch 'PHP-7.0' into PHP-7.1

    * PHP-7.0:
      Bugfix #74556 stream_socket_get_name() returns empty string
      Fix abstract name handling to be binary safe
    sgolemon committed May 28, 2017
  3. Bugfix #74556 stream_socket_get_name() returns empty string

    The original bug report had it returning '\0',
    but with a fix to abstract name handling (6d2d0bb)
    it now actually returns ''.
    
    Neither of these are good, as per unix(7)
    an empty socket name indicates an unbound name
    and "should not be inspected".
    sgolemon committed May 28, 2017
  4. Merge branch 'PHP-7.1'

    * PHP-7.1:
      Bugfix #74598 ftp:// ignores context
    sgolemon committed May 28, 2017
  5. Merge branch 'PHP-7.0' into PHP-7.1

    * PHP-7.0:
      Bugfix #74598 ftp:// ignores context
    sgolemon committed May 28, 2017
Commits on May 18, 2017
  1. Bugfix 63790 - Don't try to use Spoofchecker when unavailable

    ICUSpoofChecker was introduced with 4.2 and may be
    unavailable in some cases.
    Skip this test when its not present.
    sgolemon committed May 18, 2017
Commits on Mar 29, 2017
  1. Update tests and add NEWS entry for phpdbg opcode dump change

    sgolemon committed Mar 29, 2017
Commits on Mar 23, 2017
  1. Merge branch 'PHP-7.0' into PHP-7.1

    * PHP-7.0:
      Fix bug where `yield from` is captured too greedily
    sgolemon committed Mar 23, 2017
  2. Fix bug where `yield from` is captured too greedily

    In the following piece of code:
    
    ```php
    function from1234($x) {
      return $x;
    }
    function foo($x) {
      yield from1234($x);
    }
    ```
    
    The statement inside foo is taken as `yield from` `1234($x)`
    which is neither the intent, nor even legal syntax for an fcall.
    
    Do a lookahead for breaking non-label characters after the
    `yield from` and only accept it if they occur.
    sgolemon committed Mar 23, 2017
Commits on Mar 17, 2017
Commits on Mar 14, 2017
  1. Minor optimizations to array_keys()/array_values()

    array_values():
    When the input is an empty array or a packed array with no gaps,
    return the original array.
    
    array_keys():
    When the input is an empty array, return the original array.
    When the input is a packed array with no holes
    (and no search key specified), populate the return with
    a simple range(0, count($input) - 1)
    sgolemon committed Mar 14, 2017
Commits on Mar 9, 2017
  1. Merge branch 'PHP-7.0' into PHP-7.1

    * PHP-7.0:
      Add NEWS entry for bab0b99
    sgolemon committed Mar 9, 2017
  2. Add NEWS entry for bab0b99

    sgolemon committed Mar 9, 2017
Commits on Oct 12, 2016
  1. Clear FG(user_stream_current_filename) when bailing out

    If a userwrapper opener E_ERRORs then FG(user_stream_current_filename)
    would remain set until the next request and would not be pointing
    at unallocated memory.
    
    Catch the bailout, clear the variable, then continue bailing.
    
    Closes https://bugs.php.net/bug.php?id=73188
    sgolemon committed Oct 12, 2016
Commits on Jul 27, 2016
  1. Bugfix#70896 gmp_fact() silently ignores non-integer inputs

    Factorials only make sense for integer inputs.
    To do something factorial-like, the Gamma Function
    should be used instead.
    However, at this point it's no longer a factorial.
    
    For PHP/GMP, we'll raise a warning on trying to use
    a non-integer input, but carry on returning the truncated
    value as we used to (avoiding BC breakage).
    sgolemon committed Jul 27, 2016
Commits on May 14, 2016
  1. Implement FIPS 180-4 algos: sha512/256 and sha512/224

    These algorithms are simple extensions to the existing sha512 algo
    using different initialization vectors and producing truncated output.
    sgolemon committed May 14, 2016
Commits on Apr 18, 2016
Commits on Oct 16, 2015
  1. Add missing NEWS entry, copyright notice, and vim settings

    Should have gone with d244b54
    sgolemon committed with sgolemon Oct 16, 2015
Commits on Aug 19, 2014
  1. Merge branch 'PHP-5.6'

    * PHP-5.6:
      Switch use of strtok() to gd_strtok_r()
    sgolemon committed Aug 19, 2014
  2. Merge branch 'PHP-5.5' into PHP-5.6

    * PHP-5.5:
      Switch use of strtok() to gd_strtok_r()
    sgolemon committed Aug 19, 2014
  3. Merge branch 'PHP-5.4' into PHP-5.5

    * PHP-5.4:
      Switch use of strtok() to gd_strtok_r()
    
    Conflicts:
    	NEWS
    sgolemon committed Aug 19, 2014
  4. Switch use of strtok() to gd_strtok_r()

    strtok() is not thread safe, so this will potentially break in
    very bad ways if used in ZTS mode.
    
    I'm not sure why gd_strtok_r() exists since it seems to do the
    same thing as strtok_r(), but I'll assume it's a portability
    decision and do as the Romans do.
    sgolemon committed Aug 19, 2014
Commits on Aug 14, 2014
Commits on Jul 6, 2014
  1. Fix handling of session user module custom handlers.

    According to the documentation, returning TRUE from
    user based session handlers should indicate success,
    while returning FALSE should indicate failure.
    
    The existing logic relied on casting the return value
    to an integer and returning that from the function.
    However, the internal handlers use SUCCESS/FAILURE
    where SUCCESS == 0, and FAILURE == -1, so the following
    behavior map occurs:
    
      return false; => return 0; => return SUCCESS
      return true; => return 1; => return <undefined>
    
    Since the session API checks against FAILURE,
    both boolean responses wind up appearing like "not FAILURE".
    
    This diff reasserts boolean responses to behave as
    documented and introduces some special handling
    for integer responses of 0 and -1 so that code can be
    written for older and newer versions of PHP.
    sgolemon committed May 15, 2014