Compare commits

..
Author SHA1 Message Date
Stanislav Malyshev d005ed9681 5.5.3 2013-08-19 21:46:43 -07:00
Stanislav Malyshev b7f033bd5d fix using wrong buffer pointer 2013-08-19 21:41:53 -07:00
David Soria Parra 29b4532f61 PHP 5.5.2 2013-08-15 22:42:04 +02:00
David Soria Parra f12f3abe8e Prepare news for PHP-5.5.2 2013-08-15 22:40:38 +02:00
Christopher Jones 82dd6b94f2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
2013-08-14 21:33:27 -07:00
Christopher Jones 5a186a3e0a Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Fixed #65431 in zend_exception.c by Sixd
2013-08-14 21:32:13 -07:00
Christopher Jones ba30c78d5c Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Fixed #65431 in zend_exception.c by Sixd
2013-08-14 21:32:07 -07:00
Christopher Jones cd14de94d2 Reduce compiler noise by removing unused variables and labels 2013-08-14 21:06:59 -07:00
Xinchen Hui cb361ed27e Merge branch 'PHP-5.4' into PHP-5.5 2013-08-15 11:49:59 +08:00
Xinchen Hui 8280393828 Fixed #65431 in zend_exception.c by Sixd 2013-08-15 11:47:44 +08:00
Christopher Jones 39612afc72 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Reduce (some) compile noise of 'unused variable' and 'may be used uninitialized' warnings.

Conflicts:
	ext/dba/libinifile/inifile.c
2013-08-14 20:43:25 -07:00
Christopher Jones 9ad97cd489 Reduce (some) compile noise of 'unused variable' and 'may be used uninitialized' warnings. 2013-08-14 20:36:50 -07:00
Christopher Jones 8c61758dc7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Skip test if SKIP_ONLINE_TESTS set
2013-08-14 15:45:46 -07:00
Christopher Jones 9d62807190 Skip test if SKIP_ONLINE_TESTS set 2013-08-14 15:45:06 -07:00
Stanislav Malyshev 2b9f5ac252 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix CVE-2013-4073 - handling of certs with null bytes
  Fix CVE-2013-4073 - handling of certs with null bytes
2013-08-13 22:25:47 -07:00
Stanislav Malyshev 7f69f07fc1 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fix CVE-2013-4073 - handling of certs with null bytes
2013-08-13 22:24:29 -07:00
Stanislav Malyshev dcea4ec698 Fix CVE-2013-4073 - handling of certs with null bytes 2013-08-13 22:24:11 -07:00
Stanislav Malyshev 2874696a5a Fix CVE-2013-4073 - handling of certs with null bytes 2013-08-13 22:20:33 -07:00
Xinchen Hui f3d18add08 Merge branch 'PHP-5.4' into PHP-5.5 2013-08-14 11:44:37 +08:00
Xinchen Hui f4dc2240a0 Fixed #65431 (Discarded qualifiers from pointer target warnings when using --enable-dtrace) by Sixd 2013-08-14 11:42:39 +08:00
Anatol Belski bab33f7e05 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  removed unused vars
2013-08-12 15:52:50 +02:00
Anatol Belski 72aacbf735 removed unused vars 2013-08-12 15:52:15 +02:00
Anatol Belski 87198989cd Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed strndup usage in the pgsql ext
2013-08-12 15:45:26 +02:00
Anatol Belski 4134ebec8e fixed strndup usage in the pgsql ext 2013-08-12 15:44:47 +02:00
Stanislav Malyshev 76fd13f742 use mysqlnd, some tests fail otherwise 2013-08-11 01:36:59 -07:00
Stanislav Malyshev 29f1aa2618 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  ensure notices are not ignored when tests need them
2013-08-10 23:12:51 -07:00
Stanislav Malyshev cf39c3d638 ensure notices are not ignored when tests need them 2013-08-10 23:12:04 -07:00
Antonio Diaz Ruiz 1a5c460ea2 Embeds the content of the DTD in the DOCTYPE declaration of the XML files. 2013-08-10 18:02:08 -07:00
Antonio Diaz Ruiz 5f5ff92bc0 Adds 2 new xml files which include the dtd path relative to the base directory for the php source code.
It fixs the fail on the load of the dtd in the tests modified by this commit.
2013-08-10 18:02:00 -07:00
Antonio Diaz Ruiz 24f36934ad Adds files: error 1 to 5 and variation 1 to 4
tests for error1: not well formed xml

tests for error2: not well formed xml attribute without colon

tests for error2: not well formed xml, typo

tests for error4: wrong xml version

tests for error5: extra content at the end of the doc

tests libxml_dtd_load

tests libxml_dtd_valid

tests for libdtd_noerror

tests for LIBXML_DTDATTR, LIBXML_NOCDATA, LIBXML_NOENT and LIBXML_NOBLANKS

the basic behavior

fix comments
2013-08-10 18:01:54 -07:00
Stanislav Malyshev 473d66553d Merge branch 'pull-request/325' into PHP-5.5
* pull-request/325:
  Add schema default/fixed value support
2013-08-10 17:56:23 -07:00
Stanislav Malyshev 6b4971a29b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix #61345: fix install of CGI binary
2013-08-10 17:35:52 -07:00
Michael Heimpold 36b759d1dd Fix #61345: fix install of CGI binary
When CLI was not built but only CGI binary, then a sequence of

$ ./buildconf
$ ./configure  --prefix=/usr/local/phpcgi --disable-cli
$ make -j8
$ sudo rm -rf /usr/local/phpcgi
$ sudo make install

results in the following error:

/bin/bash /srv/smb/php-src.test/libtool --silent --preserve-dup-deps --mode=install cp ext/opcache/opcache.la /srv/smb/php-src.test/modules
Installing shared extensions:     /usr/local/phpcgi/lib/php/extensions/no-debug-non-zts-20121212/
Installing PHP CGI binary:        /usr/local/phpcgi/bin/
cp: cannot create regular file `/usr/local/phpcgi/bin/#INST@28245#': No such file or directory
make: *** [install-cgi] Fehler 1

The solution is to create the binary directory before copying the
CGI binary as e.g. CLI does.

Signed-off-by: Oliver Metz <oliver.metz@gmx.de>

[extensive commit message]

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2013-08-10 17:35:09 -07:00
Stanislav Malyshev 3f99ba6351 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix #61345: fix install of CGI binary
2013-08-10 17:33:28 -07:00
Michael Heimpold cdedee3fa1 Fix #61345: fix install of CGI binary
When CLI was not built but only CGI binary, then a sequence of

$ ./buildconf
$ ./configure  --prefix=/usr/local/phpcgi --disable-cli
$ make -j8
$ sudo rm -rf /usr/local/phpcgi
$ sudo make install

results in the following error:

/bin/bash /srv/smb/php-src.test/libtool --silent --preserve-dup-deps --mode=install cp ext/opcache/opcache.la /srv/smb/php-src.test/modules
Installing shared extensions:     /usr/local/phpcgi/lib/php/extensions/no-debug-non-zts-20121212/
Installing PHP CGI binary:        /usr/local/phpcgi/bin/
cp: cannot create regular file `/usr/local/phpcgi/bin/#INST@28245#': No such file or directory
make: *** [install-cgi] Fehler 1

The solution is to create the binary directory before copying the
CGI binary as e.g. CLI does.

Signed-off-by: Oliver Metz <oliver.metz@gmx.de>

[extensive commit message]

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2013-08-10 17:33:24 -07:00
Stanislav Malyshev 143ec70638 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  php.ini-development/production: remove php_zip.dll
  Update NEWS
2013-08-10 17:31:48 -07:00
Jan Ehrhardt 503d39d925 php.ini-development/production: remove php_zip.dll
Remove the reference to php_zip.dll in php.ini-production and
php.ini-development, because php_zip.dll does not exist anymore since
PHP 5.3
2013-08-10 17:31:40 -07:00
Yasuo Ohgaki ac538e5e16 Update NEWS 2013-08-11 07:15:55 +09:00
Yasuo Ohgaki bff1a96a0f Update NEWS 2013-08-11 07:15:01 +09:00
Yasuo Ohgaki 2df95b1354 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed possible buffer overflow under Windows. Note: Not a security fix.
2013-08-11 06:43:37 +09:00
Yasuo Ohgaki 0ad81ac18a Fixed possible buffer overflow under Windows. Note: Not a security fix. 2013-08-11 06:43:01 +09:00
Yasuo Ohgaki 9d95a1a7d1 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed Bug #62015 Changed session.auto_start to PHP_INI_PERDIR. It is simply wrong and never worked if the value is changed at runtime
2013-08-10 18:29:29 +09:00
Yasuo Ohgaki e9b128c1bf Fixed Bug #62015 Changed session.auto_start to PHP_INI_PERDIR. It is simply wrong and never worked if the value is changed at runtime 2013-08-10 18:29:13 +09:00
Dmitry Stogov b27f6826d4 Replce ZEND_FETCH_* instructions with IS_CV if possible 2013-08-09 17:47:47 +04:00
Michael Wallner b33824bfea Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix bug #65391
  Update NEWS
2013-08-09 11:21:50 +02:00
Michael Wallner ac28283beb fix bug #65391
Unable to send vary header user-agent when
ob_start('ob_gzhandler') is called
2013-08-09 11:14:04 +02:00
Yasuo Ohgaki 22d7002462 Update NEWS 2013-08-09 11:21:54 +09:00
Yasuo Ohgaki fc7fe62e3b Update NEWS 2013-08-09 11:19:56 +09:00
Andrey Hristov c9243344a0 Merge branch 'PHP-5.4' into PHP-5.5 2013-08-08 14:05:08 +02:00
Andrey Hristov a188693a27 Merge branch 'PHP-5.4' of ssh://git.php.net/php-src into PHP-5.4 2013-08-08 14:04:19 +02:00
Andrey Hristov d3dae9a616 Merge branch 'PHP-5.4' into PHP-5.5 2013-08-08 14:03:11 +02:00
Andrey Hristov 80fe5461a9 Merge branch 'PHP-5.3' into PHP-5.4 2013-08-08 14:03:00 +02:00
Andrey Hristov 1e2f72d6b6 Merge branch 'PHP-5.5' of ssh://git.php.net/php-src into PHP-5.5 2013-08-08 13:52:09 +02:00
Andrey Hristov 82a7ec72de add some tracing 2013-08-08 13:51:55 +02:00
Christopher Jones ae4f8b2ab0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Remove tabs on blanklines in Makefile sources. This prevents a 'suspicious line' warning when editing & saving Makefile using Emacs.
2013-08-07 13:14:46 -07:00
Christopher Jones 4ed133c4e2 Remove tabs on blanklines in Makefile sources. This prevents a
'suspicious line' warning when editing & saving Makefile using Emacs.
2013-08-07 13:14:00 -07:00
Christopher Jones c932d532c8 One more './configure --help' alignment fix 2013-08-06 11:23:02 -07:00
Christopher Jones c6d977dd39 Fix long-standing visual pain point: the misalignment of './configure help' text.
Whitespace changes and a couple of grammar fixes.
2013-08-06 11:06:09 -07:00
Christopher Jones 930183f961 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Xinchen Hui
# Via Xinchen Hui
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Re-fix Bug #65372 (Segfault in gc_zval_possible_root when return reference fails)
2013-08-06 10:01:43 -07:00
Christopher Jones 2743c3aac8 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
# By Xinchen Hui
# Via Xinchen Hui
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Re-fix Bug #65372 (Segfault in gc_zval_possible_root when return reference fails)
2013-08-06 10:01:41 -07:00
Xinchen Hui aa042d0c35 Merge branch 'PHP-5.4' into PHP-5.5 2013-08-06 15:39:33 +08:00
Xinchen Hui a831499b4a Re-fix Bug #65372 (Segfault in gc_zval_possible_root when return reference fails)
Missed a zval_copy_ctor there
2013-08-06 15:37:20 +08:00
Christopher Jones 6184753fab Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  PHP 5.5.2 has already branched
  Doh. PHP 5.5 NEWS needs own commit.
2013-08-05 16:10:06 -07:00
Christopher Jones 6e505f4969 PHP 5.5.2 has already branched 2013-08-05 16:03:22 -07:00
Christopher Jones 4f87f26d06 Doh. PHP 5.5 NEWS needs own commit. 2013-08-05 15:56:46 -07:00
Christopher Jones 0cd77475e0 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Rasmus Lerdorf (6) and others
# Via Christopher Jones (5) and others
* 'PHP-5.5' of https://git.php.net/repository/php-src: (26 commits)
  NEWS for recent DTrace merges. Remove redundant 'cp' during DTrace install.
  Fixed bug #62691 (solaris sed has no -i switch) Make 'make distclean' remove generated DTrace .h file
  Enable dtrace probes on linux as they are compatible with systemtap
  Fixed bug #63706: Cannot build PHP-5.5 with --enable-dtrace on Fedora 17
  Add an empty make command for DTrace .d files to stop an implicit circular dependency in GNU Make which causes .d files to be overwritten (Bug 61268)
  Merge branch 'PHP-5.4'
  Merge branch 'PHP-5.5'
  Fixed bug #62978. pg_select()/etc may allow SQL injection when table name is user parameter, users are able to control table names.
  add news about session fix
  First fixes for a 64bit compatible ftp extension
  fix compiler warning, use longs for hashes
  fix crash, enable session_id and fix test
  Strict session. Detect session id collision
  Strict session
  non living code related typo fixes
  fix typo
  This doesn't fail in 5.5 anymore
  We shouldn't load any local ini files for these tests
  pcre_quote? No such thing. How did this ever pass?
  This test needs local infile enabled
  ...
2013-08-05 15:53:00 -07:00
Christopher Jones 18f17818a6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS for recent DTrace merges. Remove redundant 'cp' during DTrace install.
2013-08-05 15:40:56 -07:00
Christopher Jones 47d66a0b4e NEWS for recent DTrace merges.
Remove redundant 'cp' during DTrace install.
2013-08-05 15:38:36 -07:00
Christopher Jones 6e89818f2f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #62691 (solaris sed has no -i switch) Make 'make distclean' remove generated DTrace .h file
  Enable dtrace probes on linux as they are compatible with systemtap
  Fixed bug #63706: Cannot build PHP-5.5 with --enable-dtrace on Fedora 17

Conflicts:
	Makefile.global
2013-08-05 15:35:46 -07:00
Christopher Jones 3bbe5931bc Fixed bug #62691 (solaris sed has no -i switch)
Make 'make distclean' remove generated DTrace .h file
2013-08-05 15:18:12 -07:00
David Soria Parra a5c524f1be Enable dtrace probes on linux as they are compatible with systemtap
You can build php with dtrace probes enabled on linux if you have
systemtap with uprobes.
2013-08-05 15:07:04 -07:00
Remi Collet 3c5e229212 Fixed bug #63706: Cannot build PHP-5.5 with --enable-dtrace on Fedora 17 2013-08-05 14:52:12 -07:00
Christopher Jones b90b551228 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add an empty make command for DTrace .d files to stop an implicit circular dependency in GNU Make which causes .d files to be overwritten (Bug 61268)
  Merge branch 'PHP-5.4'

Conflicts:
	ext/mysqlnd/mysqlnd.c
2013-08-05 14:27:54 -07:00
Christopher Jones ec4019e8f6 Add an empty make command for DTrace .d files to stop an implicit
circular dependency in GNU Make which causes .d files to be
overwritten (Bug 61268)
2013-08-05 14:21:06 -07:00
Kalle Sommer Nielsen cabf38af6d Merge branch 'PHP-5.4' 2013-08-05 17:23:00 +02:00
Kalle Sommer Nielsen 963c1be38d Merge branch 'PHP-5.5' 2013-08-05 17:16:05 +02:00
Yasuo Ohgaki cb8d1fc7f9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #62978. pg_select()/etc may allow SQL injection when table name is user parameter, users are able to control table names.
2013-08-05 18:24:07 +09:00
Yasuo Ohgaki f718684a6c Fixed bug #62978. pg_select()/etc may allow SQL injection when table name is user parameter, users are able to control table names. 2013-08-05 18:23:15 +09:00
Stanislav Malyshev e59143e896 add news about session fix 2013-08-04 20:06:48 -07:00
Stanislav Malyshev 6f73a0c00f Merge branch 'pr368' into PHP-5.5
* pr368:
  fix crash, enable session_id and fix test
  Strict session. Detect session id collision
  Strict session
2013-08-04 20:00:28 -07:00
Stanislav Malyshev 7d3fa7d8b6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  First fixes for a 64bit compatible ftp extension
2013-08-04 19:36:01 -07:00
Andreas Streichardt a93a462dce First fixes for a 64bit compatible ftp extension 2013-08-04 19:31:30 -07:00
Stanislav Malyshev e4f9619fad fix compiler warning, use longs for hashes 2013-08-04 18:04:45 -07:00
Stanislav Malyshev b80d73ce15 fix crash, enable session_id and fix test 2013-08-04 17:43:20 -07:00
Yasuo Ohgaki 82b0e8be99 Strict session. Detect session id collision 2013-08-04 16:36:53 -07:00
Yasuo Ohgaki 25e8fcc88f Strict session 2013-08-04 16:36:45 -07:00
Stanislav Malyshev c793a65690 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  non living code related typo fixes

Conflicts:
	Zend/zend_compile.c
2013-08-04 16:06:24 -07:00
Veres Lajos 8d86597d73 non living code related typo fixes 2013-08-04 16:05:36 -07:00
Stanislav Malyshev 3626db6142 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix typo
2013-08-04 16:02:53 -07:00
Stanislav Malyshev 5f137d080a fix typo 2013-08-04 16:02:27 -07:00
Rasmus Lerdorf 626d96ab6d This doesn't fail in 5.5 anymore 2013-08-03 12:14:47 -04:00
Rasmus Lerdorf f17f596b27 Merge commit 'a03f094' into PHP-5.5
* commit 'a03f094':
  We shouldn't load any local ini files for these tests
2013-08-02 16:23:44 -04:00
Rasmus Lerdorf a03f0943ca We shouldn't load any local ini files for these tests 2013-08-02 16:23:18 -04:00
Rasmus Lerdorf d24f31c65e Merge commit 'd60e168' into PHP-5.5
* commit 'd60e168':
  pcre_quote? No such thing. How did this ever pass?
2013-08-02 16:13:03 -04:00
Rasmus Lerdorf d60e168a7a pcre_quote? No such thing. How did this ever pass? 2013-08-02 16:12:21 -04:00
Rasmus Lerdorf 9ca7910661 Merge commit 'ea75b1b' into PHP-5.5
* commit 'ea75b1b':
  This test needs local infile enabled
2013-08-02 15:33:40 -04:00
Rasmus Lerdorf ea75b1b5db This test needs local infile enabled 2013-08-02 15:33:18 -04:00
Rasmus Lerdorf 3d0aca80f2 Merge commit 'e55f08a' into PHP-5.5
* commit 'e55f08a':
  This test will only work if gc is enabled
2013-08-02 12:01:12 -04:00
Rasmus Lerdorf e55f08a5ae This test will only work if gc is enabled 2013-08-02 12:00:48 -04:00
Rasmus Lerdorf a85e71e655 Merge commit '5753b74' into PHP-5.5
* commit '5753b74':
  Make sure test.php isn't coming in from the include_path
2013-08-02 11:47:52 -04:00
Rasmus Lerdorf 5753b74fab Make sure test.php isn't coming in from the include_path 2013-08-02 11:47:12 -04:00
Xinchen Hui 47ac4f8670 Fixed tests (inet_pton behaves differently on Darwin) 2013-08-02 18:43:08 +08:00
Xinchen Hui 6f1a762fab Update NEWS 2013-08-02 18:39:41 +08:00
Xinchen Hui 1e942dde24 Merge branch 'PHP-5.4' into PHP-5.5 2013-08-02 18:39:18 +08:00
Xinchen Hui ce9169e360 Fixed bug Bug #65372 (Segfault in gc_zval_possible_root when return reference fails) 2013-08-02 18:37:15 +08:00
Yasuo Ohgaki 1c32b97bc3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add user contributed test. Bug #61748
2013-08-02 09:52:50 +09:00
Yasuo Ohgaki cb13f8318b Add user contributed test. Bug #61748 2013-08-02 09:52:08 +09:00
Christopher Jones 48ea95188e Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Clean up the 'generated' phar.inc file. When building outside the source tree the copied phar.inc needs to be removed, but when building in the tree, the file must remain since it is part of the source. See the copying logic in ext/phar/Makefile.frag.
  Revert "Allow 'make distclean' to clean up the 'generated' phar.inc"
  Use PHP's major version when cleaning up Apache .module files
  Allow 'make distclean' to clean up the 'generated' phar.inc
  Give 'make distclean' some love. Clean files created by AC_OUTPUT, shell redirection etc.
2013-08-01 10:39:38 -07:00
Christopher Jones d884ec15e9 Clean up the 'generated' phar.inc file.
When building outside the source tree the copied phar.inc needs to be removed,
but when building in the tree, the file must remain since it is part of the source.
See the copying logic in ext/phar/Makefile.frag.
2013-08-01 09:19:53 -07:00
Christopher Jones 146b933ab4 Revert "Allow 'make distclean' to clean up the 'generated' phar.inc"
This reverts commit 017145bc57.
2013-08-01 08:47:13 -07:00
Christopher Jones c069b5f571 Use PHP's major version when cleaning up Apache .module files 2013-07-31 12:35:10 -07:00
Christopher Jones 2ab080da2d Merge branch 'phardistclean' into PHP-5.5
* phardistclean:
  Allow 'make distclean' to clean up the 'generated' phar.inc
2013-07-31 12:34:28 -07:00
Christopher Jones 017145bc57 Allow 'make distclean' to clean up the 'generated' phar.inc 2013-07-31 12:31:50 -07:00
Christopher Jones 4ed18d5955 Give 'make distclean' some love. Clean files created by AC_OUTPUT, shell redirection etc. 2013-07-31 11:49:29 -07:00
Christopher Jones 3b4d2647f9 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Dmitry Stogov (3) and others
# Via Christopher Jones (6) and Dmitry Stogov (2)
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Fixed bug #62691 (solaris sed has no -i switch) Make 'make distclean' remove generated DTrace .h file
  Improved fix for bug #44686 (SOAP-ERROR: Parsing WSDL)
  Fixed bug #65018 (SoapHeader problems with SoapServer)
  Added opcache.restrict_api configuration directive that may limit usage of OPcahce API functions only to patricular script(s)
  MFH: fixed #65045: mb_convert_encoding breaks well-formed character.
  Fixed bug #65336
2013-07-31 10:08:50 -07:00
Christopher Jones e3a4b87e89 Fixed bug #62691 (solaris sed has no -i switch)
Make 'make distclean' remove generated DTrace .h file
2013-07-31 09:58:28 -07:00
Christopher Jones 0625d5ce67 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Improved fix for bug #44686 (SOAP-ERROR: Parsing WSDL)
  Fixed bug #65018 (SoapHeader problems with SoapServer)
  Added opcache.restrict_api configuration directive that may limit usage of OPcahce API functions only to patricular script(s)
  MFH: fixed #65045: mb_convert_encoding breaks well-formed character.
  Fixed php-5.2 support
  added test script for bug65045.
  MFH: fixed #65045: mb_convert_encoding breaks well-formed character.
  Added support for glob symbols in blacklist entries (?, *, **)
  Fixed bug #65336
2013-07-31 09:01:56 -07:00
Christopher Jones 4590070f31 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Improved fix for bug #44686 (SOAP-ERROR: Parsing WSDL)
  Fixed bug #65018 (SoapHeader problems with SoapServer)
  MFH: fixed #65045: mb_convert_encoding breaks well-formed character.
2013-07-31 09:01:54 -07:00
Dmitry Stogov 5129892788 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Improved fix for bug #44686 (SOAP-ERROR: Parsing WSDL)
2013-07-31 17:37:08 +04:00
Dmitry Stogov 4395f70207 Improved fix for bug #44686 (SOAP-ERROR: Parsing WSDL) 2013-07-31 17:36:06 +04:00
Dmitry Stogov 35872e101b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #65018 (SoapHeader problems with SoapServer)
  MFH: fixed #65045: mb_convert_encoding breaks well-formed character.
  Fixed bug #65336

Conflicts:
	NEWS
2013-07-31 16:34:26 +04:00
Dmitry Stogov fd8f454520 Fixed bug #65018 (SoapHeader problems with SoapServer) 2013-07-31 16:32:26 +04:00
Dmitry Stogov d69b3d8f59 Added opcache.restrict_api configuration directive that may limit usage of OPcahce API functions only to patricular script(s) 2013-07-31 14:20:56 +04:00
Christopher Jones f7c87fcc8c Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Dmitry Stogov (5) and Rui Hirokawa (2)
# Via Dmitry Stogov (3) and others
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Fixed php-5.2 support
  added test script for bug65045.
  MFH: fixed #65045: mb_convert_encoding breaks well-formed character.
  Added support for glob symbols in blacklist entries (?, *, **)
  Improved implementation of NOP removal pass from O(n^2) to O(n) (hnw)
  A minor fix for configure outpu (Tony)
  Fixed bug #65338 (Enabling both php_opcache and php_wincache AVs on shutdown).
2013-07-30 16:53:05 -07:00
Rui Hirokawa 0a974f14d1 MFH: fixed #65045: mb_convert_encoding breaks well-formed character. 2013-07-31 08:46:54 +09:00
Dmitry Stogov d9e2dc8084 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  added test script for bug65045.
  MFH: fixed #65045: mb_convert_encoding breaks well-formed character.
2013-07-31 03:24:04 +04:00
Dmitry Stogov f3aca8bc4d Fixed php-5.2 support 2013-07-31 03:22:34 +04:00
Rui Hirokawa f14ed5bce0 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-07-31 08:18:51 +09:00
Rui Hirokawa 7da3315015 added test script for bug65045. 2013-07-31 08:18:39 +09:00
Rui Hirokawa c10d7e1afc MFH: fixed #65045: mb_convert_encoding breaks well-formed character. 2013-07-31 08:17:15 +09:00
Dmitry Stogov 2bd23530d8 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
2013-07-31 03:04:48 +04:00
Dmitry Stogov 02409669e4 Added support for glob symbols in blacklist entries (?, *, **) 2013-07-31 03:01:19 +04:00
Christopher Jones 8ca04e51aa Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Improved implementation of NOP removal pass from O(n^2) to O(n) (hnw)
  A minor fix for configure outpu (Tony)
2013-07-30 13:39:20 -07:00
Dmitry Stogov cb17c99511 Improved implementation of NOP removal pass from O(n^2) to O(n) (hnw) 2013-07-30 22:31:37 +04:00
Dmitry Stogov e2aba1cf9e A minor fix for configure outpu (Tony) 2013-07-30 22:03:21 +04:00
Dmitry Stogov 3550f3d0aa Fixed bug #65338 (Enabling both php_opcache and php_wincache AVs on shutdown). 2013-07-30 17:35:19 +04:00
Christopher Jones e37fdbb2f2 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Dmitry Stogov
# Via Dmitry Stogov
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Merge from GitHub
2013-07-29 09:43:42 -07:00
Dmitry Stogov ae5e70afac Merge from GitHub 2013-07-28 13:47:13 +04:00
Yasuo Ohgaki bafe0e5399 Update NEWS 2013-07-27 05:54:33 +09:00
Yasuo Ohgaki ef3d813d2c Fixed bug #65336 2013-07-27 05:54:33 +09:00
Yasuo Ohgaki 1d7b6970f2 Fixed bug #65336 2013-07-27 05:54:09 +09:00
Christopher Jones 8e79724c6f Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
2013-07-25 10:57:47 -07:00
Christopher Jones fd616ba50f Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
2013-07-25 10:57:46 -07:00
Christopher Jones 4cab45946c Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Upper section name
  Update NEWs
  Fixed bug #65328 (Segfault when getting SplStack object Value)
2013-07-25 10:42:45 -07:00
Christopher Jones 29b2522df1 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Upper section name
  Fixed bug #65328 (Segfault when getting SplStack object Value)
2013-07-25 10:42:43 -07:00
Christopher Jones 42e8f3ca28 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Johannes Schlüter (3) and others
# Via Xinchen Hui (3) and others
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Upper section name
  Update NEWs
  Fixed bug #65328 (Segfault when getting SplStack object Value)
  Expand the ZEND_STRL macro to handle platforms where strncmp() is a macro.
  fix missing include
  Fix bug 65299
  Fix compiler warning on redefined constant
  Fix comment
  fixed bug #65311 testsuite failure due to incomplete fix to bug28985.phpt
  fix bug #65028 	Phar::buildFromDirectory creates corrupt archives for some specific contents
2013-07-25 08:53:29 -07:00
Christopher Jones 979194351d Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
# By Xinchen Hui (2) and others
# Via Stanislav Malyshev (1) and Xinchen Hui (1)
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Upper section name
  Fixed bug #65328 (Segfault when getting SplStack object Value)
  Fix compiler warning on redefined constant
  fixed bug #65311 testsuite failure due to incomplete fix to bug28985.phpt
  fix bug #65028 	Phar::buildFromDirectory creates corrupt archives for some specific contents
2013-07-25 08:53:26 -07:00
Xinchen Hui 9776504c5b Merge branch 'PHP-5.4' into PHP-5.5 2013-07-25 22:45:44 +08:00
Xinchen Hui 515092917d Upper section name 2013-07-25 22:45:15 +08:00
Xinchen Hui 1fbcfc9bdb Update NEWs 2013-07-25 22:44:59 +08:00
Xinchen Hui 9126909c08 Merge branch 'PHP-5.4' into PHP-5.5 2013-07-25 22:44:19 +08:00
Xinchen Hui 9909c4d4c4 Fixed bug #65328 (Segfault when getting SplStack object Value) 2013-07-25 22:43:41 +08:00
Stanislav Malyshev b8c8a04a85 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix bug #65028 	Phar::buildFromDirectory creates corrupt archives for some specific contents
2013-07-23 21:45:35 -07:00
Stanislav Malyshev 96a53f6715 Merge branch 'bug65028' into PHP-5.4
* bug65028:
  fix bug #65028 	Phar::buildFromDirectory creates corrupt archives for some specific contents
2013-07-23 21:44:06 -07:00
Adam Harvey f9000fde98 Expand the ZEND_STRL macro to handle platforms where strncmp() is a macro.
On most platforms, this works fine, but on Linux armhf, strncmp() is a macro
rather than a real function, ergo the macro expansion of ZEND_STRL doesn't
occur until after the compiler knows it needs three parameters for strncmp()
and we get a compile error.

Fixes the fix for bug #61697.
2013-07-23 11:15:43 -07:00
Anatol Belski f00d796b7e fix missing include 2013-07-23 18:06:51 +02:00
Johannes Schlüter 7b92a22772 Fix bug 65299 2013-07-23 14:13:22 +02:00
Johannes Schlüter 5a8b0ca8fa Merge branch 'PHP-5.4' into PHP-5.5 2013-07-23 12:57:08 +02:00
Johannes Schlüter c28ab73d73 Fix compiler warning on redefined constant 2013-07-23 12:50:37 +02:00
Johannes Schlüter 063e10b275 Fix comment 2013-07-23 12:41:24 +02:00
Anatol Belski 8aebe0f1e7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed bug #65311 testsuite failure due to incomplete fix to bug28985.phpt
2013-07-23 10:00:07 +02:00
Anatol Belski 9b6aa268a3 fixed bug #65311 testsuite failure due to incomplete fix to bug28985.phpt 2013-07-23 09:59:08 +02:00
Christopher Jones 024972e3b9 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Anatol Belski (12) and others
# Via Stanislav Malyshev (12) and others
* 'PHP-5.5' of https://git.php.net/repository/php-src: (74 commits)
  fixed possible null deref
  - addressed bug #65159, Misleading configure help text for --with-mysql-sock
  Fix bug #61697 - spl_autoload_functions returns lambda functions incorrectly
  Update news for FILTER_SANITIZE_FULL_SPECIAL_CHARS fix
  Wrong value for FILTER_SANITIZE_FULL_SPECIAL_CHARS in REGISTER_LONG_CONSTANT
  Added recursivetreeiterator::setPostfix() method
  next is 5.5.2
  add a few comment
  allow both the old and new cfg argument to work. (the old of course should contain the typo)
  mssql.compatability_mode fix
  backward compatibility
  HASH_KEY_NON_EXISTANT fix
  Update NEWS
  Fixed bug #65304 (Use of max int in array_sum)
  Updaet NEWS
  Reorder NEWS
  intl: remove extra quotes from arginfo params
  Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait
  Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait
  Properly fixed bug #63186 on NetBSD == 6.0
  ...
2013-07-22 10:59:01 -07:00
Christopher Jones a1bf38e075 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
# By Anatol Belski (8) and others
# Via Anatol Belski (2) and others
* 'PHP-5.4' of https://git.php.net/repository/php-src: (44 commits)
  fixed possible null deref
  - addressed bug #65159, Misleading configure help text for --with-mysql-sock
  Update news for FILTER_SANITIZE_FULL_SPECIAL_CHARS fix
  Wrong value for FILTER_SANITIZE_FULL_SPECIAL_CHARS in REGISTER_LONG_CONSTANT
  Fixed bug #65304 (Use of max int in array_sum)
  Reorder NEWS
  Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait
  Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait
  Properly fixed bug #63186 on NetBSD == 6.0
  Improve php.ini-* documentation
  5.4.19 is next
  Fixed bug #50308 - session id not appended properly for empty anchor tags
  Fix bug #62129 - rfc1867 crashes php even though turned off
  add news for xml fix
  fix TS build
  added sapi check for dl() test
  Make zval2myslqnd implementations aware of inheritance
  Fixed typo ensuring header str is \0 terminated
  fix buffer overrun
  fix invalid variable name at ext/spl/internal/multipleiterator.inc (key() method, too)
  ...
2013-07-22 10:58:57 -07:00
Christopher Jones 7c9bb87edd Merge branch 'PHP-5.3' of https://git.php.net/repository/php-src into PHP-5.3
# By Johannes Schlüter
# Via Christopher Jones (1) and Johannes Schlüter (1)
* 'PHP-5.3' of https://git.php.net/repository/php-src:
  Merge PHP 5.3.27 NEWS
  add test for bug #65236
2013-07-22 10:58:52 -07:00
Anatol Belski bd20c79423 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed possible null deref
2013-07-22 14:51:11 +02:00
Anatol Belski 25f924abf6 fixed possible null deref 2013-07-22 14:50:18 +02:00
Stanislav Malyshev f8efdc2b4b fix bug #65028 Phar::buildFromDirectory creates corrupt archives for some specific contents 2013-07-22 00:57:33 -07:00
Stanislav Malyshev b8d4a6939e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - addressed bug #65159, Misleading configure help text for --with-mysql-sock
2013-07-21 23:14:42 -07:00
Yoshinari Takaoka 1b4103c09d - addressed bug #65159, Misleading configure help text for --with-mysql-sock 2013-07-21 23:12:54 -07:00
Stanislav Malyshev 83ced9124e Fix bug #61697 - spl_autoload_functions returns lambda functions incorrectly 2013-07-21 22:47:10 -07:00
Stanislav Malyshev 476924ec3d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Update news for FILTER_SANITIZE_FULL_SPECIAL_CHARS fix
  Wrong value for FILTER_SANITIZE_FULL_SPECIAL_CHARS in REGISTER_LONG_CONSTANT
2013-07-21 22:31:19 -07:00
Stanislav Malyshev ba984582db Update news for FILTER_SANITIZE_FULL_SPECIAL_CHARS fix 2013-07-21 22:28:02 -07:00
Andrey da3886de6d Wrong value for FILTER_SANITIZE_FULL_SPECIAL_CHARS in REGISTER_LONG_CONSTANT 2013-07-21 22:25:21 -07:00
Joshua Thijssen 5027fa79d7 Added recursivetreeiterator::setPostfix() method 2013-07-21 22:20:58 -07:00
Stanislav Malyshev 2c23004a1e next is 5.5.2 2013-07-21 21:16:39 -07:00
Veres Lajos e7a00a2566 add a few comment 2013-07-21 21:14:38 -07:00
Lajos Veres f51b8d8820 allow both the old and new cfg argument to work. (the old of course should contain the typo) 2013-07-21 21:12:19 -07:00
Veres Lajos b8941a73cc mssql.compatability_mode fix 2013-07-21 21:12:16 -07:00
Lajos Veres 97637b2a4c backward compatibility 2013-07-21 20:09:59 -07:00
Veres Lajos 4749457a49 HASH_KEY_NON_EXISTANT fix 2013-07-21 20:09:53 -07:00
Xinchen Hui 29281dee49 Update NEWS 2013-07-21 21:07:38 +08:00
Xinchen Hui c7b58e4967 Merge branch 'PHP-5.4' into PHP-5.5 2013-07-21 21:07:27 +08:00
Xinchen Hui 3380de9774 Fixed bug #65304 (Use of max int in array_sum) 2013-07-21 21:07:19 +08:00
Xinchen Hui 3cd13204bb Updaet NEWS 2013-07-21 16:19:40 +08:00
Xinchen Hui 629965abe2 Merge branch 'PHP-5.4' into PHP-5.5 2013-07-21 16:19:13 +08:00
Xinchen Hui cc91fbe986 Reorder NEWS 2013-07-21 15:58:10 +08:00
Gustavo André dos Santos Lopes 3363e04fb4 intl: remove extra quotes from arginfo params 2013-07-21 03:30:28 +02:00
Arpad Ray b963249456 Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait
Also fix and test for get_defined_constants(true)
2013-07-20 11:05:13 +01:00
Arpad Ray a015fa83a7 Fixed bug #65291 - get_defined_constants() crash with __CLASS__ in trait 2013-07-19 19:19:48 +01:00
Matteo Beccati 1dc7d0da08 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Properly fixed bug #63186 on NetBSD == 6.0
2013-07-19 09:39:53 +02:00
Matteo Beccati 2b9d42433f Properly fixed bug #63186 on NetBSD == 6.0 2013-07-19 09:37:39 +02:00
Anatol Belski 99afc6dc11 Fixed bug #65268 select() implementation uses outdated tick API 2013-07-18 18:01:51 +02:00
Anatol Belski d8dd4d9b02 fix header include
stddef.h is needed to have offsetof macros on windows (at least)
2013-07-18 15:28:20 +02:00
Julien Pauli cbdf9edebd new NEWS for next release 2013-07-18 11:54:09 +02:00
Yasuo Ohgaki d6692514f8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Improve php.ini-* documentation
2013-07-18 14:10:05 +09:00
Yasuo Ohgaki 445dffa75a Improve php.ini-* documentation 2013-07-18 14:08:28 +09:00
Stanislav Malyshev fec93992de Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.19 is next

Conflicts:
	configure.in
	main/php_version.h
2013-07-17 13:52:25 -07:00
Stanislav Malyshev b9e3f737d9 5.4.19 is next 2013-07-17 13:51:15 -07:00
Arpad Ray 31edf4df56 regenerate url scanner 2013-07-17 16:28:01 +01:00
Arpad Ray 94ab37f06a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #50308 - session id not appended properly for empty anchor tags
2013-07-17 16:19:53 +01:00
Arpad Ray e6ae977082 Fixed bug #50308 - session id not appended properly for empty anchor tags
The issue was actually because a lack of space before a "/" marking the tag
as empty. This was being swallowed in the rule for unquoted values. Fixed
by making that rule exclude quotes (as per spec anyway).
2013-07-17 16:07:26 +01:00
Arpad Ray 0d3d739bf7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #62129 - rfc1867 crashes php even though turned off
2013-07-17 11:05:23 +01:00
Arpad Ray ba3234888d Fix bug #62129 - rfc1867 crashes php even though turned off
Patch by gxd305 at gmail dot com
2013-07-17 11:02:48 +01:00
Stanislav Malyshev c855f44737 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add news for xml fix
2013-07-16 15:39:16 -07:00
Stanislav Malyshev eb8c15b573 add news for xml fix 2013-07-16 15:38:37 -07:00
Anatol Belski fd5cdf89a8 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix TS build
2013-07-16 18:05:45 +02:00
Anatol Belski bb6d74918e fix TS build 2013-07-16 18:05:14 +02:00
Anatol Belski f37ac6f591 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  added sapi check for dl() test
2013-07-16 15:43:37 +02:00
Anatol Belski 135f81c5ae added sapi check for dl() test 2013-07-16 15:42:38 +02:00
Johannes Schlüter e1a0c90b8b Merge branch 'PHP-5.4' into PHP-5.5 2013-07-16 13:55:32 +02:00
Johannes Schlüter d3a4af4db8 Make zval2myslqnd implementations aware of inheritance 2013-07-16 13:52:57 +02:00
Anatol Belski 54b740a7e1 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed typo ensuring header str is \0 terminated
2013-07-16 00:15:29 +02:00
Anatol Belski bcb39d9c6a Fixed typo ensuring header str is \0 terminated
This was obviously intended to send an empty header if
php_gmtime_r() fails. Currently it could send garbage.
2013-07-16 00:14:05 +02:00
Gustavo Lopes ceecfaff5a NEWS for 710150c and e2744f1 2013-07-16 00:02:43 +02:00
Gustavo Lopes 710150ccb7 socket: support unix paths in the abstract namespace
Those starting with '\0'.
2013-07-15 23:57:51 +02:00
Gustavo Lopes e2744f1aa3 socket: fix bug #65260 (SCM_RIGHTS)
The data for messages of type SOL_SOCKET/SCM_RIGHTS was not being
passed correctly. There were actually two bugs: (1) the number of file
descriptors being passed was being read incorrectly (the length of the
cmsg array was being read instead of that of its 'data' element), as a
result it was generally being reported as always three elements
('level', 'type' and 'data') and (2) the allocated block for writing
the file descriptors was being acessed incorrectly because a 1-based
counter was being used as if it was 0-based.

Any of these two bugs would probably be enough to cause heap
corruption.
2013-07-15 23:57:49 +02:00
Anatol Belski e7a4cf8d7e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix buffer overrun
2013-07-15 17:35:29 +02:00
Anatol Belski 9561e598a0 fix buffer overrun 2013-07-15 17:34:36 +02:00
Anatol Belski 904c5d7ba8 kick unused var 2013-07-15 17:23:16 +02:00
Bruno CHALOPIN 2ec7b1c388 Remove PWS (Personal Web Server) references 2013-07-15 00:38:29 -07:00
Stanislav Malyshev 68e630b72f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix invalid variable name at ext/spl/internal/multipleiterator.inc (key() method, too)
  fix invalid variable name at ext/spl/internal/multipleiterator.inc
2013-07-15 00:36:35 -07:00
sasezaki e617679c0b fix invalid variable name at ext/spl/internal/multipleiterator.inc (key() method, too) 2013-07-15 00:36:29 -07:00
kazusuke sasezaki 76775a3aa7 fix invalid variable name at ext/spl/internal/multipleiterator.inc 2013-07-15 00:36:19 -07:00
Stanislav Malyshev 0aadbf7578 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  revert false fix
  typo fixes
  less serious compatAbility fixes
  typos (orig)

Conflicts:
	ext/mysql/php_mysql.c
2013-07-15 00:27:57 -07:00
Veres Lajos 2c73ce4363 revert false fix 2013-07-15 00:23:17 -07:00
Veres Lajos e9a95d78ef typo fixes 2013-07-15 00:23:03 -07:00
Veres Lajos b79b13b4ef less serious compatAbility fixes 2013-07-15 00:21:39 -07:00
Veres Lajos bb64106f64 typos (orig) 2013-07-15 00:20:49 -07:00
Veres Lajos f23a5fbc8e revert false fix 2013-07-15 00:19:07 -07:00
Veres Lajos 72085b0e5f typo fixes 2013-07-15 00:18:57 -07:00
Veres Lajos b8a2b254a1 typos (orig) 2013-07-15 00:18:32 -07:00
Veres Lajos 227556c6a2 less serious compatAbility fixes 2013-07-15 00:17:35 -07:00
Stanislav Malyshev 8c663fd4cc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #62665: add curl.cainfo to php.ini

Conflicts:
	php.ini-development
	php.ini-production
2013-07-14 23:56:59 -07:00
Stanislav Malyshev 2bad01e61b Fix bug #62665: add curl.cainfo to php.ini
Conflicts:

	php.ini-development
	php.ini-production
2013-07-14 23:56:03 -07:00
Stanislav Malyshev 07ab23655a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add news for bug #65219
2013-07-14 17:07:24 -07:00
Stanislav Malyshev a51b50000d add news for bug #65219 2013-07-14 17:07:06 -07:00
Stanislav Malyshev 9cc9d32e6a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add built-in web server to invocation list
  Terminology: change embedded web server to built-in web server to align with cli usage
  Align -B and -E parameter names with cli usage (begin_code and end_code)
  Fix Bug #65219 DBSETLDBNAME should be called before login to set DBNAME in login record
2013-07-14 17:01:43 -07:00
Lior Kaplan f4b9b20b35 Add built-in web server to invocation list 2013-07-14 17:00:56 -07:00
Lior Kaplan bcef0ebc2d Terminology: change embedded web server to built-in web server to align with cli usage 2013-07-14 16:42:23 -07:00
Lior Kaplan 07501dc1a2 Align -B and -E parameter names with cli usage (begin_code and end_code) 2013-07-14 16:42:09 -07:00
Anatol Belski 6e3134610c Merge branch 'PHP-5.4' of https://github.com/php/php-src into PHP-5.4 2013-07-14 20:48:26 +02:00
Anatol Belski 168a5bb6df Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix uninitialized memory usage
2013-07-14 20:46:19 +02:00
Anatol Belski add0833681 fix uninitialized memory usage 2013-07-14 20:44:29 +02:00
Stanley Sufficool 67c03eac62 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
2013-07-14 11:18:11 -07:00
Stanley Sufficool d012bdca03 Fix Bug #65219
DBSETLDBNAME should be called before login to set DBNAME in login record
2013-07-14 11:16:42 -07:00
Stanley Sufficool 6e32a871a4 Merge branch 'PHP-5.3' of https://git.php.net/push/php-src into PHP-5.3
* 'PHP-5.3' of https://git.php.net/push/php-src: (23 commits)
  Merge PHP 5.3.27 NEWS
  add test for bug #65236
  truncate results at depth of 255 to prevent corruption
  fix assembly of safe_address() for x86 and x86_64
  Add bison 2.6.4 to the list of supported versions
  Update git rules (5.5 is stable, 5.3 sec only)
  This will be PHP 5.3.28
  Fixed bug #63186 (compile failure on netbsd)
  ensure the error_reporting level to get expected notice
  fixed tests
  missing tests for bug #53437
  missing colon
  Backported the fix for bug #53437
  Fixed test script
  Fixed bug #64997 (Segfault while using RecursiveIteratorIterator on 64-bits systems)
  Fixed bug #64966 (segfault in zend_do_fcall_common_helper_SPEC)
  Fixed bug #64934 Apache2 TS crash with get_browser()
  Add NEWS for PHP 5.3.26
  Fixed bug #64960 (Segfault in gc_zval_possible_root)
  fix CVE-2013-2110 - use correct formula to calculate string size
  ...
2013-07-14 11:10:36 -07:00
Xinchen Hui e20fc85454 Update NEWS 2013-07-14 11:56:37 +08:00
Xinchen Hui 2c4f823437 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-07-14 11:53:56 +08:00
Xinchen Hui ebad5178c4 Fixed bug #65254 (Exception not catchable when exception thrown in autoload with a namespace). 2013-07-14 11:47:06 +08:00
Felipe Pena eab076020d - BFN 2013-07-13 17:55:50 -03:00
Felipe Pena efc89368dd Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Bug #65228 (FTPs memory leak) patch by: marco dot beierer at mbsecurity dot ch
2013-07-13 17:54:41 -03:00
Felipe Pena 0863a0d6a0 - Bug #65228 (FTPs memory leak) patch by: marco dot beierer at mbsecurity dot ch 2013-07-13 17:54:31 -03:00
Stanislav Malyshev 184dea7033 fix version - not -dev anymore since 5.5.0 release 2013-07-12 17:23:22 -07:00
Felipe Pena 4bd2f755ba Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #65227 (Memory leak in gmp_cmp second parameter)
  Fixed meta data retrieve when OID is larger than 2^31
2013-07-12 20:23:31 -03:00
Felipe Pena 281936b295 - Fixed bug #65227 (Memory leak in gmp_cmp second parameter) 2013-07-12 20:23:00 -03:00
Yasuo Ohgaki 0ddb3d97de Fixed meta data retrieve when OID is larger than 2^31 2013-07-13 06:06:23 +09:00
Yasuo Ohgaki bccc3e2ec0 Fixed meta data retrieve when OID is larger than 2^31 2013-07-13 06:05:18 +09:00
Yasuo Ohgaki 002f3ff4dc Inprove pg_unescape_bytea() error message 2013-07-13 06:05:17 +09:00
Stanislav Malyshev 657116f12e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix the date for 5.4.17
2013-07-12 10:58:24 -07:00
Stanislav Malyshev d2a83efe5b fix the date for 5.4.17 2013-07-12 10:57:59 -07:00
Stanislav Malyshev 64b11f8918 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update 5.4.17 date
2013-07-12 10:55:37 -07:00
Stanislav Malyshev b2fbb4cc40 update 5.4.17 date 2013-07-12 10:55:24 -07:00
Stanislav Malyshev 20e9ca5c9f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update 5.4.17 date
2013-07-12 10:53:47 -07:00
Stanislav Malyshev 5b01b0904f update 5.4.17 date 2013-07-12 10:53:23 -07:00
Anatol Belski 4f4fa32ca5 updated NEWS 2013-07-11 00:51:10 +02:00
Anatol Belski ecf057d197 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #65226 chroot() does not get enabled
2013-07-11 00:49:41 +02:00
Anatol Belski 2acc386270 Fixed bug #65226 chroot() does not get enabled 2013-07-11 00:48:12 +02:00
Christopher Jones 2d77bbdf64 Merge branch 'spl_tempfile_clean' into PHP-5.5
* spl_tempfile_clean:
  Cleanup temp test file
2013-07-10 11:18:58 -07:00
Christopher Jones 3478ddc1f0 Cleanup temp test file 2013-07-10 11:17:52 -07:00
Christopher Jones c0bfc57ba8 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Merge PHP 5.3.27 NEWS
  add test for bug #65236
  fix possible resource leak and make sure there's something to qsort()
  Cleanup temp file
  - Updated to version 2013.4 (2013d)
2013-07-10 11:13:19 -07:00
Christopher Jones 96f77f845a Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Merge PHP 5.3.27 NEWS
  add test for bug #65236
  fix possible resource leak and make sure there's something to qsort()
  - Updated to version 2013.4 (2013d)
2013-07-10 11:13:18 -07:00
Christopher Jones e2e002d4ea Merge branch 'PHP-5.3' of https://git.php.net/repository/php-src into PHP-5.3
* 'PHP-5.3' of https://git.php.net/repository/php-src:
  Merge PHP 5.3.27 NEWS
  add test for bug #65236
2013-07-10 11:13:15 -07:00
Johannes Schlüter 1891577d04 Merge branch 'PHP-5.4' into PHP-5.5 2013-07-10 19:47:15 +02:00
Johannes Schlüter 4c6c048e3e Merge branch 'PHP-5.3' into PHP-5.4 2013-07-10 19:46:37 +02:00
Johannes Schlüter 9c4ef50146 Merge PHP 5.3.27 NEWS 2013-07-10 19:45:45 +02:00
Johannes Schlüter 26019d2022 Merge branch 'PHP-5.4' into PHP-5.5 2013-07-10 19:38:00 +02:00
Johannes Schlüter 4204e2cb5b Merge branch 'PHP-5.3' into PHP-5.4 2013-07-10 19:36:12 +02:00
Johannes Schlüter 710eee5555 add test for bug #65236 2013-07-10 19:35:18 +02:00
Anatol Belski f5b9d87fb9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix possible resource leak and make sure there's something to qsort()
2013-07-10 13:31:22 +02:00
Anatol Belski 29ac511b8a fix possible resource leak and make sure there's something to qsort() 2013-07-10 13:00:47 +02:00
Christopher Jones 73b54b4a5b Merge branch 'gd_clean' into PHP-5.5
* gd_clean:
  Cleanup temp file
2013-07-09 14:52:35 -07:00
Christopher Jones cd7e56e536 Cleanup temp file 2013-07-09 14:51:47 -07:00
Derick Rethans 06cef326fd Merge branch 'PHP-5.4' into PHP-5.5 2013-07-09 09:07:17 +01:00
Derick Rethans c7ee677f2f - Updated to version 2013.4 (2013d) 2013-07-09 09:07:16 +01:00
Christopher Jones 7045bd5c4a Merge branch 'bump_pecl_check' into PHP-5.5
* bump_pecl_check:
  Bump PECL package info version check to allow PECL installs with PHP 5.5+
2013-07-08 13:38:45 -07:00
Christopher Jones 6ac7c9d0a7 Bump PECL package info version check to allow PECL installs with PHP 5.5+ 2013-07-08 13:32:04 -07:00
Christopher Jones ac26d0e655 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Fixed segfault in mysqlnd when doing long prepare
2013-07-08 13:31:12 -07:00
Christopher Jones 79df8cf9c2 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Fixed segfault in mysqlnd when doing long prepare
2013-07-08 13:30:54 -07:00
Andrey Hristov 2c3f6dcdb6 Merge branch 'PHP-5.4' of ssh://git.php.net/php-src into PHP-5.4
Conflicts:
	NEWS
2013-07-08 20:28:51 +02:00
Andrey Hristov dd71f1f173 Merge branch 'PHP-5.5' of ssh://git.php.net/php-src into PHP-5.5 2013-07-08 20:27:14 +02:00
Andrey Hristov 3dd5f4ae4c Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	NEWS
2013-07-08 20:24:58 +02:00
Andrey Hristov 9fc38183b7 Fixed segfault in mysqlnd when doing long prepare 2013-07-08 20:23:32 +02:00
Yasuo Ohgaki 204137693c Update NEWS 2013-07-08 19:21:52 +09:00
Yasuo Ohgaki bde0f1318a Added warning for hex2bin() when input is invalid string 2013-07-08 19:14:45 +09:00
Yasuo Ohgaki bdfe70ab34 Update NEWS 2013-07-08 19:02:42 +09:00
Yasuo Ohgaki 2bc8271b29 Add warning to pg_unescape_bytea() when invalid parameter is passed 2013-07-08 18:51:37 +09:00
Ben Ramsey d1c261d7f8 array_column: Changing integer in test output to use %d 2013-07-06 20:50:34 +00:00
Rob Richards eed492ce84 Merge branch 'PHP-5.4' into PHP-5.5
# By Nuno Lopes (2) and Rob Richards (1)
* PHP-5.4:
  truncate results at depth of 255 to prevent corruption
  fix assembly of safe_address() for x86 and x86_64
  fix assembly of safe_address() for x86 and x86_64
2013-07-06 08:00:58 -04:00
Rob Richards e4a28b7b7b Merge branch 'PHP-5.3' into PHP-5.4
# By Rob Richards (1)
* PHP-5.3:
  truncate results at depth of 255 to prevent corruption
2013-07-06 07:59:20 -04:00
Rob Richards 7d163e8a08 truncate results at depth of 255 to prevent corruption 2013-07-06 07:53:07 -04:00
Ard Biesheuvel 47e21a2c40 Fix assembly of safe_address() for aarch64 2013-07-04 10:25:38 +02:00
Nuno Lopes e964817b24 fix assembly of safe_address() for x86 and x86_64 2013-07-03 18:02:28 -04:00
Nuno Lopes c652cc93ec fix assembly of safe_address() for x86 and x86_64 2013-07-03 17:56:02 -04:00
Nuno Lopes 40cbceaf71 fix assembly of safe_address() for x86 and x86_64 2013-07-03 17:55:18 -04:00
Anatol Belski 332e46b3aa Extended the test for bug #65184 2013-07-03 22:52:51 +02:00
Felipe Pena 00293fec05 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed build on FreeTDS 0.82
2013-07-03 15:02:39 -03:00
Felipe Pena 7549beb102 - Fixed build on FreeTDS 0.82 2013-07-03 15:02:03 -03:00
Johannes Schlüter 9aa7343ae0 Merge branch 'PHP-5.4' into PHP-5.5 2013-07-03 17:10:58 +02:00
Johannes Schlüter 5bc7e597d9 Make sure return value is initialised in case transaction startup fails 2013-07-03 17:08:14 +02:00
Johannes Schlüter 631bb27dca Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	Zend/acinclude.m4
2013-07-03 16:58:20 +02:00
Johannes Schlüter 0265c2d961 Make sure result is initilized
Practically this could only be an issue when overriding mysqlnd from
an extension, but makes static analysis happy
2013-07-03 16:53:09 +02:00
Anatol Belski 5324416b65 Fixed bug #65184 strftime() returns insufficient-length
string under multibyte locales

The msdn doc states 'strftime returns the number of characters', but prior
to VS2012 it seems to have returned the number of bytes. Locale independent.
The return is however \0-terminated, so strlen is just fine. The behaivor
seems to be persisting in the later VC++ versions as the corresponding
MSDN ticket is closed 'by design'.

See http://connect.microsoft.com/VisualStudio/feedback/details/766205/vs2012-strftime-has-incorrect-return-value-in-vc-11-with-multibyte-codepages#details
2013-07-03 11:12:46 +02:00
Sebastian Bergmann 74d434c091 Merge branch 'PHP-5.3' into PHP-5.4 2013-07-03 06:37:04 +02:00
Sebastian Bergmann 50ac53e1b1 Add bison 2.6.4 to the list of supported versions 2013-07-03 06:36:54 +02:00
Gustavo André dos Santos Lopes b52fea6f35 NEWS for two lst intl changes 2013-07-03 05:22:33 +01:00
Gustavo André dos Santos Lopes 9487f0b4bb intl: fix extra space in constant name 2013-07-03 05:15:56 +01:00
Gustavo André dos Santos Lopes a4538a4ca2 intl: add intlcal_set_minimal_days_in_first_week()
and IntlCalendar::setMinimalDaysInFirstWeek(). This one had slipped.
we had a ::getMinimalDaysInFirstWeek() but no way to change the value.
2013-07-03 05:06:32 +01:00
Remi Collet 1aeb2514fe Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix typo in php man page
2013-07-02 12:19:37 +02:00
Remi Collet 67817a199c fix typo in php man page 2013-07-02 12:19:09 +02:00
Remi Collet 4d5a2fba16 NEWS 2013-07-02 10:48:19 +02:00
Remi Collet 8f0567581e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed Bug #65142 Missing phar man page
  NEWS
  Fixed Bug #65143 Missing php-cgi man page
2013-07-02 10:47:38 +02:00
Remi Collet f4ce5e7fb6 Fixed Bug #65142 Missing phar man page
Simple man page from phar help output.
2013-07-02 10:46:50 +02:00
Remi Collet 4bc11af193 NEWS 2013-07-02 10:46:21 +02:00
Remi Collet c940aab789 Fixed Bug #65143 Missing php-cgi man page
Currently php-cgi man page is a simple redirect to
php (CLI) man page.

Could be splited / improved in the future.
2013-07-02 10:42:47 +02:00
Anatol Belski 1968fac697 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed mysql tests parsing phpinfo()
  Update NEWS
  Fixed bug #35703: when session_name("123") consist only digits, should warning
  Fixed bug #49175: mod_files.sh does not support hash bits
2013-07-02 08:24:37 +02:00
Anatol Belski 743c4864eb Fixed mysql tests parsing phpinfo() 2013-07-02 08:23:33 +02:00
Christopher Jones bf8ed4708e Add a few links 2013-07-01 16:48:18 -07:00
Christopher Jones 49a2cd93d6 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Stanislav Malyshev (3) and others
# Via Stanislav Malyshev (3) and Nikita Popov (1)
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  Don't try to clean up generator stack on unclean shutdown
  NEWS
  Added PHP_FCGI_BACKLOG, overrides the default listen backlog
  Fixed bug #49175: mod_files.sh does not support hash bits
  add fix for  #60560 into upgrading
  Add a __wakeup() method to SplFixedArray, thereby fixing serialising an
  Update NEWS
  small optimization
  fix bug #61860: use USearch for searches, it does the right thing
2013-07-01 13:45:44 -07:00
Christopher Jones 06418aca28 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
# By Stanislav Malyshev (3) and others
# Via Stanislav Malyshev (1) and Yasuo Ohgaki (1)
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Update NEWS
  Fixed bug #35703: when session_name("123") consist only digits, should warning
  Fixed bug #49175: mod_files.sh does not support hash bits
  add fix for  #60560 into upgrading
  Add a __wakeup() method to SplFixedArray, thereby fixing serialising an
  small optimization
  fix bug #61860: use USearch for searches, it does the right thing
2013-07-01 13:45:41 -07:00
Nikita Popov 0f36224beb Don't try to clean up generator stack on unclean shutdown
This fixes bugs #65035 and #65161. In one of the bugs the issue is
that function_state.arguments is NULL, but the arg count is pushed
to the stack and the code tries to free it. In the other bug the
stack of the generator is freed twice, once in generator_close and
later during shutdown.

It's rather hard (if at all possible) to do a proper stack cleanup
on an unclean shutdown, so I'm just disabling it in this case.
2013-06-29 21:51:54 +02:00
Arnaud Le Blanc 5904da9948 NEWS 2013-06-29 17:54:55 +02:00
Arnaud Le Blanc 18f45c535b Added PHP_FCGI_BACKLOG, overrides the default listen backlog 2013-06-29 17:52:04 +02:00
Yasuo Ohgaki 46214a23b8 Update NEWS 2013-06-29 11:38:23 +09:00
Yasuo Ohgaki 87dda666c7 Fixed bug #35703: when session_name("123") consist only digits, should warning 2013-06-29 11:35:55 +09:00
Yasuo Ohgaki ef63334fa6 Fixed bug #49175: mod_files.sh does not support hash bits 2013-06-29 11:35:55 +09:00
Yasuo Ohgaki 27b01cfcd7 Fixed bug #49175: mod_files.sh does not support hash bits 2013-06-29 09:09:23 +09:00
Stanislav Malyshev 657d486013 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add fix for  #60560 into upgrading
2013-06-28 14:01:53 -07:00
Stanislav Malyshev 103cf4c060 add fix for #60560 into upgrading 2013-06-28 14:01:25 -07:00
Stanislav Malyshev 4020ef8980 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add a __wakeup() method to SplFixedArray, thereby fixing serialising an
  Update NEWS
  small optimization
  fix bug #61860: use USearch for searches, it does the right thing
2013-06-28 13:56:11 -07:00
Stanislav Malyshev e46beabe8f Merge branch 'bug61860' into PHP-5.4
* bug61860:
  small optimization
  fix bug #61860: use USearch for searches, it does the right thing
2013-06-28 13:54:57 -07:00
Adam Harvey 3becd3879f Add a __wakeup() method to SplFixedArray, thereby fixing serialising an
SplFixedArray object and bug #60560 (SplFixedArray un-/serialize, getSize(),
count() return 0, keys are strings).
2013-06-28 13:50:33 -07:00
Christopher Jones 2c73f61a1c Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Felipe Pena (11) and others
# Via Felipe Pena (7) and others
* 'PHP-5.5' of https://git.php.net/repository/php-src: (22 commits)
  Fix bug #62535 - $_SESSION[$key]["cancel_upload"] doesn't work as documented
  Update NEWS
  BC fix for PR 109 merge - create_sid() method in SessionHandler
  Update NEWS:w
  Fixed bug #65136 (RecursiveDirectoryIterator segfault)
  - BFN
  - Fixed bug #64467 (Segmentation fault after imap_reopen failure) patch by: askalski at gmail dot com
  - Reclassify bug
  - BFN
  - Fixed bug #63983 (enabling FPM borks compile on FreeBSD) patch by: chibisuke at web dot de
  - Fixed bug #63409 (php-dba function test fails on big-endian machine) patch by: tianhonglouis at gmail dot com
  - Fixed test
  add new test
  Update NEWS
  Fixed bug #65015 (pg_send_query does not flush send buffer) patch submitted by: adam at vektah dot net
  - Fixed typo on condition
  - BFN
  - Fixed bug #62475 (variant_* functions causes crash when null given as an argument)
  Update NEWS
  - BFN
  ...
2013-06-27 16:48:26 -07:00
Christopher Jones 8cb782bbce Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
# By Felipe Pena (9) and others
# Via Arpad Ray (1) and Felipe Pena (1)
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  Update NEWS
  Fix bug #62535 - $_SESSION[$key]["cancel_upload"] doesn't work as documented
  Fixed bug #65136 (RecursiveDirectoryIterator segfault)
  - BFN
  - Fixed bug #64467 (Segmentation fault after imap_reopen failure) patch by: askalski at gmail dot com
  - Reclassify bug
  - BFN
  - Fixed bug #63983 (enabling FPM borks compile on FreeBSD) patch by: chibisuke at web dot de
  - Fixed bug #63409 (php-dba function test fails on big-endian machine) patch by: tianhonglouis at gmail dot com
  - Fixed test
  add new test
  Update NEWS
  Fixed bug #65015 (pg_send_query does not flush send buffer) patch submitted by: adam at vektah dot net
  - BFN
  - Fixed bug #62475 (variant_* functions causes crash when null given as an argument)
2013-06-27 16:48:25 -07:00
Arpad Ray e00ed6bc3f Update NEWS 2013-06-27 19:23:58 +01:00
Arpad Ray 70ae67b5da Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #62535 - $_SESSION[$key]["cancel_upload"] doesn't work as documented
2013-06-27 19:12:46 +01:00
Arpad Ray ce8c023910 Fix bug #62535 - $_SESSION[$key]["cancel_upload"] doesn't work as documented
When uploading multiple files, the array in the session where the progress
data is stored (and cancel_upload key is set) was overwritten whenever the
progress data was updated, so pending uploads would proceed anyway.
2013-06-27 19:05:23 +01:00
Arpad Ray 41565a239f Update NEWS 2013-06-27 12:49:16 +01:00
Arpad Ray 1e836cdd64 BC fix for PR 109 merge - create_sid() method in SessionHandler
Creates a new SessionIdInterface and moves create_sid() into it, so existing
handlers implementing SessionHandlerInterface don't require create_sid().
SessionHandler still includes the method so the default mod can be called, but
now implements both interfaces.

Also added several more tests for this feature.
2013-06-27 12:33:56 +01:00
Arpad Ray b66c14b0c8 Merge PR 109 - Add create_sid to session_set_save_handler and SessionHandler
Allows user session handlers to create session IDs by adding an optional
7th argument to session_set_save_handler() and a create_sid() method
to SessionHandler.
2013-06-27 12:29:44 +01:00
Xinchen Hui 60bbc78bde Update NEWS:w 2013-06-27 12:38:35 +08:00
Xinchen Hui c2cfc242c4 Merge branch 'PHP-5.4' into PHP-5.5 2013-06-27 12:38:13 +08:00
Xinchen Hui fa8611c81e Fixed bug #65136 (RecursiveDirectoryIterator segfault) 2013-06-27 12:37:57 +08:00
Felipe Pena 402b3aaf56 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - BFN
  - Fixed bug #64467 (Segmentation fault after imap_reopen failure) patch by: askalski at gmail dot com
  - Reclassify bug
2013-06-26 19:16:26 -03:00
Felipe Pena 76866e0a2e - BFN 2013-06-26 19:16:13 -03:00
Felipe Pena 60dcc5851f - Fixed bug #64467 (Segmentation fault after imap_reopen failure) patch by: askalski at gmail dot com 2013-06-26 19:15:19 -03:00
Felipe Pena 02682f4169 - Reclassify bug 2013-06-26 15:15:37 -03:00
Felipe Pena efbf573e9f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - BFN
  - Fixed bug #63983 (enabling FPM borks compile on FreeBSD) patch by: chibisuke at web dot de
2013-06-26 15:08:51 -03:00
Felipe Pena 891bd46f3d - BFN 2013-06-26 15:08:33 -03:00
Felipe Pena cd176e0452 - Fixed bug #63983 (enabling FPM borks compile on FreeBSD) patch by: chibisuke at web dot de 2013-06-26 15:06:27 -03:00
Felipe Pena aa31d7e1ef Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #63409 (php-dba function test fails on big-endian machine) patch by: tianhonglouis at gmail dot com
2013-06-26 13:50:43 -03:00
Felipe Pena 7e33b5d2fa - Fixed bug #63409 (php-dba function test fails on big-endian machine) patch by: tianhonglouis at gmail dot com 2013-06-26 13:50:37 -03:00
Felipe Pena 32f11e4ee6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed test
2013-06-26 13:36:41 -03:00
Felipe Pena f477ad22c2 - Fixed test 2013-06-26 13:36:36 -03:00
Andrey Hristov 781be5f1d7 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	NEWS
2013-06-26 16:50:08 +02:00
Andrey Hristov b34e8d2e3e add new test 2013-06-26 16:44:26 +02:00
Yasuo Ohgaki 8922c50ca4 Update NEWS 2013-06-26 16:31:34 +09:00
Yasuo Ohgaki 6c8cef3ca4 Fixed bug #65015 (pg_send_query does not flush send buffer) patch submitted by: adam at vektah dot net 2013-06-26 16:17:57 +09:00
Felipe Pena 623386d799 - Fixed typo on condition 2013-06-25 21:53:20 -03:00
Felipe Pena b68c496175 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - BFN
2013-06-25 21:44:03 -03:00
Felipe Pena 12b75e3d3e - BFN 2013-06-25 21:43:23 -03:00
Felipe Pena fba44be828 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #62475 (variant_* functions causes crash when null given as an argument)
  Update NEWS
  - BFN
2013-06-25 21:40:24 -03:00
Felipe Pena e15ca39708 Merge branch 'PHP-5.4' of git.php.net:/php-src into PHP-5.4 2013-06-25 21:39:17 -03:00
Felipe Pena 4289696828 - Fixed bug #62475 (variant_* functions causes crash when null given as an argument) 2013-06-25 21:36:50 -03:00
Christopher Jones 91bd2de85c Update NEWS 2013-06-25 17:31:13 -07:00
Christopher Jones 12fdf8fb95 Update NEWS 2013-06-25 17:30:21 -07:00
Christopher Jones 99ab8a83af Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
# By Felipe Pena
# Via Felipe Pena
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  - Fixed bug #62672 (Error on serialize of ArrayObject) patch by: lior dot k at zend dot com
  - BFN
  - Fixed bug #62964 (Possible XSS on "Registered stream filters" info) patch by: david at nnucomputerwhiz dot com
2013-06-25 17:28:12 -07:00
Christopher Jones 111b385afe Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
# By Felipe Pena
# Via Felipe Pena
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  - BFN
  - Fixed bug #62672 (Error on serialize of ArrayObject) patch by: lior dot k at zend dot com
  - BFN
  - Fixed bug #62964 (Possible XSS on "Registered stream filters" info) patch by: david at nnucomputerwhiz dot com
2013-06-25 17:28:11 -07:00
Felipe Pena a689fde2bf - BFN 2013-06-25 21:19:56 -03:00
Felipe Pena f5bf90ef34 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #62672 (Error on serialize of ArrayObject) patch by: lior dot k at zend dot com
  - BFN
2013-06-25 21:18:34 -03:00
Felipe Pena 04db57066d - Fixed bug #62672 (Error on serialize of ArrayObject) patch by: lior dot k at zend dot com 2013-06-25 21:18:09 -03:00
Felipe Pena 40c3601947 - BFN 2013-06-25 18:04:25 -03:00
Felipe Pena 2ab53f4b5e Merge branch 'PHP-5.4' of git.php.net:/php-src into PHP-5.4 2013-06-25 18:01:46 -03:00
Felipe Pena b78f129a4a Merge branch 'PHP-5.5' of git.php.net:/php-src into PHP-5.5 2013-06-25 18:01:40 -03:00
Felipe Pena adb116dd48 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #62964 (Possible XSS on "Registered stream filters" info) patch by: david at nnucomputerwhiz dot com
  - BFN
2013-06-25 18:00:42 -03:00
Felipe Pena 41b73e4cee - Fixed bug #62964 (Possible XSS on "Registered stream filters" info) patch by: david at nnucomputerwhiz dot com 2013-06-25 18:00:33 -03:00
Christopher Jones c3f4cc2e40 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - BFN
2013-06-25 13:25:04 -07:00
Christopher Jones 3675b953f6 Merge branch 'PHP-5.5' of https://git.php.net/repository/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/repository/php-src:
  - Fixed bug #60732 (php_error_docref links to invalid pages) patch by: Jakub Vrana
2013-06-25 13:23:50 -07:00
Christopher Jones 5d0094e5f9 Merge branch 'PHP-5.4' of https://git.php.net/repository/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/repository/php-src:
  - BFN
  - Fixed bug #60732 (php_error_docref links to invalid pages) patch by: Jakub Vrana
2013-06-25 13:23:25 -07:00
Felipe Pena 5ae1983b33 - BFN 2013-06-25 16:27:30 -03:00
Felipe Pena d01ca1342c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #60732 (php_error_docref links to invalid pages) patch by: Jakub Vrana
2013-06-25 16:26:36 -03:00
Felipe Pena 6ba93a4bae - Fixed bug #60732 (php_error_docref links to invalid pages) patch by: Jakub Vrana 2013-06-25 16:26:26 -03:00
Christopher Jones ec7ac71b52 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Minium changes to allow PDO_OCI to build with Oracle Database 12c libraries. (note OCI8 already builds with Oracle Database 12c)
2013-06-25 12:00:24 -07:00
Christopher Jones a52258ae17 Merge branch 'configure12c' into PHP-5.4
* configure12c:
  Minium changes to allow PDO_OCI to build with Oracle Database 12c libraries. (note OCI8 already builds with Oracle Database 12c)
2013-06-25 12:00:08 -07:00
Christopher Jones 423b132a7a Minium changes to allow PDO_OCI to build with Oracle Database 12c libraries.
(note OCI8 already builds with Oracle Database 12c)
2013-06-25 11:55:41 -07:00
Xinchen Hui 157ccaf507 Fixed bug #64827 Segfault in zval_mark_grey (zend_gc.c)
I can not get a reproduce script since the context is very strict.

Of course I will try to make one, but for now, I just commit this first.
2013-06-25 13:47:50 +08:00
Xinchen Hui efd3c72de3 Update NEWS 2013-06-25 13:39:31 +08:00
Xinchen Hui 9d9ec2a90e Merge branch 'PHP-5.4' into PHP-5.5 2013-06-25 13:38:50 +08:00
Xinchen Hui 38eb909d06 Fixed Bug #61828 (Memleak when calling Directory(Recursive)Iterator/Spl(Temp)FileObject ctor twice) 2013-06-25 13:38:27 +08:00
Christopher Jones 0093980fe0 Some tidy-ups: Don't mention Logo GUIDs in three places; mention
password_hash functionality; add some doc URLs for new features;
grammar & typos; formatting changes.
2013-06-24 17:12:35 -07:00
Felipe Pena ff292d619c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #61594 (ext/session/mod_mm.c: missing free of ps_mm_instance) patch by: jlawall at hotmail dot com
  - BFN
2013-06-24 16:49:22 -03:00
Felipe Pena 982c11573d - Fixed bug #61594 (ext/session/mod_mm.c: missing free of ps_mm_instance) patch by: jlawall at hotmail dot com 2013-06-24 16:49:15 -03:00
Felipe Pena d43a2f0ffb - BFN 2013-06-24 14:50:14 -03:00
Felipe Pena 4b41959f9e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - Fixed bug #61387 (NULL valued anonymous column causes segfault in odbc_fetch_array) patch by: Brandon Kirsch
2013-06-24 14:47:40 -03:00
Felipe Pena 8776555d7a - Fixed bug #61387 (NULL valued anonymous column causes segfault in odbc_fetch_array) patch by: Brandon Kirsch 2013-06-24 14:43:35 -03:00
Xinchen Hui 47035ba5c9 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-06-24 23:49:45 +08:00
Xinchen Hui a6a3aa5d49 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	Zend/zend_API.c
2013-06-24 23:49:30 +08:00
Xinchen Hui 9cf3e65391 Fixed bug (is_callable() triggers Fatal Error)
This bug is also exists in 5.4, and previous fix by dsp is not complete
for __callStatic stituation, see test script
2013-06-24 23:45:08 +08:00
David Soria Parra 0ddfafe489 Notify doc team BEFORE we release 2013-06-24 17:44:00 +02:00
David Soria Parra ecd9d76250 Fix #65108 (is_callable() triggers Fatal Error)
We have to check if the fcall info cache contains a pointer if we
use __call, otherwise we endup in a static lookup.
2013-06-24 15:55:10 +02:00
Remi Collet 9da4985bf2 fix imagecreatefromwebp and imagewebp protos 2013-06-24 11:15:50 +02:00
Remi Collet 8075f1f4a3 Use same logic to load WebP image that other formats 2013-06-24 11:10:52 +02:00
Remi Collet b4632d0c12 Upstream fix from https://bitbucket.org/libgd/gd-libgd/issue/75 2013-06-24 11:03:12 +02:00
Dmitry Stogov f49b27e166 OPcache must be compatible with LiteSpeed SAPI 2013-06-24 11:59:50 +04:00
Stanislav Malyshev e3d625bc4e small optimization 2013-06-23 23:52:28 -07:00
Stanislav Malyshev ae5a09b47d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  seems to be working fine for me on 32-bit
2013-06-23 23:37:10 -07:00
Stanislav Malyshev a0d48e01ed seems to be working fine for me on 32-bit 2013-06-23 23:36:43 -07:00
Stanislav Malyshev 8aba119f55 fix bug #61860: use USearch for searches, it does the right thing 2013-06-23 23:24:12 -07:00
Stanislav Malyshev 9872835cf3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #62759: Buggy grapheme_substr() on edge case
2013-06-23 21:27:08 -07:00
Stanislav Malyshev 860a5c4b01 Fix bug #62759: Buggy grapheme_substr() on edge case 2013-06-23 21:26:16 -07:00
Jakub Vrana e1acaea4f1 Require second parameter of imagecrop() 2013-06-23 20:29:54 -07:00
Stanislav Malyshev 1beb24bd6f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Implements feature Bug #63472 ability to set SO_BINDTODEVICE on socket.

Conflicts:
	ext/sockets/sockets.c
2013-06-23 15:26:14 -07:00
Damjan Cvetko a0b4348abc Implements feature Bug #63472 ability to set SO_BINDTODEVICE on socket. 2013-06-23 15:20:54 -07:00
Stanislav Malyshev 7272e3e722 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Adding test to verify that __sleep can handle parent classes' private members
  Adding test to stabelize keys used when converting objects to arrays
2013-06-23 13:54:50 -07:00
Marco Pivetta f1e37d03c1 Adding test to verify that __sleep can handle parent classes' private members 2013-06-23 13:53:46 -07:00
Marco Pivetta 61fb822d1a Adding test to stabelize keys used when converting objects to arrays 2013-06-23 13:53:37 -07:00
Adam Harvey 296a12efbb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #65088 (Generated configure script is malformed on OpenBSD).
2013-06-23 11:04:10 -07:00
Adam Harvey 2531307be6 Fix bug #65088 (Generated configure script is malformed on OpenBSD).
We fell foul of a "common urban legend"[0], which resulted in us backslash
escaping double quotes that we didn't need to in acinclude.m4. This worked fine
on most shells, but OpenBSD's ksh implementation really didn't like it.

[0] http://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.69/html_node/Shell-Substitutions.html
2013-06-23 11:02:00 -07:00
Remi Collet fc898ee0f9 Fixed Bug #65060 imagecreatefrom... crashes with user streams
Fixed Bug #65084 imagecreatefromjpeg fails with URL

Regression introduced in 8a90aad (drop of USE_GD_IOCTX)
Secure with php_stream_can_cast to avoid segfault in php_stream_cast.
(encountered when imagecreatefromxpm with URL)
2013-06-21 14:11:04 +02:00
Ard Biesheuvel 162726241c Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	Zend/zend_vm_def.h
2013-06-21 11:26:37 +02:00
Ard Biesheuvel 8623562b02 Fix non-specialized executor build
Removed a couple of calls to FREE_OP2() that were left behind in
the handlers for break and continue opcodes after commit 7628da98
2013-06-21 11:25:23 +02:00
Pierre Joye c65d663aef fix #65070, bgcolor does not use the same format as the input image with imagerotate 2013-06-20 22:22:07 +02:00
Pierre Joye 876b474c7d Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-06-20 22:19:53 +02:00
Pierre Joye 07e52857b5 fix #65070, bgcolor does not use the same format as the input image with imagerotate 2013-06-20 22:19:33 +02:00
Adam Harvey 77c46ba516 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix the spelling of the php_cli_server_http_response_status_code_pair typedef.
  Change the search in get_status_string() to correctly handle unknown codes.
2013-06-20 09:39:37 -07:00
Adam Harvey f5c7fe9202 Fix the spelling of the php_cli_server_http_response_status_code_pair typedef.
Specifically: php_cli_server_http_reponse_status_code_pair →
php_cli_server_http_response_status_code_pair.
2013-06-20 09:34:21 -07:00
Adam Harvey 283f56af66 Change the search in get_status_string() to correctly handle unknown codes.
This previously used a buggy implementation of binary search that would loop
infinitely for unknown codes when searching in reason arrays of particular
sizes (such as the one we have at the moment). Since C provides bsearch(),
we'll just use that instead, since libc authors hopefully get this right.

There was also an additional bug that was masked by the first one: the design
was that an unknown code would result in get_status_string() returning NULL,
which would then result in a segfault in append_http_status_line(), since it
assumed that it would always receive a valid string pointer that could be
handed off to smart_str_appends_ex(). We'll now return a placeholder in that
case.

Fixes bug #65066 (Cli server not responsive when responding with 422 http
status code).
2013-06-20 09:31:57 -07:00
Johannes Schlüter 94e7549719 Merge branch 'PHP-5.4' into PHP-5.5 2013-06-20 11:57:10 +02:00
Johannes Schlüter b5978e239e Merge branch 'PHP-5.3' into PHP-5.4 2013-06-20 11:52:29 +02:00
Johannes Schlüter e4ee921b7e Update git rules (5.5 is stable, 5.3 sec only) 2013-06-20 11:51:21 +02:00
Remi Collet 60afd3fce4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  skip test for bug #64936 when tokenizer not built
2013-06-20 08:42:30 +02:00
Remi Collet 9be591bdb5 skip test for bug #64936 when tokenizer not built 2013-06-20 08:42:07 +02:00
David Soria Parra 83fc53acb9 Bump version 2013-06-19 22:11:52 +02:00
David Soria Parra c1b8fbc112 Update credits 2013-06-19 22:03:18 +02:00
David Soria Parra 8547628fec Merge NEWS from PHP 5.4 branch 2013-06-19 21:54:34 +02:00
David Soria Parra 2bac1ff137 Reorder NEWS for PHP 5.5.0 final 2013-06-19 21:50:05 +02:00
Pierre Joye 0a6ec7a2c9 add notes about opcache windows issue and migration from APC 2013-06-19 17:57:08 +02:00
Anatol Belski 2873b5b6eb added some tests based on bug #64395 2013-06-19 16:24:30 +02:00
Johannes Schlüter c6b8d992ba Merge branch 'PHP-5.4' into PHP-5.5 2013-06-19 15:09:33 +02:00
Johannes Schlüter 0e55d3a12a Merge branch 'PHP-5.3' into PHP-5.4 2013-06-19 15:09:04 +02:00
Johannes Schlüter f0eaa02f6f This will be PHP 5.3.28 2013-06-19 15:08:02 +02:00
Remi Collet fb68e0fe63 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Related to bug #65047 (Test skip on client / server version)
2013-06-19 12:26:53 +02:00
Remi Collet 67bde2f8ac Related to bug #65047 (Test skip on client / server version)
bug46274.phpt and bug46274_2.phpt
Make query silent (when server don't know bytea_output option)

bug_49985.phpt
Make result "locale" independent
2013-06-19 12:26:21 +02:00
Matteo Beccati 9b8259cdfa Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #65047 (Test skip on client / server version)
  Remove broken client version checking
  Clean up leftover file after the test
2013-06-19 11:53:05 +02:00
Matteo Beccati c666239265 Fixed bug #65047 (Test skip on client / server version) 2013-06-19 11:48:03 +02:00
Matteo Beccati 25e9aa6b0a Remove broken client version checking 2013-06-19 11:48:03 +02:00
Matteo Beccati 5edd530511 Clean up leftover file after the test 2013-06-19 11:48:03 +02:00
Stanislav Malyshev 7b08c7f4e7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  sync NEWS
2013-06-18 23:09:29 -07:00
Stanislav Malyshev e2bb74ab4f sync NEWS 2013-06-18 23:06:20 -07:00
Stanislav Malyshev 59d4d41efb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.18 next

Conflicts:
	configure.in
	main/php_version.h
2013-06-18 22:59:26 -07:00
Stanislav Malyshev dda3f404ec 5.4.18 next 2013-06-18 22:58:11 -07:00
Xinchen Hui bb9928c343 Merge branch 'PHP-5.4' into PHP-5.5 2013-06-19 11:17:44 +08:00
Xinchen Hui 2ce4bd7f2d Fix test typo 2013-06-19 11:15:52 +08:00
Nikita Popov 86434be946 Fix bug #65051: count() off by one inside unset()
nNumOfElements was incremented after the pDestructor code, so any
code in the dtor would get a wrong number of elements.

Right now the bucket deletion code is replicated in four places,
it should probably be moved off into one function (or rather,
zend_hash_apply_deleter should be used everywhere). The codes are
subtly different though in that the HANDLE_UNBLOCK_INTERRUPTIONS()
happens in different places. In particular it seems odd that in
some cases interruptions stay blocked during the destructor call.
2013-06-17 23:44:13 +02:00
Stanislav Malyshev d587efb7ee Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Merge branch 'pull-request/320'
2013-06-17 01:06:28 -07:00
Stanislav Malyshev af5e2eaf8d Merge branch 'pull-request/320'
* pull-request/320:
  this is test 5 not 6
  fix race condition
  more shared names that create race conditions
  change to a unique filename
  more shared filenames
  yet another shared filename
  don't share a filename to stop race conditions
  fix race condition for 2-4 and normalize names for others
  fix race condition when running tests in parallel
  clean up after test
  Fix #64572: Clean up after the test
  Fix #64572: Clean up after the test
2013-06-17 01:06:20 -07:00
Stanislav Malyshev 6b896fa57f Merge branch 'pull-request/320'
* pull-request/320:
  this is test 5 not 6
  fix race condition
  more shared names that create race conditions
  change to a unique filename
  more shared filenames
  yet another shared filename
  don't share a filename to stop race conditions
  fix race condition for 2-4 and normalize names for others
  fix race condition when running tests in parallel
  clean up after test
  Fix #64572: Clean up after the test
  Fix #64572: Clean up after the test
2013-06-17 01:06:01 -07:00
Stanislav Malyshev a080611e48 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Tests: PDO Mysql - update for fixed getColumnMeta()
  fix bug #48724
2013-06-17 00:42:21 -07:00
Daniel Beardsley 5ac0ee30ce Tests: PDO Mysql - update for fixed getColumnMeta()
The test has always been disabled... so it's never run anyway. Oh well.
2013-06-17 00:41:21 -07:00
Antony Dovgal 95cc763a14 fix bug #48724
PDO's getColumnMeta() doesn't return native_type for BIT, TINYINT and YEAR
2013-06-17 00:27:21 -07:00
Stanislav Malyshev 69d187de02 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  readline can output control codes
  Bug #55694: Update readline test to support attempted_completion_over variable
  Bug #55694: Expose attempted_completion_over variable from readline library
2013-06-17 00:17:06 -07:00
Stanislav Malyshev 248414f132 readline can output control codes 2013-06-17 00:15:31 -07:00
Hartmel 272c5edea4 Bug #55694: Update readline test to support attempted_completion_over variable 2013-06-16 23:44:44 -07:00
Hartmel ca3e0862db Bug #55694: Expose attempted_completion_over variable from readline library 2013-06-16 23:42:43 -07:00
Xinchen Hui aa2369f85a Merge branch 'PHP-5.4' into PHP-5.5 2013-06-17 13:23:24 +08:00
Xinchen Hui cfb1ffb4fa Fix typo in test 2013-06-17 13:22:20 +08:00
Stanislav Malyshev 9bfb28c793 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Identation Fixed
2013-06-16 18:14:16 -07:00
Jefersson Nathan ebef8c4176 Identation Fixed 2013-06-16 18:13:49 -07:00
Stanislav Malyshev 59280d910a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Identation Fixed
2013-06-16 18:13:26 -07:00
Jefersson Nathan 1498b8260b Identation Fixed 2013-06-16 18:13:14 -07:00
Stanislav Malyshev a770ae36c2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #64764: Add status option to fpm init.d script
2013-06-16 16:56:29 -07:00
Lior Kaplan ee01af7df1 Fix bug #64764: Add status option to fpm init.d script 2013-06-16 16:54:49 -07:00
Stanislav Malyshev 44822a7166 update NEWS 2013-06-16 16:41:23 -07:00
Stanislav Malyshev d44daff4d0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  news for #64166
2013-06-16 16:40:52 -07:00
Stanislav Malyshev 2a93fd1347 news for #64166 2013-06-16 16:40:39 -07:00
Stanislav Malyshev 7d1fef15cf Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add more tests for bug #64166
  Move unsigned char declaration to top of block
  trailing ws
  Fix #64166: quoted-printable-encode stream filter incorrectly discarding whitespace
  Fix #64166: quoted-printable-encode stream filter incorrectly discarding whitespace
2013-06-16 16:38:49 -07:00
Stanislav Malyshev 7bb052ee3e add more tests for bug #64166 2013-06-16 16:34:34 -07:00
Michael M Slusarz 0dc98208ee Move unsigned char declaration to top of block 2013-06-16 16:04:29 -07:00
Michael M Slusarz d9c034ee5e trailing ws 2013-06-16 16:04:24 -07:00
Michael M Slusarz b5b0a53b09 Fix #64166: quoted-printable-encode stream filter incorrectly discarding whitespace
Second attempt: need to use lookaheadto determine whether to encode ws
2013-06-16 16:04:19 -07:00
Michael M Slusarz 600d6deef9 Fix #64166: quoted-printable-encode stream filter incorrectly discarding whitespace
If trailing whitespace on a line is detected, mark the linebreak as a
soft linebreak.
2013-06-16 16:04:14 -07:00
Stanislav Malyshev ac343d5c1f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #64936 - clean doc comment state at the beginning and end of the scan
  ws fix

Conflicts:
	Zend/zend_language_scanner.c
	Zend/zend_language_scanner.l
	Zend/zend_language_scanner_defs.h
2013-06-16 15:29:25 -07:00
Stanislav Malyshev 2208447d42 Fix bug #64936 - clean doc comment state at the beginning and end of the scan 2013-06-16 15:22:23 -07:00
Stanislav Malyshev 088c183639 ws fix 2013-06-16 15:22:23 -07:00
Anatol Belski 3625b83aaa Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix test
2013-06-17 00:10:32 +02:00
Anatol Belski b6dd1ec60d fix test
breach introduced in ac40c0b562
2013-06-17 00:09:05 +02:00
Xinchen Hui e3e4ec3f55 Update NEWS 2013-06-16 22:56:47 +08:00
Xinchen Hui 6cd6349ff8 Merge branch 'PHP-5.4' into PHP-5.5 2013-06-16 22:56:22 +08:00
Xinchen Hui 49e57a3165 Fixed bug #63176 (Segmentation fault when instantiate 2 persistent PDO to the same db server) 2013-06-16 22:55:59 +08:00
Boris Lytochkin 3dd2de3f45 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix typo in test
2013-06-16 00:09:55 +04:00
Boris Lytochkin 7457867ba8 fix typo in test 2013-06-16 00:09:18 +04:00
Boris Lytochkin 0741697107 Merge branch 'PHP-5.5' of https://git.php.net/push/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/push/php-src: (147 commits)
  Fixed bug #63186 (compile failure on netbsd)
  fix test for bug #60322
  ensure the error_reporting level to get expected notice
  fixed tests
  missing tests for bug #53437
  fixed EOL
  added closing ?>
  fix double entry
  Merge branch 'pull-request/341'
  Merge branch 'pull-request/341'
  Merge branch 'pull-request/341'
  split the test for 32 and 64 bit
  typo fixes (argument)
  typo fixes (accommodate, parameter)
  missing colon
  Backported the fix for bug #53437
  Backported the fix for bug #53437
  fixed the test
  Fix a BC breach related to bug #53437
  Fixed bug #64988 (Class loading order affects E_STRICT warning)
  ...
2013-06-16 00:04:00 +04:00
Boris Lytochkin 8acfa0b3f8 Merge branch 'PHP-5.4' of https://git.php.net/push/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/push/php-src: (76 commits)
  Fixed bug #63186 (compile failure on netbsd)
  fix test for bug #60322
  ensure the error_reporting level to get expected notice
  fixed tests
  missing tests for bug #53437
  fix double entry
  Merge branch 'pull-request/341'
  typo fixes (argument)
  typo fixes (accommodate, parameter)
  missing colon
  Backported the fix for bug #53437
  Backported the fix for bug #53437
  Fixed bug #64988 (Class loading order affects E_STRICT warning)
  Fixed test script
  PHPTests for the DOMDocument::loadHTMLfile method. They cover - The basic behaviour - When the method receives as argument a file which doesn't exist - When the argument is an empty string - When an empty file is loaded - When a not-well formed html file is loaded
  Fix spelling and correct typo.
  Callback has to be restored in MSHUTDOWN
  Update NEWs
  Fixed bug #64997 (Segfault while using RecursiveIteratorIterator on 64-bits systems)
  Fixed merge wrongly
  ...
2013-06-16 00:03:30 +04:00
Matteo Beccati 6f594514b0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #63186 (compile failure on netbsd)
2013-06-14 16:55:12 +02:00
Matteo Beccati 02f552ceca Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #63186 (compile failure on netbsd)
2013-06-14 16:54:32 +02:00
Matteo Beccati 6238dd6f32 Fixed bug #63186 (compile failure on netbsd) 2013-06-14 16:51:54 +02:00
Stanislav Malyshev e74776266f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix test for bug #60322
2013-06-13 10:30:18 -07:00
Stanislav Malyshev 10b9579395 fix test for bug #60322 2013-06-13 10:30:00 -07:00
Anatol Belski a0cb61b292 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  ensure the error_reporting level to get expected notice
2013-06-12 13:15:18 +02:00
Anatol Belski ed2690477c Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  ensure the error_reporting level to get expected notice
2013-06-12 13:14:53 +02:00
Anatol Belski cd1b44c4b6 ensure the error_reporting level to get expected notice 2013-06-12 13:13:48 +02:00
Anatol Belski cb542d3c83 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed tests
2013-06-11 12:39:50 +02:00
Anatol Belski 1cc750493f Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fixed tests
2013-06-11 12:39:28 +02:00
Anatol Belski eccc05fc44 fixed tests 2013-06-11 12:38:49 +02:00
Anatol Belski 7704e40d8f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  missing tests for bug #53437
2013-06-11 11:24:16 +02:00
Anatol Belski 251ec84a97 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  missing tests for bug #53437
2013-06-11 11:22:55 +02:00
Anatol Belski f16143f5ac missing tests for bug #53437 2013-06-11 11:19:57 +02:00
Anatol Belski bd4f6ad8a0 fixed EOL 2013-06-11 08:32:54 +02:00
Anatol Belski 28e264db2a added closing ?> 2013-06-11 08:25:38 +02:00
Stanislav Malyshev 8acf9a4fe6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix double entry
  Merge branch 'pull-request/341'
2013-06-10 18:16:09 -07:00
Stanislav Malyshev 760b7d00c3 fix double entry 2013-06-10 18:15:03 -07:00
Stanislav Malyshev 4427d1dcfd Merge branch 'pull-request/341'
* pull-request/341: (23 commits)
  typofixes
2013-06-10 14:30:59 -07:00
Stanislav Malyshev 02e4d7a290 Merge branch 'pull-request/341'
* pull-request/341: (23 commits)
  typofixes
2013-06-10 14:30:59 -07:00
Stanislav Malyshev ac40c0b562 Merge branch 'pull-request/341'
* pull-request/341: (23 commits)
  typofixes
2013-06-10 14:20:18 -07:00
Anatol Belski ec79075394 split the test for 32 and 64 bit 2013-06-10 22:49:30 +02:00
Stanislav Malyshev 84e35fb2e0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  typo fixes (argument)
  typo fixes (accommodate, parameter)
2013-06-10 13:36:41 -07:00
Veres Lajos 04145dc2aa typo fixes (argument) 2013-06-10 13:36:17 -07:00
Veres Lajos ed2e84e239 typo fixes (accommodate, parameter) 2013-06-10 13:36:03 -07:00
Anatol Belski cf5b3fb166 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  missing colon
2013-06-10 19:55:30 +02:00
Anatol Belski 7a1e670d76 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  missing colon
2013-06-10 19:55:06 +02:00
Anatol Belski 18403e496d missing colon 2013-06-10 19:54:29 +02:00
Anatol Belski 3a92c1beeb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Backported the fix for bug #53437
  Backported the fix for bug #53437
2013-06-10 19:53:03 +02:00
Anatol Belski 0f9cf35315 Backported the fix for bug #53437 2013-06-10 19:52:29 +02:00
Anatol Belski e1e07cb431 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Backported the fix for bug #53437
2013-06-10 19:49:31 +02:00
Anatol Belski 88c2dbe5fc Backported the fix for bug #53437 2013-06-10 19:48:18 +02:00
Anatol Belski 760c85a70a fixed the test 2013-06-10 18:31:18 +02:00
Anatol Belski 02f3922047 Fix a BC breach related to bug #53437
days and special_amount properties are exported as int again
2013-06-10 17:48:13 +02:00
Xinchen Hui a9d005c04e Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	Zend/zend_compile.c
2013-06-10 21:31:25 +08:00
Xinchen Hui d8792d87cf Fixed bug #64988 (Class loading order affects E_STRICT warning) 2013-06-10 21:26:11 +08:00
Jakub Vrana 46d3738d0a Fix image method signatures 2013-06-10 02:24:03 -07:00
Dmitry Stogov 53c39e2b4e Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4
* 'PHP-5.4' of git.php.net:php-src:
  PHPTests for the DOMDocument::loadHTMLfile method. They cover - The basic behaviour - When the method receives as argument a file which doesn't exist - When the argument is an empty string - When an empty file is loaded - When a not-well formed html file is loaded
  Fix spelling and correct typo.
2013-06-10 12:59:28 +04:00
Dmitry Stogov ed0767f5d4 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  PHPTests for the DOMDocument::loadHTMLfile method. They cover - The basic behaviour - When the method receives as argument a file which doesn't exist - When the argument is an empty string - When an empty file is loaded - When a not-well formed html file is loaded
  Fix spelling and correct typo.
  Fix spelling and correct typo.
2013-06-10 12:59:09 +04:00
Dmitry Stogov ef20fdb338 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed test script
2013-06-10 12:55:51 +04:00
Dmitry Stogov f68b8a5e74 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed test script
2013-06-10 12:54:54 +04:00
Stanislav Malyshev 7a2d9690fe Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  PHPTests for the DOMDocument::loadHTMLfile method. They cover - The basic behaviour - When the method receives as argument a file which doesn't exist - When the argument is an empty string - When an empty file is loaded - When a not-well formed html file is loaded
2013-06-10 01:53:29 -07:00
Dmitry Stogov f5f6404260 Fixed test script 2013-06-10 12:53:19 +04:00
Antonio Diaz Ruiz 8a8bef1b73 PHPTests for the DOMDocument::loadHTMLfile method.
They cover
- The basic behaviour
- When the method receives as argument a file which doesn't exist
- When the argument is an empty string
- When an empty file is loaded
- When a not-well formed html file is loaded

It also includes 2 auxilary files
- An empty html file
- A not well formed html file
2013-06-10 01:50:00 -07:00
Stanislav Malyshev 20df5f8f24 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix spelling and correct typo.
2013-06-10 01:42:32 -07:00
Carson McDonald f4e3c7ab7c Fix spelling and correct typo. 2013-06-10 01:42:27 -07:00
Stanislav Malyshev de1688d16e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix spelling and correct typo.
2013-06-10 01:41:16 -07:00
Carson McDonald b8cf17635e Fix spelling and correct typo. 2013-06-10 01:40:41 -07:00
Dmitry Stogov 731b4a3fa4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Callback has to be restored in MSHUTDOWN
2013-06-10 12:34:08 +04:00
Dmitry Stogov 336a8e1943 Callback has to be restored in MSHUTDOWN 2013-06-10 12:32:53 +04:00
Dmitry Stogov 53e6529203 Fixed comments 2013-06-10 12:05:20 +04:00
Dmitry Stogov 23a9bb09ba Avoid multiple allocations of the same key in different processes 2013-06-10 11:43:03 +04:00
Dmitry Stogov 540488bf55 Compact HashTables before storing them in shared memory 2013-06-10 11:22:19 +04:00
Dmitry Stogov 2e9d3e8b39 Use size_t instead of int 2013-06-10 10:36:35 +04:00
Xinchen Hui 8ae43caeee Update NEWS 2013-06-09 22:26:07 +08:00
Xinchen Hui 3f229f4364 Merge branch 'PHP-5.4' into PHP-5.5 2013-06-09 22:25:49 +08:00
Xinchen Hui fdd7379686 Update NEWs 2013-06-09 22:25:28 +08:00
Xinchen Hui f338510c94 Merge branch 'PHP-5.3' into PHP-5.4 2013-06-09 22:25:07 +08:00
Xinchen Hui 75c57122e3 Fixed bug #64997 (Segfault while using RecursiveIteratorIterator on 64-bits systems) 2013-06-09 22:24:48 +08:00
Xinchen Hui b839e6921d Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	Zend/zend_vm_def.h
2013-06-09 14:25:53 +08:00
Xinchen Hui e14800dd46 Fixed merge wrongly 2013-06-09 14:24:05 +08:00
Xinchen Hui 6139358804 Update NEWS 2013-06-09 13:49:43 +08:00
Xinchen Hui f372e00332 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	Zend/zend_vm_def.h
2013-06-09 13:49:26 +08:00
Xinchen Hui 3cc891bf3a Update NEWS 2013-06-09 13:39:40 +08:00
Xinchen Hui ab22fda7e5 Merge branch 'PHP-5.3' into PHP-5.4 2013-06-09 13:35:45 +08:00
Xinchen Hui e8f004d542 Fixed bug #64966 (segfault in zend_do_fcall_common_helper_SPEC) 2013-06-09 13:20:40 +08:00
Stanislav Malyshev bccacb6308 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix 5.4.16 date
2013-06-06 13:27:25 -07:00
Stanislav Malyshev a7e25bdd48 fix 5.4.16 date 2013-06-06 13:27:04 -07:00
Anatol Belski 25980d4db5 fix NEWS 2013-06-06 18:57:20 +02:00
Anatol Belski f47e879235 updated NEWS 2013-06-06 18:53:22 +02:00
Anatol Belski bbdbef40db Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed bug #64934 Apache2 TS crash with get_browser()
2013-06-06 18:52:39 +02:00
Anatol Belski 4b96b8f909 updated NEWS 2013-06-06 18:52:05 +02:00
Anatol Belski 25cae37b13 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #64934 Apache2 TS crash with get_browser()
2013-06-06 18:51:32 +02:00
Anatol Belski 1aee7ad636 Fixed bug #64934 Apache2 TS crash with get_browser()
In favour of reading the browscap.ini into a true global var
only once in MINIT, the price for that is to deep copy the
any data from it.
2013-06-06 18:49:04 +02:00
David Soria Parra c649186c31 News update 2013-06-05 23:08:48 +02:00
David Soria Parra aef5295756 PHP 5.5.0RC3 NEWS 2013-06-05 23:06:51 +02:00
Johannes Schlüter fdeefc466e Merge branch 'PHP-5.4' into PHP-5.5 2013-06-05 16:35:14 +02:00
Johannes Schlüter 5ee047b486 Merge branch 'PHP-5.3' into PHP-5.4 2013-06-05 16:34:54 +02:00
Johannes Schlüter ec3bcbcb5a Add NEWS for PHP 5.3.26 2013-06-05 16:34:18 +02:00
Xinchen Hui 7da648ff2f Update NEWS 2013-06-05 17:30:57 +08:00
Xinchen Hui e89537f2a3 Merge branch 'PHP-5.4' into PHP-5.5 2013-06-05 17:30:09 +08:00
Xinchen Hui 3c93402f86 Update NEWS 2013-06-05 17:29:04 +08:00
Xinchen Hui f597f5561e Merge branch 'PHP-5.3' into PHP-5.4 2013-06-05 17:26:10 +08:00
Xinchen Hui 3c87945c95 Fixed bug #64960 (Segfault in gc_zval_possible_root) 2013-06-05 17:25:00 +08:00
Stanislav Malyshev 785f4c5fc6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix CVE-2013-2110 - use correct formula to calculate string size
2013-06-04 22:00:45 -07:00
Stanislav Malyshev efdeec3c0e Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix CVE-2013-2110 - use correct formula to calculate string size
2013-06-04 21:58:44 -07:00
Stanislav Malyshev 93e0d78ec6 fix CVE-2013-2110 - use correct formula to calculate string size 2013-06-04 21:56:33 -07:00
Stanislav Malyshev 74e52eaea9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  news for dblib fixes
  Fix PDO_DBLIB bugs: #64338, #64808, #63638

Conflicts:
	ext/pdo_dblib/dblib_driver.c
	ext/pdo_dblib/dblib_stmt.c
2013-06-03 22:00:51 -07:00
Stanislav Malyshev 90bb28726b news for dblib fixes 2013-06-03 21:54:50 -07:00
Stanley Sufficool d8f938c784 FIX BUG #55647, #60512, #60512, #61900, #64338, #64808, #63638
Return an error on passwords longer than 30 chars instead of segfault.
Set error and message handlers properly.
Do not segfault in out of bound colnums in getColumnMeta()
Fix DBSETOPT to use a blank string instead of NULL to stop FreeTDS complaints.
Use DBSETLDBNAME for compatibillity with SQL Azure.
2013-06-03 20:34:47 -07:00
Stanley Sufficool 5a04ab9a54 Fix PDO_DBLIB bugs: #64338, #64808, #63638
Synchronize with master
2013-06-03 20:02:08 -07:00
Remi Collet 3579e81200 Fixed Bug #64962 imagerotate produce corrupted image
See https://bitbucket.org/libgd/gd-libgd/issue/67/problem-with-gdrotate

This computation need to be done in signed range.
2013-06-03 15:01:48 +02:00
Remi Collet 245e103ed3 NEWS 2013-06-03 14:17:00 +02:00
Remi Collet 99ea60c2dd Fixed Bug #64961 segfault in imagesetinterpolation
enum type are not long ;) so cannot be used as zend_parse_parameters arg.
2013-06-03 14:15:18 +02:00
Matteo Beccati ad135fc69f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Clean up leftover test files
  Improved test portability so that it doesn't fail with pdo_pgsql
  Fix PDO::inTransaction() test for pgsql
2013-06-02 13:39:38 +02:00
Matteo Beccati 7360f0f1e6 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Clean up leftover test files
2013-06-02 13:39:19 +02:00
Matteo Beccati 2463e89794 Clean up leftover test files 2013-06-02 13:38:43 +02:00
Matteo Beccati a98359b7b9 Improved test portability so that it doesn't fail with pdo_pgsql 2013-06-02 13:32:48 +02:00
Nikita Popov cbf90b1a90 Fix PDO::inTransaction() test for pgsql
inTransaction() nowadays casts the in_transaction result to boolean.
I'm not sure whether the INERROR state should result in true or false.
For now I went with the result that we actually get.
2013-06-02 13:28:30 +02:00
Matteo Beccati d5a1c0cae2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64609 (pg_convert enum type support)
2013-06-02 06:34:05 +02:00
Matteo Beccati 51c065f611 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #64609 (pg_convert enum type support)
2013-06-02 06:33:54 +02:00
Matteo Beccati 25aae37229 Fixed bug #64609 (pg_convert enum type support) 2013-06-02 06:29:35 +02:00
Matteo Beccati d9c2eecec0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #62857 (bytea test failures)
2013-06-01 23:23:14 +02:00
Matteo Beccati de42833115 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #62857 (bytea test failures)
2013-06-01 23:22:50 +02:00
Matteo Beccati 79803bebde Fixed bug #62857 (bytea test failures)
Postgres 9.1+ test fixes. Tests were failing due to the default
standard_conforming_strings GUC being changed to on. Also the
pg_escape_bytea test was encoding the data before estabilishing
a connection, thus falling back to the old escaping type which
isn't properly handled by the backend when using a default
configuration.

I haven't updated the NEWS file as it's just test fixes.
2013-06-01 23:15:48 +02:00
Matteo Beccati d19e46d9d4 Merge branch 'PHP-5.4' into PHP-5.5 2013-05-31 16:27:01 +02:00
Matteo Beccati a3b5b42e77 Merge branch 'PHP-5.3' into PHP-5.4 2013-05-31 16:26:54 +02:00
Matteo Beccati 598e2690b8 Merge branch 'pull-request/309' into PHP-5.3 2013-05-31 16:26:38 +02:00
Matteo Beccati bf4a034e3e NEWS 2013-05-31 16:26:06 +02:00
Matteo Beccati 510498947e Slightly edited tests and fix for bug #62024 2013-05-31 16:19:58 +02:00
Matheus Degiovani df6ca450ce Fixed bug #62024 (unable to run consecutive prepared querys with null values)
Credits to james@kenjim.com for the patch.
2013-05-31 14:30:57 +02:00
Matheus Degiovani 65d233f06c Fixed bug #64037 (wrong value returned when using a negative numeric field equal to the scale) 2013-05-31 14:30:51 +02:00
Remi Collet c829895a1a NEWS 2013-05-31 08:45:54 +02:00
Remi Collet f3ca1d3125 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed Bug #64949 (Buffer overflow in _pdo_pgsql_error)
2013-05-31 08:45:32 +02:00
Remi Collet 0c9f11758f NEWS 2013-05-31 08:45:09 +02:00
Remi Collet 2dd67abb7d Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed Bug #64949 (Buffer overflow in _pdo_pgsql_error)
2013-05-31 08:44:33 +02:00
Remi Collet 1c623e3b07 Fixed Bug #64949 (Buffer overflow in _pdo_pgsql_error)
There is a lot of call such as:
	pdo_pgsql_error(dbh, PGRES_FATAL_ERROR, "Copy command failed");
Where the 3rd paramater is a error message string where a sqlstate (5 chars)
is expected. This cause a segfault in copy_from.phpt and copy_to.phpt.

This is only a sanity check to avoid buffer overflow, but obviously this
calls need to be fixed (using NULL or a correct sqlstate).
2013-05-31 08:39:32 +02:00
Rasmus Lerdorf 4c762152bf Use size_t everywhere instead 2013-05-29 14:34:53 -07:00
Rasmus Lerdorf 29ee4b81f2 This needs to be a long
Otherwise we are limited to a 32G opcache segment
2013-05-29 14:22:43 -07:00
Dmitry Stogov 7e00d0994f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed incorrect argument number
2013-05-29 11:14:15 +04:00
Dmitry Stogov 8b515fa00a Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed incorrect argument number

Conflicts:
	Zend/zend_compile.c
2013-05-29 11:12:43 +04:00
Dmitry Stogov 13e5c97ffd Fixed incorrect argument number 2013-05-29 11:09:55 +04:00
Dmitry Stogov ad90e90d90 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  Fix #64745 hash_pbkdf2 truncation issue
2013-05-29 00:02:37 +04:00
Dmitry Stogov 6008ac8e32 Fixed crash during search in empty persistent HashTable 2013-05-28 23:45:36 +04:00
Anthony Ferrara 540a5a52e8 Fix #64745 hash_pbkdf2 truncation issue
When using hash_pbkdf2 with hex output and 0 length (auto), it incorrectly
truncates the result to 1/2 the expected result.
2013-05-28 15:30:45 -04:00
Pierre Joye 2f01e06786 fix #64898imagerotate is broken with bilinear interpolation 2013-05-27 09:21:41 +02:00
Anatol Belski b262787ef9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  reduced the file size even more
2013-05-25 00:10:49 +02:00
Anatol Belski bcdac7526d reduced the file size even more
the first second is what at least has to be
2013-05-25 00:09:32 +02:00
Anatol Belski fbdce3b6f6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64916 finfo testcase contains copyrighted music.
2013-05-25 00:02:09 +02:00
Anatol Belski 2d386db878 Fixed bug #64916 finfo testcase contains copyrighted music.
I wasn't able to produce a file causing exactly the same crash.
However the first three seconds of the originally reported
file are  pretty enough to repro bug #64830. That reduces its
size to 72k.
2013-05-24 23:58:31 +02:00
Remi Collet af13dded5c NEWS 2013-05-24 12:11:04 +02:00
Remi Collet 433731d463 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed Bug #64915 (error_log ignored when daemonize=0)
2013-05-24 12:10:39 +02:00
Remi Collet 9f6ca9bc64 Fixed Bug #64915 (error_log ignored when daemonize=0)
Use configured error_log file when stderr is not a tty.
So only use tty during interactive debug run.
2013-05-24 12:09:05 +02:00
David Soria Parra 2df1067036 News for upcoming RC3 if necessary 2013-05-23 00:44:42 +02:00
David Soria Parra aa5f19cffb News for RC2 2013-05-23 00:44:08 +02:00
Johannes Schlüter 4fe74f14c4 Merge branch 'PHP-5.4' into PHP-5.5 2013-05-22 17:19:58 +02:00
Johannes Schlüter cd74b7d57e Merge branch 'PHP-5.3' into PHP-5.4 2013-05-22 17:15:27 +02:00
Johannes Schlüter 4cb25d25f1 This will be PHP 5.3.27 2013-05-22 17:13:17 +02:00
Stanislav Malyshev c53058763a 5.4.17 is next 2013-05-21 23:36:28 -07:00
Remi Collet c50cef1dc5 Fixed bug #64895 Integer overflow in SndToJewish 2013-05-22 08:30:50 +02:00
Remi Collet 93469a1d15 NEWS 2013-05-22 08:29:43 +02:00
Remi Collet d64e8dd7a4 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  Fixed bug #64895 Integer overflow in SndToJewish
2013-05-22 08:29:30 +02:00
Remi Collet 73eedaf6f7 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #64895 Integer overflow in SndToJewish
2013-05-22 08:29:08 +02:00
Remi Collet 013797588a NEWS 2013-05-22 08:28:53 +02:00
Remi Collet fc2a9d6e47 Fixed bug #64895 Integer overflow in SndToJewish 2013-05-22 08:28:05 +02:00
Stanislav Malyshev f5fcb591cc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  merge NEWS from 5.3
  fix order
2013-05-21 23:26:23 -07:00
Stanislav Malyshev 0776337e28 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix order
2013-05-21 23:26:03 -07:00
Stanislav Malyshev de4fd8638b merge NEWS from 5.3 2013-05-21 23:25:46 -07:00
Stanislav Malyshev d4ad889824 fix order 2013-05-21 23:25:35 -07:00
Sara Golemon 4f46a40b9d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Don't double-quote name of namespaced function.
2013-05-19 13:35:03 -07:00
Remi Collet 4840ff0f05 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Integer overflow in SndToJewish leads to php hang AT least in (inputDay is long, metonicCycle is int):    metonicCycle = (inputDay + 310) / 6940;
2013-05-21 18:09:02 +02:00
Remi Collet 646ebc2cb9 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Integer overflow in SndToJewish leads to php hang AT least in (inputDay is long, metonicCycle is int):    metonicCycle = (inputDay + 310) / 6940;
2013-05-21 18:08:45 +02:00
Remi Collet 4828f7343b Integer overflow in SndToJewish leads to php hang
AT least in (inputDay is long, metonicCycle is int):
   metonicCycle = (inputDay + 310) / 6940;

So large value give strange (negative) results or php hangs.
This is patch already applied in some linux distro.
2013-05-21 18:04:17 +02:00
Andrey Hristov 378a5f9bfe updates 2013-05-21 13:27:45 +02:00
Remi Collet ed9a9b6144 UPGRADING 2013-05-21 12:32:11 +02:00
Remi Collet 70abac2b4e NEWS 2013-05-21 09:54:39 +02:00
Remi Collet c79f162c37 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Add --with-fpm-systemd option to report health to systemd, and systemd_interval option to configure this. The service can now use Type=notify in the systemd unit file.
2013-05-21 09:53:51 +02:00
Remi Collet 0e99329e0a Add --with-fpm-systemd option to report health to systemd, and
systemd_interval option to configure this. The service can now use
Type=notify in the systemd unit file.

Systemd status line will looks like:
Status: "Processes active: 0, idle: 5, Requests: 90, slow: 0, Traffic: 10req/sec"

Watchdog mode is also supported. In this case watchdog interval,
configured in the unit file, override the systemd_interval option.

When not used (default), no change from previous version.
2013-05-21 09:49:00 +02:00
Dmitry Stogov a2d6d27458 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64720 (SegFault on zend_deactivate)

Conflicts:
	NEWS
2013-05-21 10:15:37 +04:00
Dmitry Stogov 77fffff157 Fixed bug #64720 (SegFault on zend_deactivate) 2013-05-21 09:58:11 +04:00
Stanislav Malyshev 49c1a223d5 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add reporter
2013-05-20 02:02:34 -07:00
Stanislav Malyshev 1124b0678f add reporter 2013-05-20 02:01:38 -07:00
Stanislav Malyshev ac0aa5737e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix bug #64660 - yyparse can return 2, not only 1

Conflicts:
	Zend/zend_language_scanner.c
2013-05-20 00:57:34 -07:00
Stanislav Malyshev fb58e69a84 fix bug #64660 - yyparse can return 2, not only 1 2013-05-20 00:52:38 -07:00
Stanislav Malyshev 0f02c3aa29 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix 5.4.16 relase date
2013-05-19 23:55:38 -07:00
Stanislav Malyshev 7c66c502d0 fix 5.4.16 relase date 2013-05-19 23:55:12 -07:00
Sara Golemon 2d7415a4af Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Don't double-quote name of namespaced function.
2013-05-19 13:34:57 -07:00
Sara Golemon 2d5695cbc5 Don't double-quote name of namespaced function.
ZEND_NS_NAMED_FE(ns, zend_name, name, arg_info)

was resulting in a function declaration of:

ns\"zend_name"()

including the errant quotes.

This diff corrects that.  There are currently no uses of ZEND_NS_NAMED_FE
in core and reason to believe that there are no uses in the wild either.
2013-05-19 13:32:17 -07:00
Pierre Joye 40d5458eff Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  entry for #64214
  other fix for #64214, unmodified file may not have old fp set, causing other possible crashes
2013-05-17 11:50:52 +02:00
Pierre Joye b142e8825f Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-05-17 11:49:45 +02:00
Pierre Joye aff65a0346 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  entry for #64214
  other fix for #64214, unmodified file may not have old fp set, causing other possible crashes
2013-05-17 11:49:33 +02:00
Pierre Joye 46b05bc57a entry for #64214 2013-05-17 11:49:13 +02:00
Pierre Joye 3eb1745643 other fix for #64214, unmodified file may not have old fp set, causing other possible crashes 2013-05-17 11:45:13 +02:00
Anatol Belski d565e8f0eb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed error handling for ext/sockets under win
2013-05-16 19:29:25 +02:00
Anatol Belski 8dec06ea2a Fixed error handling for ext/sockets under win
WSAGetLastError() must be the very next call after a socket
function had an invalid return. Any function call inbetween
will clear the error information.
2013-05-16 19:23:31 +02:00
Anatol Belski 07bd1fac57 updated NEWS 2013-05-16 08:44:36 +02:00
Anatol Belski fda25c7ea6 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64853Use of no longer available ini directives causes crash on TS build
2013-05-16 08:43:07 +02:00
Anatol Belski d82704b677 Fixed bug #64853Use of no longer available ini directives causes crash on TS build
The fatal error for removed ini options is thrown before the executor
init, so ensure the relevant variables are initialized.
2013-05-16 08:40:56 +02:00
Pierre Joye 9accfee55f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
2013-05-15 15:54:52 +02:00
Pierre Joye bfb50d17cb Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-05-15 15:54:46 +02:00
Pierre Joye 09470ebf35 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-05-15 15:53:57 +02:00
David Soria Parra 139e9824ad Fix array_colum segfault
Separate zval to avoid gc from freeing
2013-05-15 14:42:39 +02:00
Anatol Belski 082ee90b9b fixe preprocessor definition 2013-05-15 14:24:21 +02:00
Anatol Belski 077b575d51 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix unitialized vars when sql.safe_mode=1
  more check for php_stream_fopen_tmpfile failure
2013-05-15 11:17:18 +02:00
Anatol Belski de82e7edf7 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fix unitialized vars when sql.safe_mode=1
  more check for php_stream_fopen_tmpfile failure
2013-05-15 11:14:58 +02:00
Anatol Belski 86db5fb4c2 Fix unitialized vars when sql.safe_mode=1
which can break the subsequent mysqlnd_connect() call
2013-05-15 11:12:17 +02:00
Pierre Joye 42a186e22d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  more check for php_stream_fopen_tmpfile failure
2013-05-14 16:46:32 +02:00
Pierre Joye 7ec2e5314e Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  more check for php_stream_fopen_tmpfile failure
2013-05-14 16:45:56 +02:00
Pierre Joye ba1af29805 more check for php_stream_fopen_tmpfile failure 2013-05-14 16:45:11 +02:00
Andrey Hristov 1f97fde89e Merge branch 'PHP-5.5' of ssh://git.php.net/php-src into PHP-5.5 2013-05-14 13:01:18 +02:00
Andrey Hristov 9d2dda9058 Fix for Bug #64394 MYSQL_OPT_CAN_HANDLE_EXPIRED_PASSWORDS undeclared when using Connector/C 2013-05-14 11:26:35 +02:00
Anatol Belski 75ee1a6113 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch after fix for #64830
2013-05-14 11:16:01 +02:00
Anatol Belski 1a46a102d9 updated libmagic.patch after fix for #64830 2013-05-14 11:14:37 +02:00
Anatol Belski 8c36156070 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-05-14 09:45:02 +02:00
Anatol Belski ad210f2c10 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-05-14 09:44:48 +02:00
Anatol Belski 2626819d65 updated NEWS 2013-05-14 09:42:34 +02:00
Anatol Belski 933e01bbac Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64830 mimetype detection segfaults on mp3 file
2013-05-14 09:41:38 +02:00
Anatol Belski 74555e7c26 Fixed bug #64830 mimetype detection segfaults on mp3 file 2013-05-14 09:40:43 +02:00
Pierre Joye 362402d748 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  php_stream_fopen_tmpfile may file, causing any following stream usage to crash
2013-05-14 09:21:30 +02:00
Pierre Joye f37c54ab27 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  php_stream_fopen_tmpfile may file, causing any following stream usage to crash
2013-05-14 09:21:17 +02:00
Pierre Joye 533e636a62 php_stream_fopen_tmpfile may file, causing any following stream usage to crash 2013-05-14 09:20:53 +02:00
Anatol Belski e191cb63ba Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix heap overflow warnings on win x64 debug crt
2013-05-13 14:26:50 +02:00
Anatol Belski 156576fcce Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix heap overflow warnings on win x64 debug crt
2013-05-13 14:25:25 +02:00
Anatol Belski fe21accfb4 fix heap overflow warnings on win x64 debug crt 2013-05-13 14:24:21 +02:00
Anatol Belski e44849b0f4 Fixed bug #64825 Invalid free unserializing DateTimeZone 2013-05-12 21:29:16 +02:00
Anatol Belski 3fd39c13f9 updated NEWS 2013-05-12 14:09:59 +02:00
Anatol Belski 2d8ce75f39 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed bug #64821 Custom Exceptions crash when internal properties overridden
2013-05-12 14:09:16 +02:00
Anatol Belski 89159926ad updated NEWS 2013-05-12 14:08:42 +02:00
Anatol Belski dd188e9538 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #64821 Custom Exceptions crash when internal properties overridden
2013-05-12 14:06:59 +02:00
Anatol Belski d6505acbf5 Fixed bug #64821 Custom Exceptions crash when internal properties overridden
If user inherits Exception and overrides the properties to arbitrary data types,
or simply doesn't run parent::__construct(), here we go. Just convert everything
to the appropriate data type, like Exception::__toString() does.
2013-05-12 14:00:32 +02:00
Anatol Belski 95ea1e7ca7 fixed variable corruption under win x64 2013-05-11 02:47:48 +02:00
Xinchen Hui b3f6cc20e0 Merge branch 'PHP-5.4' into PHP-5.5 2013-05-09 15:57:44 +08:00
Xinchen Hui 699dc04c55 Missed SKIPIF 2013-05-09 15:57:25 +08:00
Gustavo Lopes 98302ee3cc Fix NEWS (wrong bug # AND wrong section...)
It's bug #64508, not #64506.
2013-05-08 20:03:43 +02:00
Gustavo Lopes 8687332e08 Fix bug #64506: fix build with --disable-ipv6 2013-05-08 19:58:27 +02:00
Anatol Belski 7b09e5fe35 Fixed news, rc1 is already branched 2013-05-08 19:24:51 +02:00
Anatol Belski 4091e94660 Fixed bug #64769 mbstring PHPTs crash on Windows x64
The tricky business going there in oniguruma is saving a pointer
in an int variable, passing that variable into a function and making
it a pointer again. On 64bit windows casting a pointer to a 32 bit
int will truncate that pointer. This kind of things won't work on
Windows x64.

[SNIPPET]
unsigned long ul0[2], ul1, *ul2;

ul0[0] = 42uL;
ul0[0] = 24uL;

ul1 = (unsigned long)ul0;
ul2 = (unsigned long *)ul1;

/* now it's broken, accessing ul2[0] will crash. */
[/SNIPPET]

To make it portable, ULONG_PTR should be used in this case.

In oniguruma this behaviour is to see at least in the following
codepath:

ext/mbstring/oniguruma/enc/unicode.c:10938
ext/mbstring/oniguruma/st.c:308
ext/mbstring/oniguruma/enc/unicode.c:10859
2013-05-08 19:22:37 +02:00
David Soria Parra 288f04c430 News for RC2 2013-05-08 18:57:06 +02:00
David Soria Parra e30dbcce77 NEWS for RC1 2013-05-08 18:44:05 +02:00
Johannes Schlüter 9ef017af00 Merge branch 'PHP-5.4' into PHP-5.5 2013-05-08 18:03:12 +02:00
Johannes Schlüter 898ddcb9e1 Merge branch 'PHP-5.3' into PHP-5.4 2013-05-08 18:02:35 +02:00
Johannes Schlüter 1cc2162b83 PHP 5.3.25 NEWS 2013-05-08 18:01:39 +02:00
Remi Collet 36eee5b994 Fixed bug #64785 : restore 5.4 behaviour, libpng is mandatory 2013-05-08 07:37:40 +02:00
Ard Biesheuvel 5b121eb04d Fix #64780 (PHP 5.5 builds are broken with GCC 3)
A recent change (by me) introduced a call to __builtin_offsetof()
into zend_operators.h which is not defined by GCC prior to
version 4.

Changed the code to use offsetof() instead: this is defined in
<stddef.h>, so #include this header conditionally (#ifdef GNUC)
2013-05-07 20:37:04 +02:00
Remi Collet de7415ea55 gd: fix 2 failed tests (bundled lib) due to arithmetic precision (allow minor diff). 2013-05-06 10:25:36 +02:00
Remi Collet 96a575123d gd: fix previous (bad include) 2013-05-06 10:07:06 +02:00
Remi Collet 9480de29db Revert removal of overflow2 use in gd.c
Function provided by gd_security with bundled libgd
Function provided by gd_compat with system libgd

This fix failed test imageloadfont_invalid.phpt
This test now also pass with system libgd
2013-05-06 10:00:45 +02:00
Remi Collet 4cea61a0fa gd: fix include... 2013-05-05 10:39:33 +02:00
Remi Collet 0cae9a15d7 Move (back) missing functions in system libgd to gd_compat
- display libPng version in all cases
- gd_compat.c in ext/gd (nothing in ext/gd/libgd)
2013-05-05 09:54:27 +02:00
Remi Collet 9a48b6506c gd: don't include png.h (breaks build on some old version), so report libPNG version only with external libgd 2013-05-05 08:35:29 +02:00
Remi Collet 54d6f8b34e gd: missing comma 2013-05-05 06:52:28 +02:00
Remi Collet 2ab270011d gd: fix typo and cleanups 2013-05-04 20:36:32 +02:00
Remi Collet d981c191d4 NEWS 2013-05-04 16:54:22 +02:00
Remi Collet 00b097d2a3 fix build with bundled libgd 2013-05-04 16:51:56 +02:00
Ondřej Surý 2a2ac5f2be Move png and jpeg version functions to gd.c so the external library build doesn't include anything from libgd/. 2013-05-04 16:50:13 +02:00
Ondřej Surý e6704501f8 Remove extra unused functions from gd_compat.h 2013-05-04 16:50:11 +02:00
Ondřej Surý 5e9c6c3b64 Rewrite Xpm library check so it doesn't break on MultiArch systems 2013-05-04 16:50:08 +02:00
Ondřej Surý 8a90aad35b Required GD >= 2.1.0 or GD bundled, this allows us to remove most of the #ifdef 2013-05-04 16:50:06 +02:00
Ondřej Surý 2fc17d83cb * Remove overflow2, getmbi and skipheaders from gd_compat.h * Add missing return in _php_ctx_getmbi * Reintroduce imagecreatefromxbm by checking for gdCreateImageFromXbm 2013-05-04 16:50:03 +02:00
Ondřej Surý 8a07908215 Remove overflow2, getmbi and skipheader, since they are not needed anymore. 2013-05-04 16:49:59 +02:00
Ondřej Surý 6aedadce0a Allow to use new GD-2.1.0 function from system library 2013-05-04 16:49:35 +02:00
Xinchen Hui 9155d17fef Fix #64749 (warning: cast from pointer to integer of different size) 2013-05-04 20:43:42 +08:00
Anatol Belski b2ef8672c7 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  better fix for bug #64770
  better fix for bug #64770
2013-05-04 12:20:19 +02:00
Anatol Belski ec4388158d better fix for bug #64770 2013-05-04 12:19:52 +02:00
Anatol Belski f1e5127e7a Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  better fix for bug #64770
2013-05-04 12:18:06 +02:00
Anatol Belski 5c701d19ac better fix for bug #64770 2013-05-04 12:16:38 +02:00
Boris Lytochkin 67d83de11c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  remove OS-specific OIDs from 'WALK multiple on single OID with OID suffix as keys' test part
2013-05-04 00:06:06 +04:00
Boris Lytochkin 8c3b8f39aa remove OS-specific OIDs from
'WALK multiple on single OID with OID suffix as keys' test part
2013-05-04 00:04:52 +04:00
Boris Lytochkin eff60f993c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  re-work walkaround for net-snmp BUGid 2027834, no need to detect it anymore add test for Bug #64159 bump default buffer size for values(32->512): do not reallocate buffers in 99% cases
2013-05-03 23:10:11 +04:00
Boris Lytochkin c34274acb8 re-work walkaround for net-snmp BUGid 2027834, no need to detect it anymore
add test for Bug #64159
bump default buffer size for values(32->512): do not reallocate buffers in 99% cases
2013-05-03 23:06:34 +04:00
Boris Lytochkin 3a413f216a Merge branch 'PHP-5.4' of https://git.php.net/push/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/push/php-src:
  updated NEWS
  Fixed bug #64770 stream_select() fails with pipes
2013-05-03 19:24:24 +04:00
Boris Lytochkin f1269d80c5 Merge branch 'PHP-5.3' of https://git.php.net/push/php-src into PHP-5.3
* 'PHP-5.3' of https://git.php.net/push/php-src:
  Fixed bug #64770 stream_select() fails with pipes
2013-05-03 19:23:46 +04:00
Boris Lytochkin 1c8befe893 cut PHP_VERSION_ID - we know API version now 2013-05-03 19:22:21 +04:00
Boris Lytochkin 74ef9b6cea Merge branch 'PHP-5.5' of https://git.php.net/push/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/push/php-src:
  updated NEWS
  updated NEWS
  Fixed bug #64770 stream_select() fails with pipes
2013-05-03 19:10:22 +04:00
Anatol Belski f7830e4f98 updated NEWS 2013-05-03 17:05:54 +02:00
Anatol Belski 6d41711fd9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed bug #64770 stream_select() fails with pipes
2013-05-03 17:04:53 +02:00
Anatol Belski b1c24d1eac updated NEWS 2013-05-03 17:04:26 +02:00
Anatol Belski aa4762572e Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #64770 stream_select() fails with pipes
2013-05-03 17:03:16 +02:00
Anatol Belski b1ea0b7a7a Fixed bug #64770 stream_select() fails with pipes
returned by proc_open() on Windows x64
2013-05-03 17:01:33 +02:00
Boris Lytochkin 2c336c9cde Fixed bug #64159 (Truncated snmpget) 2013-05-03 15:46:43 +04:00
Boris Lytochkin c68f9d5503 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64159 (Truncated snmpget)
2013-05-03 15:39:57 +04:00
Boris Lytochkin e36adfe94a Fixed bug #64159 (Truncated snmpget) 2013-05-03 15:35:09 +04:00
Boris Lytochkin cbe2870b72 update NEWS 2013-05-03 12:25:49 +04:00
Boris Lytochkin 1ce836580d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update NEWS
  Fix bug #64765 (enclose IPv6 address into square brackets)
2013-05-03 12:19:10 +04:00
Boris Lytochkin a39282b64d update NEWS 2013-05-03 12:15:35 +04:00
Boris Lytochkin 3828f6227b Fix bug #64765 (enclose IPv6 address into square brackets) 2013-05-03 12:13:50 +04:00
Boris Lytochkin 5f67584fd7 Merge branch 'PHP-5.5' of https://git.php.net/push/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/push/php-src: (310 commits)
  NEWS
  NEWS
  NEWS
  From code coverity scan, syscall return value must be check.
  fix more resource leaks
  From code coverity scan - fix some memory leak - fix some resources leak (fd) - create fpm_worker_pool_free (shared use) - possible null dref (wp->user and wp->home can be null)
  fixed size array cannot be null
  use limit_extensions as we use security_limit_extensions later (free)
  unused variable
  fix possible null deref (detected by code coverity scan)
  updated lib versions
  Remove trailing space in NEWS
  NEWS for 514afd67
  Fix bug #64729: compilation failure on x32
  don't include smart_str.h in a too global header, fixes #64718
  NEWS
  When Apache use RewriteRule to redirect, via mod_proxy_fgi, to php-fpm the SCRIPT_FILENAME may contains the QUERY_STRING.
  Added SoapClient constructor option 'ssl_method' to specify ssl method
  fix #64738, fix implicit type declaration
  Avoid possible conditional jump depended on uninitialised value
  ...
2013-05-03 11:22:42 +04:00
Boris Lytochkin 5af2c5d202 Merge branch 'PHP-5.4' of https://git.php.net/push/php-src into PHP-5.4
* 'PHP-5.4' of https://git.php.net/push/php-src: (109 commits)
  NEWS
  NEWS
  From code coverity scan, syscall return value must be check.
  fix more resource leaks
  From code coverity scan - fix some memory leak - fix some resources leak (fd) - create fpm_worker_pool_free (shared use) - possible null dref (wp->user and wp->home can be null)
  fixed size array cannot be null
  use limit_extensions as we use security_limit_extensions later (free)
  unused variable
  fix possible null deref (detected by code coverity scan)
  Remove trailing space in NEWS
  NEWS for 514afd67
  Fix bug #64729: compilation failure on x32
  When Apache use RewriteRule to redirect, via mod_proxy_fgi, to php-fpm the SCRIPT_FILENAME may contains the QUERY_STRING.
  Revert "Add CURL_WRAPPERS_ENABLE constant"
  Also fixed bug #64726 in 5.3
  Fixed bug #64726 (Segfault when calling fetch_object on a use_result and DB pointer has closed)
  Fix memory realted to #64726
  updated libmagic.patch
  Fixed bug bug #64713 Compilation warnings in finfo
  Fix Test Bug #64714
  ...
2013-05-03 11:22:16 +04:00
Boris Lytochkin aa448adc83 Merge branch 'PHP-5.3' of https://git.php.net/push/php-src into PHP-5.3
* 'PHP-5.3' of https://git.php.net/push/php-src: (39 commits)
  NEWS
  From code coverity scan, syscall return value must be check.
  fix more resource leaks
  From code coverity scan - fix some memory leak - fix some resources leak (fd) - create fpm_worker_pool_free (shared use) - possible null dref (wp->user and wp->home can be null)
  fixed size array cannot be null
  use limit_extensions as we use security_limit_extensions later (free)
  unused variable
  fix possible null deref (detected by code coverity scan)
  Also fixed bug #64726 in 5.3
  Fix memory realted to #64726
  Fix Test Bug #64714
  PHP 5.3.26 this will be
  Fix NEWS
  Fix bug #64458 (dns_get_record result with string of length -1)
  Fixed incorrect check. SEND_REF may be executed before DO_FCALL when EX(function_state).function is not yet set to the calling function.
  Fixed stream_socket_pair() on Windows x64 and
  - Updated to version 2013.3 (2013c)
  lower the limit, should fit in a byte
  updated lib versions
  allow lcov 1.10
  ...
2013-05-03 11:21:48 +04:00
Remi Collet 432b09f238 NEWS 2013-05-03 08:31:22 +02:00
Remi Collet 3011208f1a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  NEWS
  NEWS
2013-05-03 08:30:58 +02:00
Remi Collet 9996c310d1 NEWS 2013-05-03 08:30:47 +02:00
Remi Collet f087c53130 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  NEWS
2013-05-03 08:30:19 +02:00
Remi Collet 4a34d4a83c NEWS 2013-05-03 08:29:56 +02:00
Remi Collet c9085837a9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  From code coverity scan, syscall return value must be check.
2013-05-03 08:23:07 +02:00
Remi Collet 3fd4b6be63 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  From code coverity scan, syscall return value must be check.
2013-05-03 08:22:55 +02:00
Remi Collet 0549e55d82 From code coverity scan, syscall return value must be check.
To not alter current behaviour, we simply log the problem,
so, if it occurs, the message will give explanation.

This are only warning as they don't block the server,
but such fail can explain strange (not expected) behaviour later.
2013-05-03 08:19:14 +02:00
Remi Collet 6494faa844 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix more resource leaks
2013-05-02 13:47:48 +02:00
Remi Collet b7b150b830 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix more resource leaks
2013-05-02 13:47:36 +02:00
Remi Collet 444e59eb20 fix more resource leaks 2013-05-02 13:47:24 +02:00
Remi Collet a3e177b9fd Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  From code coverity scan - fix some memory leak - fix some resources leak (fd) - create fpm_worker_pool_free (shared use) - possible null dref (wp->user and wp->home can be null)
2013-05-02 13:31:22 +02:00
Remi Collet 08b72ac9f1 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  From code coverity scan - fix some memory leak - fix some resources leak (fd) - create fpm_worker_pool_free (shared use) - possible null dref (wp->user and wp->home can be null)
2013-05-02 13:31:11 +02:00
Remi Collet 331540d20c From code coverity scan
- fix some memory leak
- fix some resources leak (fd)
- create fpm_worker_pool_free (shared use)
- possible null dref (wp->user and wp->home can be null)
2013-05-02 13:27:16 +02:00
Remi Collet eb53035a80 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed size array cannot be null
2013-05-02 10:33:05 +02:00
Remi Collet c374b80dda Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fixed size array cannot be null
2013-05-02 10:32:54 +02:00
Remi Collet d0c40220d1 fixed size array cannot be null 2013-05-02 10:32:45 +02:00
Remi Collet 2f12769db0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  use limit_extensions as we use security_limit_extensions later (free)
  unused variable
2013-05-02 10:15:49 +02:00
Remi Collet 78c48af2f2 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  use limit_extensions as we use security_limit_extensions later (free)
  unused variable
2013-05-02 10:15:20 +02:00
Remi Collet 8492bbefbb use limit_extensions as we use security_limit_extensions later (free) 2013-05-02 10:15:12 +02:00
Remi Collet a7d6cb2360 unused variable 2013-05-02 10:15:05 +02:00
Remi Collet d42ae32738 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix possible null deref (detected by code coverity scan)
  Remove trailing space in NEWS
  NEWS for 514afd67
2013-05-02 09:38:38 +02:00
Remi Collet be3f7ba4fb Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix possible null deref (detected by code coverity scan)
2013-05-02 09:38:12 +02:00
Remi Collet ab117573cd fix possible null deref (detected by code coverity scan) 2013-05-02 09:38:00 +02:00
Anatol Belski e3aeb6c070 updated lib versions 2013-05-01 21:37:28 +02:00
Gustavo Lopes 3f2f534a5c Remove trailing space in NEWS 2013-04-30 19:42:31 +02:00
Gustavo Lopes 1656b337ce NEWS for 514afd67 2013-04-30 19:41:27 +02:00
Gustavo Lopes 865cc3a800 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #64729: compilation failure on x32

Conflicts:
	Zend/zend_alloc.c
2013-04-30 19:36:08 +02:00
Gustavo Lopes 514afd67b6 Fix bug #64729: compilation failure on x32 2013-04-30 19:28:24 +02:00
Johannes Schlüter 062519ed41 don't include smart_str.h in a too global header, fixes #64718 2013-04-30 14:26:55 +02:00
Remi Collet 36b968ae96 NEWS 2013-04-30 09:03:18 +02:00
Remi Collet fbff4ccf27 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  When Apache use RewriteRule to redirect, via mod_proxy_fgi, to php-fpm the SCRIPT_FILENAME may contains the QUERY_STRING.
2013-04-30 09:02:59 +02:00
Remi Collet 4a92ae3401 When Apache use RewriteRule to redirect, via mod_proxy_fgi, to php-fpm
the SCRIPT_FILENAME may contains the QUERY_STRING.

Ex : RewriteRule ^(.*)\.php$ fcgi://127.0.0.1:9000/$1.php [P]

From apache debug (build with -DFCGI_DUMP_ENV_VARS)
AH01062: sending env var 'SCRIPT_FILENAME' value 'proxy:fcgi://127.0.0.1:9000/var/www/html/info.php?foo'
AH01071: Got error 'Primary script unknown\n'
2013-04-30 08:55:18 +02:00
Dmitry Stogov 13de57c0f4 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  fix #64738, fix implicit type declaration
2013-04-30 10:27:24 +04:00
Dmitry Stogov c782cf7fb3 Added SoapClient constructor option 'ssl_method' to specify ssl method 2013-04-30 10:24:49 +04:00
Pierre Joye 83682d8833 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-30 08:01:52 +02:00
Pierre Joye 1a335d20a8 fix #64738, fix implicit type declaration 2013-04-30 07:52:40 +02:00
Dmitry Stogov 4b83f4a011 Avoid possible conditional jump depended on uninitialised value 2013-04-29 10:45:31 +04:00
Dmitry Stogov a5b4eeb5f0 Fixed compilation warnings (issue #92) 2013-04-29 10:32:08 +04:00
Stanislav Malyshev 8a51bdd3ce Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Revert "Add CURL_WRAPPERS_ENABLE constant"

Conflicts:
	ext/curl/interface.c
2013-04-28 22:28:13 -07:00
Stanislav Malyshev 4e773c1b92 Revert "Add CURL_WRAPPERS_ENABLE constant"
This reverts commit d7f709a032.
Since wrappers are deleted from 5.5, no point in adding this constant.
2013-04-28 22:26:05 -07:00
David Soria Parra 86685aefab Revert "Fix conversion from unsigned char to char"
This reverts commit bc50ba4bf9.
2013-04-29 02:27:11 +02:00
Pierre Joye 9877773438 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-27 18:00:02 +02:00
Pierre Joye 25c9f34c9c fix #64725, wrong res check 2013-04-27 17:52:30 +02:00
Xinchen Hui e60638faca Merge branch 'PHP-5.4' into PHP-5.5 2013-04-27 23:50:23 +08:00
Xinchen Hui 7b9eabaf51 Merge branch 'PHP-5.3' into PHP-5.4 2013-04-27 23:50:02 +08:00
Xinchen Hui 15b554cd9b Also fixed bug #64726 in 5.3 2013-04-27 23:49:43 +08:00
Xinchen Hui a56a95e58d Update NEWS 2013-04-27 23:42:18 +08:00
Xinchen Hui 1c07590ed7 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-27 23:41:51 +08:00
Xinchen Hui 8f5a534b21 Fixed bug #64726 (Segfault when calling fetch_object on a use_result and DB pointer has closed) 2013-04-27 23:41:31 +08:00
Xinchen Hui d54432ed98 Merge branch 'PHP-5.3' into PHP-5.4 2013-04-27 23:38:10 +08:00
Xinchen Hui c7b8368ed5 Fix memory realted to #64726 2013-04-27 23:38:00 +08:00
Anatol Belski ca148c030f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch
2013-04-27 14:09:55 +02:00
Anatol Belski e9b03c412b updated libmagic.patch 2013-04-27 14:09:29 +02:00
Anatol Belski d72307f1ca Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug bug #64713 Compilation warnings in finfo
2013-04-27 13:51:12 +02:00
Anatol Belski cdc1a63790 Fixed bug bug #64713 Compilation warnings in finfo 2013-04-27 13:49:50 +02:00
David Soria Parra cf5d7d9e73 Fix implicit declaration warning for cdf_timestamp_to_timespec 2013-04-26 12:28:58 +02:00
David Soria Parra b86c85723e Fix #64711 ("value computed but not used" in parse_date.c) 2013-04-26 11:33:54 +02:00
David Soria Parra 3411fbbc51 Fix implicit uint* to int* conversion warning 2013-04-26 10:57:55 +02:00
David Soria Parra bc50ba4bf9 Fix conversion from unsigned char to char 2013-04-26 10:55:52 +02:00
David Soria Parra 75cec90d8c Fix #64712 (Obsolete declarations in php_date.c) 2013-04-26 10:45:08 +02:00
Pierre Joye 2809afa119 - #64710, check return val 2013-04-26 08:15:33 +02:00
Pierre Joye 7bd20354a8 - #64710, kill unused var 2013-04-26 08:15:05 +02:00
Pierre Joye b0afef2d5e #64710, kill unused vars 2013-04-26 08:10:24 +02:00
Pierre Joye 685a6d9aab #64710, kill unused vars 2013-04-26 08:09:19 +02:00
Pierre Joye 7b06189702 #64710, kill unused vars 2013-04-26 08:08:38 +02:00
Pierre Joye 3fffc78ed0 #64710, kill unused vars 2013-04-26 08:07:47 +02:00
Pierre Joye b5902b6c9d #64710, kill unused vars 2013-04-26 08:06:34 +02:00
Pierre Joye afe46d4d47 #64710, Implicit declaration 2013-04-26 07:48:11 +02:00
Matt Ficken 4941e3fe44 Adding sys_get_temp_dir() test specific for Windows.
sys_get_temp_dir() returns a Windows-style path (\\ instead of /) on
Windows. This is why a Windows specific test is required.

Skipping req60524.phpt on Windows. Adding -win32 fork for use only on
Windows.

Fixes test bug #64396.
2013-04-25 14:52:48 -07:00
Anatol Belski 30802dbc55 Fixed float precision change under Windows x64
otherwise we'll have asserts in debug builds and void runs of the
error handlers in non debug builds.
2013-04-25 22:44:29 +02:00
Matt Ficken 7d0dd957eb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix Test Bug #64714
2013-04-25 11:37:25 -07:00
Matt Ficken 5adf1be45d Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fix Test Bug #64714
2013-04-25 11:37:09 -07:00
Matt Ficken bf5506f511 Fix Test Bug #64714 2013-04-25 11:34:57 -07:00
Johannes Schlüter 6251706ea6 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-25 18:05:40 +02:00
Johannes Schlüter 239ba8d58b Merge branch 'PHP-5.3' into PHP-5.4
Conflicts:
	configure.in
	main/php_version.h
2013-04-25 18:05:19 +02:00
Johannes Schlüter 63434524f8 PHP 5.3.26 this will be 2013-04-25 18:02:53 +02:00
Johannes Schlüter 671ef9fda7 Fix NEWS 2013-04-25 17:58:02 +02:00
David Soria Parra 4a52fe4755 NEWS for RC1 2013-04-25 08:05:56 +02:00
David Soria Parra 51e3fabf10 NEWS for PHP 5.5.0 Beta 4 again 2013-04-25 08:05:16 +02:00
David Soria Parra e04baf692a Fix curl build on windows 2013-04-25 08:04:30 +02:00
Remi Collet 182fef46a9 Fixed bug #64707 missing declaration after dd0399f 2013-04-25 06:40:55 +02:00
Pierrick Charron f42a257711 Update NEWS file 2013-04-24 13:26:34 -04:00
Stanislav Malyshev cf9db2154e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.16-dev

Conflicts:
	configure.in
	main/php_version.h
2013-04-24 10:16:56 -07:00
Stanislav Malyshev a58a279d7b 5.4.16-dev 2013-04-24 10:15:35 -07:00
Remi Collet 26bd2cba81 gd: missing headers in previous 2013-04-24 16:15:42 +02:00
Remi Collet 3a8ceed844 allow use of gdImageCreateFromJpegEx with system libgd 2013-04-24 16:15:11 +02:00
Remi Collet dd0399f5c6 We need both gdImageCreateFromJpeg* and gdImageCreateFromJpeg*Ex
The new (Ex) functions are used with the new ignore_warning parameter

The standard functions are used in _php_image_create_from_string,
sent as a function pointer, and call without this optional parameter.
2013-04-24 16:07:50 +02:00
Remi Collet 7189cc5be8 gd: fix proto comment 2013-04-24 14:44:20 +02:00
Anatol Belski eb4065b9e1 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-24 14:36:57 +02:00
Remi Collet aa4b0af20f gd: provide imageflip with system libgd when available 2013-04-24 14:32:03 +02:00
Anatol Belski 8d41f6dab6 Removed fork of ext/zlib/tests/bug_52944.phpt
The real issue is a bug in asm zlib build, reported here
https://github.com/madler/zlib/issues/41 . Non ASM builds
behave more predictable.
2013-04-24 14:31:59 +02:00
David Soria Parra ee65e6953f NEWS for RC 1 2013-04-24 12:39:44 +02:00
David Soria Parra 78c79a2d5b NEWS for beta 4 2013-04-24 12:37:07 +02:00
Stanislav Malyshev 920c7ac16e Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  update credits
2013-04-23 22:03:42 -07:00
Stanislav Malyshev 84e5c8a0e2 update credits 2013-04-23 22:02:57 -07:00
Stanislav Malyshev 1363626f11 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
2013-04-23 21:46:03 -07:00
Stanislav Malyshev 5e24a6e74d Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fix bug #64458 (dns_get_record result with string of length -1)
2013-04-23 21:45:49 -07:00
Stanislav Malyshev 2a15aed399 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #64458 (dns_get_record result with string of length -1)
2013-04-23 21:45:10 -07:00
Stanislav Malyshev f87d2ab893 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fix bug #64458 (dns_get_record result with string of length -1)
2013-04-23 21:43:55 -07:00
Stanislav Malyshev 18fdab5a09 Fix bug #64458 (dns_get_record result with string of length -1) 2013-04-23 21:43:35 -07:00
Pierrick Charron b79e65f268 Remove curl wrappers 2013-04-23 17:01:17 -04:00
Dmitry Stogov 758b666c0a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed incorrect check. SEND_REF may be executed before DO_FCALL when EX(function_state).function is not yet set to the calling function.

Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-04-23 23:59:00 +04:00
Dmitry Stogov 43ab915b41 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed incorrect check. SEND_REF may be executed before DO_FCALL when EX(function_state).function is not yet set to the calling function.

Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-04-23 23:55:47 +04:00
Dmitry Stogov 4cf0647399 Fixed incorrect check. SEND_REF may be executed before DO_FCALL when EX(function_state).function is not yet set to the calling function. 2013-04-23 23:43:23 +04:00
Remi Collet 2005a15caa fix copy/paste in error message 2013-04-23 13:53:00 +02:00
Remi Collet 9819d81ddf enable WebP with system libgd when available 2013-04-23 13:46:10 +02:00
Remi Collet eb50789910 (re)allow WBMP detection with system libgd
provide getbmi and skipheader not exported functions in gd_compat.
2013-04-23 13:43:57 +02:00
Sara Golemon 734e165d4e array_column() - Use entire subject array when NULL passed for second param.
This starts to look like array_values(), except that you can reindex the arrays
using the third parameter.
2013-04-22 16:19:21 -07:00
Sara Golemon 1a03bd5dee Allow array_column() to take -1 as a valid value in third param
Also do some cleanup and simplification to make this code more
readable in the long term.
2013-04-22 15:54:21 -07:00
Sara Golemon f63db963c4 Harden array_column_basic.phpt against resource renumbering.
We don't care what resource number it is, so long as there's a
stream resource returned.
2013-04-22 13:36:40 -07:00
Anatol Belski b3aa3c2616 updated NEWS 2013-04-22 18:59:47 +02:00
Anatol Belski 8febe2ad08 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed stream_socket_pair() on Windows x64 and
2013-04-22 18:59:11 +02:00
Anatol Belski f082d6311b Fixed stream_socket_pair() on Windows x64 and
improved errorhandling in the socketpair() implementation.
2013-04-22 18:55:32 +02:00
Derick Rethans 0b2c411323 Merge branch 'PHP-5.3' into PHP-5.4 2013-04-22 17:51:43 +01:00
Derick Rethans 70b67f2e50 - Updated to version 2013.3 (2013c) 2013-04-22 17:51:41 +01:00
Sara Golemon 7b34324f84 Fix handling of double keys in array_column
Also fix resource test to not localize __FILE__ to cwd.
2013-04-21 22:35:04 -07:00
Anatol Belski b119836765 updated NEWS 2013-04-22 19:00:46 +02:00
Anatol Belski f578bb0388 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed stream_socket_pair() on Windows x64 and
2013-04-22 19:00:13 +02:00
Derick Rethans 0720804e7c Merge branch 'PHP-5.4' into PHP-5.5 2013-04-22 17:51:47 +01:00
Remi Collet ec1678dd7c temporary disable WBM detection with system libgd, as gdGetC, getmbi and skipheader not exported 2013-04-22 17:48:28 +02:00
Remi Collet 6889a0d1f5 overflow2 is not exported by system libgd 2013-04-22 17:39:35 +02:00
Dmitry Stogov 13b039ff9a Fixed linkage with C++ 2013-04-22 15:39:50 +04:00
Xinchen Hui b02241b968 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-04-21 11:11:02 +08:00
Xinchen Hui 32490673b9 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-21 11:10:41 +08:00
Xinchen Hui 6b1928ba0b Merge branch 'PHP-5.4' into PHP-5.5 2013-04-21 11:09:18 +08:00
Antonio Diaz Ruiz 92bbe6be72 Includes 5 new phpTests to check that the error message DOM_NOT_FOUND is properly raised by the method DOMNode::insertBefore(newNode, [refNode]).
Each file covers a different test case

    DOMNode_insertBefore_error2.phpt: refNode is a sibling of the node where newNode wanted to be inserted.
    DOMNode_insertBefore_error3.phpt: refNode is the parent of the node where newNode wanted to be inserted.
    DOMNode_insertBefore_error4.phpt: refNode is a brand new node.
    DOMNode_insertBefore_error5.phpt: refNode is a descendant (not child) of the node where newNode wanted to be inserted.
    DOMNode_insertBefore_error6.phpt: refNode is the node where newNode wanted to be inserted.
2013-04-21 11:05:59 +08:00
Pierre Joye 3cc81d151d Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-20 18:24:04 +02:00
Pierre Joye 14d9f3450b fix x64 opcache, still uses fugly fixed addresses, see TODO entry for explanaton 2013-04-20 18:22:39 +02:00
Xinchen Hui 63d3ef4df0 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-20 15:24:18 +08:00
Xinchen Hui 6ed16753c1 Fixed bug #64677 (execution operator `` stealing surrounding arguments) 2013-04-20 15:23:49 +08:00
Dmitry Stogov c7cf9b68b6 Fixed 5.2 ZTS build 2013-04-19 21:37:24 +04:00
Andrey Hristov 7b7424c34c Merge branch 'PHP-5.4' into PHP-5.5 2013-04-19 16:29:53 +02:00
Andrey Hristov 39cc08c7e9 Merge branch 'PHP-5.3' into PHP-5.4 2013-04-19 15:55:46 +02:00
Andrey Hristov 0802961bd1 lower the limit, should fit in a byte 2013-04-19 15:54:35 +02:00
Xinchen Hui 0704e4badb Fixed compiler warning "cast from pointer to integer of different size" 2013-04-18 17:32:46 +08:00
Dmitry Stogov 5a897009a8 Initialize literals hash_value and cache_slot 2013-04-17 21:19:56 +04:00
Anatol Belski 2d9cbf720d Added curl config test for windows 2013-04-17 14:25:45 +02:00
Anatol Belski c76cdb8067 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated lib versions
  fixed EOL
  updated lib versions
  allow lcov 1.10
  allow lcov 1.10
2013-04-17 13:20:46 +02:00
Anatol Belski ca425a67c4 updated lib versions 2013-04-17 13:20:23 +02:00
Anatol Belski ecf76e2da8 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  updated lib versions
  allow lcov 1.10
2013-04-17 13:18:00 +02:00
Anatol Belski fb955a613c updated lib versions 2013-04-17 13:17:32 +02:00
Anatol Belski 4fbe1173eb fixed EOL 2013-04-17 13:15:08 +02:00
Anatol Belski 323fdb9879 updated lib versions 2013-04-17 13:12:18 +02:00
Nuno Lopes a9271a8b0d allow lcov 1.10 2013-04-13 16:57:25 -04:00
Nuno Lopes e694d40963 allow lcov 1.10 2013-04-13 16:56:30 -04:00
Nuno Lopes adc17bff57 allow lcov 1.10 2013-04-13 16:53:39 -04:00
Chris Wright c091819f40 Add schema default/fixed value support
Added support for adding fixed/default values during XSD validation
and added/updated associated tests
2013-04-12 09:50:14 +01:00
Xinchen Hui a5cfe57e08 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-11 14:29:09 +08:00
Xinchen Hui ba292b037f Fixed bug (Wrong ce cached) 2013-04-11 14:28:42 +08:00
Pierre Joye e71b794569 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  lucky that the name is not used, fix name of encoder
2013-04-11 07:08:39 +02:00
Remi Collet 6df1e8d3fe apply change from opcache readme to php.ini 2013-04-11 07:05:56 +02:00
Pierre Joye 4475dbf11d Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-04-11 06:58:04 +02:00
Pierre Joye 684f4d5272 lucky that the name is not used, fix name of encoder 2013-04-11 06:42:38 +02:00
Dmitry Stogov 88e14d01bf Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  update NEWS
  updated NEWS
  Fixed bug #64342 ZipArchive::addFile() has to check for file existence
2013-04-10 23:12:48 +04:00
Dmitry Stogov 193e1865ad Added opcache related entries 2013-04-10 23:10:43 +04:00
Anatol Belski 7133eee5f2 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-10 20:51:58 +02:00
Anatol Belski b6d54faa92 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-04-10 20:51:32 +02:00
Anatol Belski 56b028e590 Merge branch 'PHP-5.3' of git.php.net:php-src into PHP-5.3 2013-04-10 20:50:57 +02:00
Anatol Belski fc658f442d update NEWS 2013-04-10 20:47:28 +02:00
Anatol Belski 0655ab7c26 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed bug #64342 ZipArchive::addFile() has to check for file existence
2013-04-10 20:45:28 +02:00
Anatol Belski 782085bbfb updated NEWS 2013-04-10 20:44:41 +02:00
Anatol Belski ceb5b684e0 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #64342 ZipArchive::addFile() has to check for file existence
2013-04-10 20:40:28 +02:00
Anatol Belski 968ae4a56a Fixed bug #64342 ZipArchive::addFile() has to check for file existence 2013-04-10 20:39:17 +02:00
Pierre Joye 6ea7e6da8b Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-10 20:15:03 +02:00
Pierre Joye 87f5d9aa1b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add external 2.1 detection and fix gd_compat for 2.1+
2013-04-10 20:13:46 +02:00
Pierre Joye c480bf3fb2 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  add external 2.1 detection and fix gd_compat for 2.1+
2013-04-10 20:13:18 +02:00
Pierre Joye 224a67fb9f add external 2.1 detection and fix gd_compat for 2.1+ 2013-04-10 20:12:25 +02:00
Dmitry Stogov af967de2af Allow wilcards in opcache.blacklist_filename 2013-04-10 21:41:30 +04:00
Dmitry Stogov e27039630a Fixed support for PHP-5.3 2013-04-10 21:27:06 +04:00
Dmitry Stogov 2b3a4afcbf Added missing ARG_INFO 2013-04-10 16:45:59 +04:00
Dmitry Stogov 7845f49006 Numeric string constants used as array indeces have to be converted to long at compile time 2013-04-10 15:33:08 +04:00
Johannes Schlüter 2e3e87029f Merge branch 'PHP-5.4' into PHP-5.5 2013-04-10 09:48:15 +02:00
Johannes Schlüter 442ff25187 PHP 5.4.14 release date 2013-04-10 09:45:16 +02:00
Johannes Schlüter 146d786137 Merge branch 'PHP-5.3' into PHP-5.4 2013-04-10 09:44:34 +02:00
Johannes Schlüter ecdf8bcc45 PHP 5.3.24 release date 2013-04-10 09:41:21 +02:00
Michael Moravec 70668fd88a Fixed typo - inconsistent notice for undefined property (introduced by fix for #49348) 2013-04-10 13:36:47 +08:00
David Soria Parra 1c498e6e94 NEWS section for next beta 2013-04-09 20:27:22 +02:00
David Soria Parra 6426a002e7 NEWS for PHP 5.5.0 Beta 3 2013-04-09 20:26:58 +02:00
Dmitry Stogov 2b28f29e53 Fixed CFG construction bugs 2013-04-09 17:48:45 +04:00
Dmitry Stogov e13d2c7c7f Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  fix possible NULL deref
  fix null deref
  Fixed bugs #47675 and #64577 (fd leak on Solaris)
2013-04-09 12:10:54 +04:00
Pierre Joye 24f1045d55 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix possible NULL deref
2013-04-09 10:09:47 +02:00
Pierre Joye aab5659357 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix possible NULL deref
2013-04-09 10:09:36 +02:00
Pierre Joye 88b3cdc4e9 fix possible NULL deref 2013-04-09 10:09:17 +02:00
Pierre Joye 1359eaa057 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-09 10:06:49 +02:00
Pierre Joye 4d6c367177 Merge branch 'PHP-5.4' into PHP-5.5
# By Pierre Joye (1) and Rasmus Lerdorf (1)
* PHP-5.4:
  fix null deref
  Fixed bugs #47675 and #64577 (fd leak on Solaris)
2013-04-09 10:04:32 +02:00
Pierre Joye 10d62de4aa Merge branch 'PHP-5.3' into PHP-5.4
# By Pierre Joye (1) and Rasmus Lerdorf (1)
* PHP-5.3:
  fix null deref
  Fixed bugs #47675 and #64577 (fd leak on Solaris)
2013-04-09 10:04:17 +02:00
Pierre Joye 4d4adf47e0 fix null deref 2013-04-09 10:04:01 +02:00
Dmitry Stogov 4bf1f3801b Fixed ZTS build 2013-04-09 12:03:41 +04:00
Dmitry Stogov 4cf00c08bd Fixed issue #26 (added opcache_invalidate(string $filename [, bool $force = false]) function) 2013-04-09 11:57:28 +04:00
Dmitry Stogov d9c9e78369 Fixed issue #82 (allow comments in blacklist file, lines started with ";") 2013-04-09 10:51:19 +04:00
Pierre Joye 83500123d0 ws and comment for recommended aa method 2013-04-09 07:04:52 +02:00
Pierre Joye ec136c219e Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-04-09 06:47:21 +02:00
Pierre Joye 85ad65ef40 fix some unitialized values and typo 2013-04-09 06:44:45 +02:00
Anatol Belski a9f9ff68a2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated libmagic.patch
2013-04-08 16:24:20 +02:00
Anatol Belski a35d386612 updated libmagic.patch 2013-04-08 16:23:43 +02:00
Anatol Belski b810878e7d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix ident
2013-04-08 15:51:53 +02:00
Anatol Belski 9de5dcad1c fix ident 2013-04-08 15:51:22 +02:00
Anatol Belski a1f66c0b50 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Refactored the previous memleak fix
2013-04-08 14:34:09 +02:00
Anatol Belski f3ca1155d6 Refactored the previous memleak fix
to avoid usage of a freed pointer. Thanks Laruence )
2013-04-08 14:32:37 +02:00
Anatol Belski 9f0bfed435 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix memory leak at apprentice.c:1095
2013-04-08 12:50:25 +02:00
Anatol Belski 28e26b0fad fix memory leak at apprentice.c:1095 2013-04-08 12:49:53 +02:00
Anatol Belski 30fc3ac6aa Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed EOL
2013-04-08 09:21:06 +02:00
Anatol Belski b0b81c0a37 fixed EOL 2013-04-08 09:20:43 +02:00
Anatol Belski ee0df8c40a updated NEWS 2013-04-07 22:20:12 +02:00
Anatol Belski b12f79cafb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  upgraded libmagic to 5.14
2013-04-07 22:18:53 +02:00
Anatol Belski 10367fa7c6 upgraded libmagic to 5.14 2013-04-07 22:15:56 +02:00
Nuno Lopes e769025791 leave a sane environment behind (even if empty) when exiting
some OS atexit() handlers call getenv()
2013-04-07 02:33:33 -04:00
Xinchen Hui 5ac8084e5f Merge branch 'PHP-5.4' into PHP-5.5 2013-04-05 23:28:02 +08:00
Carson McDonald 39bc1bd25f Fix typo 2013-04-05 23:27:34 +08:00
Xinchen Hui 5c4d9123fa Drop support for bison < 2.4 when building PHP from GIT source 2013-04-05 21:35:09 +08:00
Xinchen Hui ce88a81111 Contant has been renamed 2013-04-05 14:27:56 +08:00
Xinchen Hui f4d27a1557 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-05 14:27:29 +08:00
Xinchen Hui 1bcaf771dc Constant has been renamed 2013-04-05 14:25:54 +08:00
Rasmus Lerdorf c3a57fff5e Fixed bugs #47675 and #64577 (fd leak on Solaris) 2013-04-04 19:23:22 -07:00
Rasmus Lerdorf 569eddce0f Fixed bugs #47675 and #64577 (fd leak on Solaris) 2013-04-04 19:22:28 -07:00
Rasmus Lerdorf 1b60c189ad Fixed bugs #47675 and #64577 (fd leak on Solaris) 2013-04-04 19:15:52 -07:00
Johannes Schlüter 9587cf385e Improve warning when trying to load zend ext as PHP module 2013-04-04 15:36:46 +02:00
Xinchen Hui 01ca2bf8c3 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	ext/curl/interface.c
2013-04-04 19:31:14 +08:00
Xinchen Hui 185e5e15ae s ,CURL_WRAPPERS_ENABLE,CURL_WRAPPERS_ENABLED, 2013-04-04 19:28:17 +08:00
Xinchen Hui aac43c9ee8 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-04 14:56:00 +08:00
Xinchen Hui 4f2acd8cde Update test script to make sure the error occurred 2013-04-04 14:55:17 +08:00
Xinchen Hui 4d66b3b589 no tab here 2013-04-04 14:53:30 +08:00
Xinchen Hui 5f969c1d46 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-04 14:53:17 +08:00
Xinchen Hui 846d298f9b Merge branch 'PHP-5.3' into PHP-5.4 2013-04-04 14:53:06 +08:00
Xinchen Hui 9883d8d3e5 no tab here 2013-04-04 14:52:59 +08:00
Xinchen Hui 934dfae4e1 no tab here 2013-04-04 14:52:27 +08:00
Xinchen Hui 34c5b80595 Update NEWs 2013-04-04 14:49:22 +08:00
Xinchen Hui 65e368debd Merge branch 'PHP-5.4' into PHP-5.5 2013-04-04 14:48:53 +08:00
Xinchen Hui 82ac3106e0 Use 5.4 specifical warnnig & Update NEWs 2013-04-04 14:47:49 +08:00
Xinchen Hui f4f8b5a94b Merge branch 'PHP-5.3' into PHP-5.4 2013-04-04 14:44:28 +08:00
Xinchen Hui c96a5bc6be Fixed bug #64578 (debug_backtrace in set_error_handler corrupts zend heap: segfault) 2013-04-04 14:34:11 +08:00
Xinchen Hui db3d629f05 Merge branch 'PHP-5.3' into PHP-5.4 2013-04-04 13:40:46 +08:00
Xinchen Hui 7fc8077e4c Fixed Bug #64578 2013-04-04 13:40:21 +08:00
Nikita Popov 1f34ccbe34 Fix bug #64555: foreach no longer copies keys if they are interned 2013-04-03 20:29:19 +02:00
Xinchen Hui 42f94aa978 Fix test due to opcache 2013-04-03 19:52:09 +08:00
Xinchen Hui bbb4a44f98 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-03 18:51:19 +08:00
ptarjan 99ad08f9a5 Fix #64572: Clean up after the test
Lets not leave stuff lying around.
2013-04-03 18:50:27 +08:00
ptarjan e8d80b770b Fix #64572: Clean up after the test
Lets not leave stuff lying around.
2013-04-03 18:50:18 +08:00
Xinchen Hui f5f3ab1b3f format 2013-04-03 10:21:06 +08:00
Xinchen Hui 0495061a8f Merge branch 'PHP-5.4' into PHP-5.5 2013-04-03 10:20:52 +08:00
Xinchen Hui e34767d426 format 2013-04-03 10:20:33 +08:00
Xinchen Hui bb70176328 Update NEWS & UPGRADING 2013-04-03 10:17:27 +08:00
Xinchen Hui 6ace9c646b Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	ext/curl/interface.c
2013-04-03 10:15:41 +08:00
Xinchen Hui 78a9489f6a Use new constant replace ugly trick 2013-04-03 10:12:49 +08:00
Xinchen Hui 37b20a1bc2 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-04-03 10:11:33 +08:00
Xinchen Hui d7f709a032 Add CURL_WRAPPERS_ENABLE constant
see http://news.php.net/php.internals/66871
2013-04-03 10:09:51 +08:00
Remi Collet 688f5fc889 NEW for #64565 2013-04-02 16:34:39 +02:00
Remi Collet c51e32860a NEW for #64565 2013-04-02 16:33:54 +02:00
Remi Collet 44dbe6a815 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  keep previous test to avoid any behavior change
2013-04-02 16:31:45 +02:00
Remi Collet 731a5c5104 keep previous test to avoid any behavior change 2013-04-02 16:31:36 +02:00
Remi Collet ce89bc8743 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix comment
  Fixed Bug #64565 copy doesn't report failure on partial copy
2013-04-02 16:24:14 +02:00
Remi Collet 8e8a75444c fix comment 2013-04-02 16:24:00 +02:00
Remi Collet 6b4148bc97 Fixed Bug #64565 copy doesn't report failure on partial copy
_php_stream_copy_to_stream_ex, when mmap is possible, doesn't check
if actually written bytes match read bytes.

Fix this (paranoid check) to be consistent with non mmap mode

Seems hard to add a unit test, as this rely on a full filesystem.
2013-04-02 16:18:26 +02:00
Dmitry Stogov 23b44e7f39 Fixed ZTS build 2013-04-01 21:16:33 +04:00
Xinchen Hui d8a5f41a60 Fixed bug parameter is casted to string of array_column 2013-04-01 19:11:45 +08:00
Xinchen Hui 3b504a3717 Merge branch 'PHP-5.4' into PHP-5.5 2013-04-01 18:17:28 +08:00
Xinchen Hui 7b07d05917 Merge branch 'PHP-5.3' into PHP-5.4 2013-04-01 18:13:38 +08:00
Xinchen Hui 9456dac54e Fix test 2013-04-01 18:12:16 +08:00
Dmitry Stogov 74f158fb9d Fixed issue #79 (Optimization Problem/Bug) 2013-04-01 11:33:04 +04:00
Nuno Lopes 586dc07a8a fix coverage data for the opcache optimizer 2013-03-31 15:45:15 -04:00
Xinchen Hui ad7c0b1928 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-31 21:26:26 +08:00
Xinchen Hui 72426a446d Skip test when --with-curlwrappers enabled. 2013-03-31 21:22:48 +08:00
Xinchen Hui 2f6b9b970c Fix typo (it's in DateTime::__wakeup) 2013-03-31 20:07:14 +08:00
Derick Rethans 503760c913 Updated test case and added BFN to NEWS. 2013-03-31 11:07:24 +01:00
EC2 Default User b07ecb5501 Bug #60774 (DateInterval::format("%a") is always zero when an interval is
created using the createFromDateString method)
2013-03-31 10:59:21 +01:00
Derick Rethans 84208d9dc5 Added the new .c files as well as they are not automatically regenerated. 2013-03-31 10:55:45 +01:00
Lonny Kapelushnik 58a8013e5f Rebased to PHP-5.4
Implemented Dmitrys change from df97c3aa0d
Moved the timelib_parse_tz_cor function to ext/date/lib/timelib.c
2013-03-31 10:45:01 +01:00
Lonny Kapelushnik a4ca01cc2b Made separate tests for each TZ type
Fixed handling of unserializing types 1 and 3
2013-03-31 10:45:00 +01:00
Lonny Kapelushnik a1ebd82a29 Fixed the test to use %d instead of an actual number 2013-03-31 10:45:00 +01:00
Lonny Kapelushnik 30d0ae42b5 Bug 54567 DateTimeZone serialize/unserialize
Make DateTimeZone serializable and implement __set_state
2013-03-31 10:45:00 +01:00
Derick Rethans 5dd73b9e54 Merge branch 'splitting-out-date-time-immutable' into PHP-5.5 2013-03-31 10:39:01 +01:00
Derick Rethans 68a7fec7af Make DateTime and DateTimeImmutable siblings.
They both implement the DateTimeInterface interface, which specifies the
non-modifying methods of DateTime/DateTimeImmutable.
2013-03-31 10:37:16 +01:00
Stanislav Malyshev 61fff1fd8b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #64433: does not follow redirects for non-3xx response codes
2013-03-30 21:24:21 -07:00
Sergey Akbarov 1d4fcdff9f Fix bug #64433: does not follow redirects for non-3xx response codes 2013-03-30 21:22:30 -07:00
Xinchen Hui bed44e562e missed part of the patch 2013-03-29 23:47:46 +08:00
Xinchen Hui 953f07503a Fixed bug #64544 (Valgrind warnings after using putenv)
The frozen_envion is needed, since if an item in environ is updated
(like the test script HOME one), invalid free still shows up
2013-03-29 23:42:50 +08:00
Keyur Govande b2a760fe45 Merge branch 'pull-request/313' into PHP-5.5
* pull-request/313:
  Patch for Bug #64544. The process title change module keeps track of the locally allocated environ, so it doesn't need to worry about when environ changes underneath it, for example by putenv()/setenv()
2013-03-29 14:42:16 +00:00
Keyur Govande 00d961cf6a Merge branch 'PHP-5.5' of https://git.php.net/push/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/push/php-src: (266 commits)
  Fix "passing NULL to non-pointer argument" warnings in intl
  Remove support for cloning generators
  Removed deprecated check
  Fix whitespace issue in the SOAP test
  Fix SOAP test
  Forgot to fix the test on 5.4
  Exclude Travis build for 5.3 and 5.4
  Fix tests after addition of ^ (xor) operator to ini
  Fix Bug #64545:	PHP Error in ef93a93ee2
  Attempt to fix SKIP
  This will PHP 5.3.25
  Typo fix (greater then => greater than)
  don't optimize script if it's not going to be cached
  Reimplemented OPcache restart trigger. Now, if memory or hash are full the restart is scheduled only in case the amount of wasted memory is above opcache.max_wasted_percentage. Otherwise OPcahce continue serving the following requests using already cached files, but doesn't try to add new files (the cache is full anyway).
  With pkgconfig < 0.28 output is a single space With pkgconfig = 0.28 output is an empty string, This breaks the test on the 2 vars
  Fixed issue #78 (incorrect file path validation)
  Fix test on Mac (\D shows up)
  Add test for #64529
  will be 5.4.15
  fix NEWS
  ...
2013-03-29 14:35:45 +00:00
Keyur Govande 5bf6323e51 Patch for Bug #64544.
The process title change module keeps track of the locally allocated
environ, so it doesn't need to worry about when environ changes
underneath it, for example by putenv()/setenv()
2013-03-29 14:27:36 +00:00
Nikita Popov 8aff7f0528 Fix "passing NULL to non-pointer argument" warnings in intl
The second argument to spprintf is a size_t (maximum length).
2013-03-29 12:55:00 +01:00
Nikita Popov 8345abcabb Remove support for cloning generators 2013-03-29 11:42:10 +01:00
Dmitry Stogov aa791a4d72 Removed deprecated check 2013-03-29 03:18:04 +04:00
Pierre Joye ac0b66f160 fix BELL constant declaration 2013-03-28 22:14:34 +01:00
Nikita Popov 0e25e00ecf Fix whitespace issue in the SOAP test 2013-03-28 19:10:57 +01:00
Nikita Popov a5e606a2ba Fix SOAP test
Doesn't look like these warnings are present anymore.
2013-03-28 19:05:06 +01:00
Nikita Popov 15994a14a4 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	.travis.yml
2013-03-28 18:43:11 +01:00
Nikita Popov 92aa361bfc Forgot to fix the test on 5.4 2013-03-28 18:42:01 +01:00
Nikita Popov bbe9052ca3 Merge branch 'PHP-5.3' into PHP-5.4 2013-03-28 18:41:34 +01:00
Nikita Popov fecce5a55f Exclude Travis build for 5.3 and 5.4 2013-03-28 18:40:57 +01:00
Nikita Popov dcf0b71c98 Fix tests after addition of ^ (xor) operator to ini 2013-03-28 18:35:46 +01:00
Nikita Popov b1a6a17039 Fix Bug #64545: PHP Error in ef93a93ee2
Test was using die "Foo" instead of die("Foo").
2013-03-28 18:23:23 +01:00
Xinchen Hui 127c78cb76 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-28 23:23:07 +08:00
Xinchen Hui ef93a93ee2 Attempt to fix SKIP 2013-03-28 23:22:20 +08:00
Johannes Schlüter e6ef89861e Merge branch 'PHP-5.4' into PHP-5.5 2013-03-28 15:09:06 +01:00
Johannes Schlüter 242d88c20c Merge branch 'PHP-5.3' into PHP-5.4 2013-03-28 15:08:30 +01:00
Johannes Schlüter 46ee57f2d7 This will PHP 5.3.25 2013-03-28 15:05:46 +01:00
Xinchen Hui f4daaf9250 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-28 19:13:58 +08:00
Veres Lajos 124a867b6a Typo fix (greater then => greater than) 2013-03-28 19:12:08 +08:00
Dmitry Stogov 86d301b232 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  With pkgconfig < 0.28 output is a single space With pkgconfig = 0.28 output is an empty string, This breaks the test on the 2 vars
2013-03-28 13:48:18 +04:00
Dmitry Stogov 3ae5c55596 don't optimize script if it's not going to be cached 2013-03-28 13:45:40 +04:00
Dmitry Stogov 037ea6f360 Reimplemented OPcache restart trigger. Now, if memory or hash are full the restart is scheduled only in case the amount of wasted memory is above opcache.max_wasted_percentage. Otherwise OPcahce continue serving the following requests using already cached files, but doesn't try to add new files (the cache is full anyway). 2013-03-28 13:34:59 +04:00
Remi Collet 201128d39c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  With pkgconfig < 0.28 output is a single space With pkgconfig = 0.28 output is an empty string, This breaks the test on the 2 vars
2013-03-28 10:25:39 +01:00
Remi Collet 640e72ce91 With pkgconfig < 0.28 output is a single space
With pkgconfig = 0.28 output is an empty string,
This breaks the test on the 2 vars

Need to split when
LIB set (ex -lssl -lcrypto)
INC empty (because /usr/include used)
2013-03-28 10:22:20 +01:00
Dmitry Stogov 031553cd01 Fixed issue #78 (incorrect file path validation) 2013-03-28 12:30:18 +04:00
Xinchen Hui 7dd661d0cd Merge branch 'PHP-5.4' into PHP-5.5 2013-03-28 14:35:02 +08:00
Xinchen Hui ab089611e0 Fix test on Mac (\D shows up) 2013-03-28 14:34:08 +08:00
Xinchen Hui ae71c1d9aa Merge branch 'PHP-5.4' into PHP-5.5 2013-03-28 13:54:37 +08:00
Xinchen Hui 55341ac0a8 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-03-28 13:54:04 +08:00
Xinchen Hui 467cd6a60f Add test for #64529 2013-03-28 13:45:42 +08:00
Stanislav Malyshev 5d535a007d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  will be 5.4.15
  fix NEWS

Conflicts:
	configure.in
	main/php_version.h
2013-03-27 14:02:14 -07:00
Stanislav Malyshev f982aaafa7 will be 5.4.15 2013-03-27 14:00:12 -07:00
Stanislav Malyshev 210d43d7a2 fix NEWS 2013-03-27 13:57:53 -07:00
Lars Strojny 25b3c94944 Added XOR support for expressions in INI parser: NEWS and zend_language_scanner.c 2013-03-27 21:30:56 +01:00
Dejan Marjanovic 05016b7e96 Added XOR support for expressions in INI parser 2013-03-27 21:28:53 +01:00
Dmitry Stogov 6e8aa09696 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64529 (Ran out of opcode space)

Conflicts:
	NEWS
	Zend/zend_execute_API.c
	Zend/zend_language_scanner.c
	Zend/zend_language_scanner_defs.h
2013-03-28 00:08:11 +04:00
Dmitry Stogov 85e5e60777 Fixed bug #64529 (Ran out of opcode space) 2013-03-28 00:03:40 +04:00
Dmitry Stogov 391a41e167 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  Remove unused variable
  NEWS Section for beta 3
  News for beta 2
2013-03-27 23:15:38 +04:00
Dmitry Stogov 1556d5df8a Fixed issue #74 (Allowed per request OPcache disabling) 2013-03-27 23:13:21 +04:00
David Soria Parra f92a15864b Remove unused variable 2013-03-27 20:00:54 +01:00
David Soria Parra ef6cdb85d9 NEWS Section for beta 3 2013-03-27 19:57:24 +01:00
David Soria Parra 2185746feb News for beta 2 2013-03-27 19:30:43 +01:00
Dmitry Stogov 91ab11ed07 Fixed issue #76 (actually we don't need zend_shared_memory_block_header at all) 2013-03-27 22:16:18 +04:00
Dmitry Stogov fc7efecda0 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  add WebP support in phpinfo
2013-03-27 21:09:51 +04:00
Dmitry Stogov 26f3ff25fe Added opcache.enable_cli=0 2013-03-27 21:08:18 +04:00
Dmitry Stogov f139534694 Added description for opcache.enable_cli 2013-03-27 21:02:39 +04:00
Pierre Joye e7d88a63fa add WebP support in phpinfo 2013-03-27 17:38:57 +01:00
Pierre Joye f01a7e54d3 add windows 8 and windows server 2012 2013-03-27 07:29:47 +01:00
Pierre Joye d0aa831614 versions no longer supported, no need to check 2013-03-27 07:15:23 +01:00
Pierre Joye f3ebb40ad6 FALSE on error 2013-03-27 05:13:30 +01:00
Pierre Joye 4d73bb070e Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-26 11:24:48 +01:00
Pierre Joye 5ae6f582fb fix regression, take #2 (merge issue due to git 1.8 default setting changes) 2013-03-26 11:23:15 +01:00
Xinchen Hui ed31582301 Fixed bug #64515 (Memoryleak when using the same variablename 2times in function declaration) 2013-03-26 12:02:48 +08:00
Xinchen Hui 0496ad31ac Merge branch 'PHP-5.4' into PHP-5.5 2013-03-26 11:51:15 +08:00
Xinchen Hui 1182a3356c Update test script 2013-03-26 11:50:47 +08:00
Xinchen Hui 62ec3893d2 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-26 11:47:38 +08:00
Xinchen Hui 5e9377ebd5 Fixed bug #64515 (Memoryleak when using the same variablename 2times in function declaration) 2013-03-26 11:44:57 +08:00
Xinchen Hui 975d26667b Fixed bug #64503 (Compilation fails with error: conflicting types for 'zendparse'). 2013-03-25 23:48:21 +08:00
Pierre Joye c6e911e154 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-25 13:43:22 +01:00
Pierre Joye 0171bcb9fa typo and WS 2013-03-25 13:42:29 +01:00
Dmitry Stogov 65afa3c044 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  add new functions and constants for GD
2013-03-25 15:49:41 +04:00
Dmitry Stogov 96e5f5eb05 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #63914 (zend_do_fcall_common_helper_SPEC does not handle exceptions properly). (Jeff Welch)

Conflicts:
	NEWS
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-03-25 15:47:45 +04:00
Dmitry Stogov e9f996c00d Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #63914 (zend_do_fcall_common_helper_SPEC does not handle exceptions properly). (Jeff Welch)

Conflicts:
	NEWS
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2013-03-25 15:23:49 +04:00
Pierre Joye 878bef2a1d Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-25 12:22:20 +01:00
Pierre Joye 1c662dc303 add new functions and constants for GD 2013-03-25 12:15:46 +01:00
Dmitry Stogov c4686b4de9 Fixed bug #63914 (zend_do_fcall_common_helper_SPEC does not handle exceptions properly). (Jeff Welch) 2013-03-25 15:07:27 +04:00
Dmitry Stogov 6a7088fd18 back to dev (7.0.2-dev) 2013-03-25 13:57:50 +04:00
Dmitry Stogov f17156c2d1 Fixed copy/paste mistake 2013-03-25 13:30:45 +04:00
Dmitry Stogov 0a00d29256 Fixed bug #64482 (Opcodes for dynamic includes should not be cached) 2013-03-25 13:05:16 +04:00
Dmitry Stogov 64b029af0d Separate "start_time" from "last_restart_time" 2013-03-25 12:33:24 +04:00
Dmitry Stogov 987dee9ca1 Fixed PHP-5.2 ZTS compatibility 2013-03-25 12:21:58 +04:00
Dmitry Stogov a3316ffe6a 7.0.1 release 2013-03-25 11:44:09 +04:00
Stanislav Malyshev c20e4bbc96 make it int main 2013-03-24 23:58:30 -07:00
Stanislav Malyshev 016fbd9991 fix return value 2013-03-24 23:43:25 -07:00
Stanislav Malyshev 385d0e52cc add code to check if we know flock definition on this system
In order to configure detect it and not fail the compile.
Not an ideal solution, suggestions are welcome on how to improve it.
2013-03-24 20:11:28 -07:00
Stanislav Malyshev 504ef64c7b fix typo 2013-03-24 20:03:57 -07:00
Stanislav Malyshev 7c0bdb9a4f add definition for 5.5 2013-03-24 19:54:10 -07:00
Pierre Joye 4394249881 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-25 03:19:08 +01:00
Pierre Joye 1b34ab8ff8 remove comments 2013-03-25 03:14:27 +01:00
Stanislav Malyshev c342c9b964 fix bug #64490 - add __FreeBSD_kernel__ to allowed FreeBSD defs 2013-03-24 19:07:30 -07:00
Nikita Popov c08e1d2be9 Fix PDO::inTransaction() test for pgsql
inTransaction() nowadays casts the in_transaction result to boolean.
I'm not sure whether the INERROR state should result in true or false.
For now I went with the result that we actually get.
2013-03-24 17:54:05 +01:00
Johannes Schlüter d900382814 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-24 17:33:17 +01:00
Johannes Schlüter 6f560b0487 Document embedded server options in manpage 2013-03-24 17:32:30 +01:00
Johannes Schlüter de71f435d8 Merge branch 'PHP-5.3' into PHP-5.4 2013-03-24 17:32:00 +01:00
Johannes Schlüter 66682f5abe It's 2013, even for a manpage 2013-03-24 17:31:29 +01:00
Nikita Popov 4633e07e29 Fix mysql_list_fields.phpt test
The minimum length is given in bytes, so it is charset dependent.
For utf8 charsets for example it's 3 rather than 1.
2013-03-24 17:07:16 +01:00
Pierre Joye be3e2bb295 fix generic rotation and 90 degrees & multiples rotation, take #2 2013-03-24 16:52:20 +01:00
Nikita Popov 585f71f497 Fix some errors in mysqlnd charset list
I fixed the stuff that seemed obviously wrong, but there are some more
differences with the SHOW COLLATIONS output:

 * The whole range of "utf16" collations missing
 * "filename" missing
 * "ucs2_general_mysql500_ci" and "utf8_general_mysql500_ci" missing

I wasn't sure whether those omissions are intentional, so I didn't add
them.
2013-03-24 16:09:39 +01:00
David Soria Parra ec7250fb64 Merge commit '1ec484d' into PHP-5.5
* commit '1ec484d':
  - add imageaffinematrixget and imagematrixconcat
  - add affine matrix helper for translate, scale, rotate and shear
  - fix unix build
  - add new files for interpolation
  - config.m4 sync with .w32
  - add new interpolation method   . imagescale   . imageaffine   . replace imagerotate with new generic and optimized new implementations   . imagesetinterpolationmethod, to set the default interpolation to be     used with the new functions   . add imagepalettetotruecolor
2013-03-24 14:05:55 +01:00
Nikita Popov aa2b54812f Fix version check in test 2013-03-24 13:58:35 +01:00
Pierre Joye 0179284bfb Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - add reminder for checking return values
2013-03-24 13:29:16 +01:00
Pierre Joye bb18fa448c - add reminder for checking return values 2013-03-24 13:27:00 +01:00
Anatol Belski ec26141f92 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  - fix x64 issues on windows with the various time types (overflow, signed and unsigned bits ops, etc.) causing crashes on start, error or log, must be done in win32/time.c for some of these functions too
2013-03-23 22:43:58 +01:00
Pierre Joye 3af4896837 - fix x64 issues on windows with the various time types (overflow, signed and unsigned bits ops, etc.) causing crashes on start, error or log, must be done in win32/time.c for some of these functions too
Signed-off-by: Anatol Belski <ab@php.net>
2013-03-23 22:42:03 +01:00
Nikita Popov 2b62226188 Fix cli server tests on travis
This passes an absolute path to the executable, rather than a relative.
Maybe this is something that should be done automatically by
run-tests.php as it doesn't apply only to travis.
2013-03-23 21:43:55 +01:00
Nikita Popov 430c987716 Skip locale dependent test if locale not available 2013-03-23 21:09:21 +01:00
Nikita Popov c2893ab592 Missed two occurances of Revision: 2013-03-23 21:09:20 +01:00
Anatol Belski ec25e99193 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Reworked the changes for bug #64452
2013-03-23 21:00:46 +01:00
Anatol Belski 04b492a5fe Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Reworked the changes for bug #64452
2013-03-23 20:59:47 +01:00
Anatol Belski 638c4b89b7 Reworked the changes for bug #64452 2013-03-23 20:57:59 +01:00
Nikita Popov 01583bdc36 phar phpinfo uses Id instead of Revision 2013-03-23 20:11:06 +01:00
Nikita Popov 9a56dce83f Use NEWS merge driver for UPGRADING and UPGRADING.INTERNALS 2013-03-23 18:26:11 +01:00
Nikita Popov bda5c0b082 Show diffs on Travis CI 2013-03-23 18:25:18 +01:00
Nikita Popov 0cb868c042 Move some internal changes from UPGRADING to UPGRADING.INTERNALS 2013-03-23 18:06:25 +01:00
Anatol Belski 2e00f7611c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed possible precision loss in microtime
2013-03-23 17:48:05 +01:00
Anatol Belski 3654ff7366 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed possible precision loss in microtime
2013-03-23 17:47:39 +01:00
Anatol Belski b022e54bd1 Fixed possible precision loss in microtime
This is related to the fix for bug #64370. MSVC natively supports __int64 type,
so calculating with 32 bit ints is neither necessary nor reliable. Therefore
an older piece of code is reused.
2013-03-23 17:40:06 +01:00
David Soria Parra defb08c705 Note about bison version 2013-03-22 17:44:32 +01:00
Etienne Kneuss 6af1b08482 Add SplDoublyLinkedList::add to UPGRADING 2013-03-22 11:35:45 +01:00
Rasmus Lerdorf fd2b8df265 Tweaks an add OPcache info to UPGRADING 2013-03-21 23:14:16 -07:00
David Soria Parra 293d5defb4 Add OPCache ini settings to php.ini 2013-03-21 15:51:23 +01:00
Xinchen Hui 534aec8a52 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-21 21:32:32 +08:00
Xinchen Hui 39a173b79b Fix bug in reflectionClass relate to #64239 2013-03-21 21:32:06 +08:00
Xinchen Hui 9d31c0de0c Update NEWS 2013-03-21 21:11:15 +08:00
Xinchen Hui 79925094c4 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-21 21:10:32 +08:00
Xinchen Hui 7dce0194c8 Fixed bug #64239 (Debug backtrace changed behavior since 5.4.10 or 5.4.11) 2013-03-21 21:09:30 +08:00
Xinchen Hui f2383dead6 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-21 15:58:08 +08:00
Xinchen Hui 08624ea90d Fix test after f8b91d9acf 2013-03-21 15:57:21 +08:00
Xinchen Hui b29a9fa75d Merge branch 'PHP-5.4' into PHP-5.5 2013-03-21 11:14:36 +08:00
Xinchen Hui 0fd3572f4e Fixed bug #64432 (more empty delimiter warning in strX methods) 2013-03-21 11:14:10 +08:00
Xinchen Hui da6916a770 fix memory leak
the value shouldn't be ref, use z_add_ref is enough
2013-03-21 10:58:58 +08:00
Stanislav Malyshev 6f17c6242f add array_column() 2013-03-20 14:14:17 -07:00
David Soria Parra 2258350450 NEWS section for beta 2 2013-03-20 15:17:53 +01:00
David Soria Parra 7f2424bb1d NEWS for beta 1 2013-03-20 15:17:53 +01:00
David Soria Parra 52171aeaf4 Allow local override of PHPROOT in makedist 2013-03-20 15:17:53 +01:00
David Soria Parra 66b4e5cdec NEWS for array_column 2013-03-20 13:14:20 +01:00
David Soria Parra 0173c4bab0 Merge branch 'pull-request/257' into PHP-5.5
* pull-request/257:
  array_column: Fix compile-time warnings
  array_column: Removed array_pluck() alias
  array_column: Set array_pluck as an alias for array_column
  array_column: Implement ability to specify an index column
  Cleaning up a memory leak.
  array_column: Adding test for IS_OBJECT and converting object to string
  array_column: Using add_next_index_zval() at nikic's recommendation.
  array_column: Improved tests
  array_column: Cleaning up, as recommended in pull request #56 comments
  Fixing typo in test for array_column()
  Simplify the code and use zend_hash_next_index_insert()
  Adding test for columns not present in all rows for array_column().
  Adding tests for the negative results of array_column()
  Implement new array function array_column()
2013-03-20 13:02:33 +01:00
Pierre Joye 1ec484d3c5 - add imageaffinematrixget and imagematrixconcat 2013-03-20 12:19:03 +01:00
Pierre Joye 780c6e0a9c - add affine matrix helper for translate, scale, rotate and shear 2013-03-20 11:01:37 +01:00
Pierre Joye a46065ef71 - fix unix build 2013-03-20 09:24:54 +01:00
Anatol Belski bf8026aacf updated NEWS 2013-03-20 09:15:16 +01:00
Anatol Belski 0125ec77d2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  Fixed bug #64452 Zip PHPTs crash intermittently
2013-03-20 09:14:13 +01:00
Anatol Belski 0881ff0466 updated NEWS 2013-03-20 09:13:13 +01:00
Anatol Belski 06a526be3e Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #64452 Zip PHPTs crash intermittently
2013-03-20 09:12:33 +01:00
Anatol Belski bb935ff8dc Fixed bug #64452 Zip PHPTs crash intermittently 2013-03-20 09:10:10 +01:00
Pierre Joye a7a53d369b - add new files for interpolation 2013-03-20 08:10:54 +01:00
Pierre Joye 00a53ca817 - config.m4 sync with .w32 2013-03-20 07:52:23 +01:00
Pierre Joye 22159fb7b7 - add new interpolation method
. imagescale
  . imageaffine
  . replace imagerotate with new generic and optimized new implementations
  . imagesetinterpolationmethod, to set the default interpolation to be
    used with the new functions
  . add imagepalettetotruecolor
2013-03-20 07:46:59 +01:00
Stanislav Malyshev 5aaff8d634 clarify NEWS 2013-03-19 22:32:50 -07:00
Ben Ramsey f5bf1ba88f array_column: Fix compile-time warnings 2013-03-19 20:44:19 -05:00
Anatol Belski cb76420fe0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Backported fix for bug #62852
2013-03-19 21:22:49 +01:00
Anatol Belski cfd096fd7c Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Backported fix for bug #62852
2013-03-19 21:22:09 +01:00
Anatol Belski 8d199c7c4f Backported fix for bug #62852 2013-03-19 21:19:55 +01:00
David Soria Parra 5e55c6d9fd Refer to Zend Optimizer as Zend Opcache from now on 2013-03-19 16:20:37 +01:00
David Soria Parra 60b36a6819 ZO+ NEWS 2013-03-19 15:54:57 +01:00
Anatol Belski 25b84546a8 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-19 15:15:31 +01:00
Anatol Belski b3d82845db fix C89 compat 2013-03-19 15:13:27 +01:00
David Soria Parra c542e969f2 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix typos
2013-03-19 15:11:48 +01:00
Carson McDonald c6f6bf88d8 Fix typos 2013-03-19 15:11:34 +01:00
Anatol Belski ce04268bb9 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-19 14:50:05 +01:00
Mark Baker 4257469079 Fix #48358 add() method for SplDoublyLinkedLis 2013-03-19 14:46:21 +01:00
Anatol Belski 6f0f5d5281 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix C90 compat
2013-03-19 14:44:20 +01:00
Anatol Belski 7687b8b81c fix C90 compat 2013-03-19 14:42:18 +01:00
Dmitry Stogov 4837bdb910 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #63976 (Parent class incorrectly using child constant in class property)

Conflicts:
	NEWS
2013-03-19 17:04:35 +04:00
Dmitry Stogov 7b0993bfb4 Fixed bug #63976 (Parent class incorrectly using child constant in class property) 2013-03-19 16:59:01 +04:00
Dmitry Stogov 960d5be528 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Partial fix for bug #64239
2013-03-19 15:47:43 +04:00
Dmitry Stogov 984561cfa8 Partial fix for bug #64239 2013-03-19 15:45:48 +04:00
Dmitry Stogov 74e11fb14c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #62343 (Show class_alias In get_declared_classes())

Conflicts:
	NEWS
2013-03-19 15:00:24 +04:00
Dmitry Stogov 84630a1109 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed bug #62343 (Show class_alias In get_declared_classes())
2013-03-19 14:59:08 +04:00
Dmitry Stogov 4a6291508d Fixed bug #62343 (Show class_alias In get_declared_classes()) 2013-03-19 14:56:53 +04:00
Dmitry Stogov ef8c8eaa95 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #64417 (ArrayAccess::&offsetGet() in a trait causes fatal error)

Conflicts:
	NEWS
	Zend/zend_compile.c
2013-03-19 13:07:32 +04:00
Dmitry Stogov e62bb03257 Fixed bug #64417 (ArrayAccess::&offsetGet() in a trait causes fatal error) 2013-03-19 12:48:23 +04:00
Dmitry Stogov f621f0b8e7 strlen() returns size_t 2013-03-19 10:45:38 +04:00
Dmitry Stogov a62ffb72f4 Renamed Zend Optimizer+ into Zend OPcache 2013-03-19 10:32:24 +04:00
Dmitry Stogov 840c0d6091 Add stats to phpinfo 2013-03-19 10:17:44 +04:00
Dmitry Stogov 5b0879e7c9 Avoid trailing line break 2013-03-18 13:36:31 +04:00
Dmitry Stogov a9684532eb Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  fix NEWS
  fix NEWS
2013-03-18 13:17:42 +04:00
Dmitry Stogov 1fe43d0798 Add oom, wasted, hash and manual restart counters to help identify potential configuration problems 2013-03-18 13:13:35 +04:00
Stanislav Malyshev 260007a303 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix NEWS
2013-03-18 00:52:36 -07:00
Stanislav Malyshev e25b2d7ea5 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix NEWS
2013-03-18 00:52:27 -07:00
Stanislav Malyshev 87c8ea15f2 fix NEWS 2013-03-18 00:52:15 -07:00
Stanislav Malyshev b893326e0d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix NEWS
2013-03-18 00:51:35 -07:00
Stanislav Malyshev db4d473d53 fix NEWS 2013-03-18 00:51:16 -07:00
Dmitry Stogov ccf7d7cc93 Add optional flag to opcache_get_status() 2013-03-18 11:23:26 +04:00
Boris Lytochkin fe384b3444 merge with 5.4 2013-03-17 20:52:55 +04:00
Boris Lytochkin c5ba47ac59 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  more test coverage: missing square bracket error message
  Fixed bug #61981
2013-03-17 20:52:12 +04:00
Boris Lytochkin 85d9d85ce2 more test coverage: missing square bracket error message 2013-03-17 20:40:15 +04:00
Boris Lytochkin 44197774c0 Fixed bug #61981 2013-03-17 20:29:14 +04:00
Boris Lytochkin 5d0826e9c3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #61981
2013-03-17 20:02:34 +04:00
Boris Lytochkin b32405053f Fix bug #61981 2013-03-17 20:00:37 +04:00
Dmitry Stogov dcc927d3f2 Load "black list" only if O+ is enabled 2013-03-17 12:17:04 +04:00
Dmitry Stogov e66c8681c7 Made opcache_get_status() return statistics during O+ restart 2013-03-17 11:56:04 +04:00
Dmitry Stogov 0b8b6a727d Added ability to load zend_extensions without absolute path names 2013-03-17 11:42:25 +04:00
Dmitry Stogov 930b272d70 Enabled O+ build by default (it may be disabled before 5.0.0 release) 2013-03-17 10:58:30 +04:00
Dmitry Stogov 07b1eaa609 Removed files that are neccessary only for standalone pecl branch 2013-03-17 10:40:59 +04:00
Anatol Belski fa3fc711d3 setting plausible default value for struct members
especially for unsigned members so they don't casted to max unsigned
2013-03-16 18:29:50 +01:00
Etienne Kneuss b46897941a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Remove spurious int cast in between two longs
2013-03-16 18:20:16 +01:00
Etienne Kneuss 5de1b08482 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Remove spurious int cast in between two longs
2013-03-16 18:20:06 +01:00
Etienne Kneuss 62364e6e01 Remove spurious int cast in between two longs 2013-03-16 18:19:14 +01:00
Xinchen Hui c1cf7538f0 Fixed test after nick previous fix 2013-03-16 23:16:32 +08:00
Xinchen Hui acd160530a Fix test after f8b91d9acf 2013-03-16 23:14:06 +08:00
Dmitry Stogov e00b04a54f Fixed memory leaks 2013-03-16 17:24:54 +04:00
Dmitry Stogov e9641141aa Made test compatible with O+ 2013-03-16 16:11:00 +04:00
Dmitry Stogov 92430bcf5d Fixed compatibility with ext/phar 2013-03-16 16:08:11 +04:00
Dmitry Stogov ac05e68f55 Fixed O+ testes 2013-03-16 12:07:09 +04:00
Dmitry Stogov 9ef01ce698 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-16 00:46:34 +04:00
Dmitry Stogov 34d3202eda Merge Zend Optimizer+
git-subtree-dir: ext/opcache
git-subtree-mainline: b1dbfb7357
git-subtree-split: 8d35170c5f
2013-03-16 00:41:46 +04:00
Anatol Belski f8b91d9acf Fixed bug #62852 Unserialize Invalid Date crash
Error handling is the same as in bug #53437, E_ERROR if we
expect an invalid object.
2013-03-15 21:22:35 +01:00
Anatol Belski b1dbfb7357 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
2013-03-15 19:12:34 +01:00
Anatol Belski 73c38eca5a updated NEWS 2013-03-15 19:11:53 +01:00
Anatol Belski f058942923 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Backported patch for #64370
2013-03-15 19:09:18 +01:00
Anatol Belski 90c8f16c3b Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Backported patch for #64370
2013-03-15 19:08:32 +01:00
Anatol Belski b903d2d6cd Backported patch for #64370 2013-03-15 19:04:40 +01:00
Dmitry Stogov 8d35170c5f Renamed ZendOptimizerPlus.so into opcache.so 2013-03-15 21:03:05 +04:00
Anatol Belski 0ee71557ff Fixed bug #53437 Crash with unserialized DatePeriod instance 2013-03-15 16:59:54 +01:00
Nikita Popov b7788c52f1 Fix wrong macro usage and add missing NEWS entry 2013-03-15 13:48:33 +01:00
Dmitry Stogov c765c81cf6 "ZendOptimizerPlus" is renamed to "opcache" to de merged into PHP-5.5 under ext/opcache (the product name is still "Zend Optimizer+") 2013-03-15 16:21:07 +04:00
Ferenc Kovacs cc51729c00 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  explain the step updating the git submodule reference in web/php.git
2013-03-15 09:41:50 +01:00
Ferenc Kovacs 30eff1a697 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  explain the step updating the git submodule reference in web/php.git
2013-03-15 09:41:34 +01:00
Ferenc Kovacs 9350f45aca explain the step updating the git submodule reference in web/php.git 2013-03-15 09:40:28 +01:00
Dmitry Stogov be020633f2 More accurate restart scheduling 2013-03-15 11:49:33 +04:00
Dmitry Stogov 0ab356c8e5 Autogolobal $GLOBALS has to be pinged even if auto_globals_jit=0 2013-03-15 10:45:49 +04:00
Dmitry Stogov 61ac64b372 Allow only shared O+ build 2013-03-14 23:11:10 +04:00
Anatol Belski 96388c78c9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix zts check
2013-03-14 14:39:47 +01:00
Anatol Belski 5df8cf1975 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix zts check
2013-03-14 14:39:09 +01:00
Anatol Belski e43c5a8395 fix zts check 2013-03-14 14:38:20 +01:00
Dmitry Stogov dd1c358d1b Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  fix the fix
  fix for bug  #63530 	mysqlnd_stmt::bind_one_parameter uses wrong alloc for stmt->param_bind
  Forgot to remove some now unused variables
  Add support for non-scalar Iterator keys in foreach
  fixed headers order
  - Updated to version 2013.2 (2013b)
  fixed the test
  Fixed bug #64370 (microtime(true) less than $_SERVER['REQUEST_TIME_FLOAT'])
  Disable zend_always_inline in debug build
2013-03-14 14:19:41 +04:00
Andrey Hristov c09652c289 fix the fix 2013-03-13 15:56:44 +01:00
Andrey Hristov 7503a4b4a4 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	NEWS
2013-03-13 15:29:40 +01:00
Dmitry Stogov d77c865aff Removed redundand code 2013-03-13 17:51:10 +04:00
Andrey Hristov 0777a18703 Merge branch 'PHP-5.3' into PHP-5.4
Conflicts:
	NEWS
2013-03-13 14:24:23 +01:00
Andrey Hristov f1e2edff8b fix for bug #63530 mysqlnd_stmt::bind_one_parameter uses wrong alloc for stmt->param_bind 2013-03-13 13:37:51 +01:00
Nikita Popov 28634bf603 Forgot to remove some now unused variables 2013-03-12 17:39:20 +01:00
Nikita Popov fcc6611de9 Add support for non-scalar Iterator keys in foreach
RFC: https://wiki.php.net/rfc/foreach-non-scalar-keys
2013-03-12 17:27:31 +01:00
Anatol Belski 8436342d88 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fixed headers order
2013-03-12 08:34:48 +01:00
Anatol Belski a328cc452e Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fixed headers order
2013-03-12 08:34:16 +01:00
Anatol Belski bdaafe3c7b fixed headers order 2013-03-12 08:33:36 +01:00
Derick Rethans e5c64c0bda Merge branch 'PHP-5.4' into PHP-5.5 2013-03-11 21:36:41 +00:00
Derick Rethans 98bb5f4798 Merge branch 'PHP-5.3' into PHP-5.4 2013-03-11 21:36:37 +00:00
Derick Rethans 50ad2af503 - Updated to version 2013.2 (2013b) 2013-03-11 21:36:36 +00:00
Pascal Borreli 4c5517623c Fixed typos 2013-03-11 18:49:05 +00:00
Anatol Belski 278c4097c6 fixed the test 2013-03-11 16:14:39 +01:00
Anatol Belski 8aaa09636a Fixed bug #64370 (microtime(true) less than $_SERVER['REQUEST_TIME_FLOAT']) 2013-03-11 16:04:37 +01:00
Xinchen Hui 4573405c5d Merge branch 'PHP-5.4' into PHP-5.5 2013-03-11 15:16:47 +08:00
Xinchen Hui 0444708c5c Disable zend_always_inline in debug build
it will be much more easier for debuging
2013-03-11 15:15:22 +08:00
Keyur Govande c7ad92fac7 Adding in NEWS/UPGRADING about process title change support. 2013-03-11 00:20:57 +00:00
Keyur Govande cdacda720c Merge branch 'PHP-5.5' of https://git.php.net/push/php-src into PHP-5.5
* 'PHP-5.5' of https://git.php.net/push/php-src:
  Fix tests after laruence unserialize change
  Fix get_property_ptr_ptr declaration in simplexml
  Update NEWS
  Fixed confused exception message while user threw exception
  Fixed bug #64354 (Unserialize array of objects whose class can't be autoloaded fail)
  Fix date
  use NEWS only
  Fixed bug #61025 (__invoke() visibility not honored)
2013-03-11 00:05:49 +00:00
Nikita Popov 9490118fdb Fix tests after laruence unserialize change 2013-03-09 20:21:33 +01:00
Nikita Popov a59b211b2d Fix get_property_ptr_ptr declaration in simplexml
A new parameter was added to the API and simplexml wasn't adjusted,
thus causing crashes.
2013-03-09 20:15:00 +01:00
Xinchen Hui 9d816ba1d3 Update NEWS 2013-03-09 23:11:48 +08:00
Xinchen Hui 1be745ce1b Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	ext/standard/var_unserializer.c
2013-03-09 23:10:48 +08:00
Xinchen Hui 7197f0ffcc Fixed confused exception message while user threw exception 2013-03-09 23:08:14 +08:00
Xinchen Hui f52b2e6a65 Fixed bug #64354 (Unserialize array of objects whose class can't be autoloaded fail)
about the __sleep one, since php_serialize_* are all void function,
so,,only check exception at the very begining
2013-03-09 23:00:58 +08:00
Xinchen Hui af5ada3871 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-09 11:38:32 +08:00
Xinchen Hui 6fece94369 Fix date 2013-03-09 11:37:41 +08:00
David Soria Parra 6824dc6b33 use NEWS only 2013-03-08 11:12:35 +01:00
Xinchen Hui 01049ca7ae Fixed bug #61025 (__invoke() visibility not honored) 2013-03-08 10:34:17 +08:00
Keyur Govande 5543035a70 Merge branch 'pull-request/300' into PHP-5.5
* pull-request/300:
  Support for CLI process title (https://wiki.php.net/rfc/cli_process_title)
2013-03-07 23:51:37 +00:00
Ralph Schindler ac73ca6db4 Fix for https://bugs.php.net/bug.php?id=62649 2013-03-07 23:20:11 +01:00
Carson McDonald 0c11cab919 Typo fix: recieved to received 2013-03-07 23:05:05 +01:00
Keyur Govande a0a995cff3 Support for CLI process title (https://wiki.php.net/rfc/cli_process_title)
A new commit into branch 5.5
2013-03-07 18:54:34 +00:00
David Soria Parra e98271f588 News for next beta 2013-03-07 12:14:48 +01:00
David Soria Parra d0ca2430da Do another Alpha instead of Beta because of ZO+ RFC being voted on 2013-03-07 12:14:26 +01:00
Xinchen Hui d2f9804e1f add tests into package 2013-03-07 14:53:22 +08:00
Xinchen Hui bc926f2fbb Add test script for #57 (segfaults in drupal7) 2013-03-07 12:19:30 +08:00
Dmitry Stogov b543511343 fixed memory leaks 2013-03-07 08:13:58 +04:00
David Soria Parra 4923bb579a NEWS for the next beta 2013-03-06 23:51:27 +01:00
David Soria Parra b6ae7cba1e NEWS for PHP 5.5.0 Beta 1 2013-03-06 22:39:54 +01:00
Dmitry Stogov 1143d3b1d0 Fixed Issue #57 (segfaults in drupal7) 2013-03-06 22:32:21 +04:00
Anatol Belski 8589dfb6cc simplified the previous fix for #64359 2013-03-06 16:48:51 +01:00
Dmitry Stogov b34e50cc78 Fixed issue #58 (PHP-5.2 compatibility) 2013-03-06 17:49:47 +04:00
Anatol Belski 371000a877 Fixed bug #64359 strftime crash with VS2012 2013-03-06 12:37:57 +01:00
Stanislav Malyshev 9ed7eab514 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix NEWS
2013-03-06 00:45:26 -08:00
Stanislav Malyshev 38847482c8 fix NEWS 2013-03-06 00:44:43 -08:00
Dmitry Stogov 40ce4127f6 Merge branch 'master' of github.com:zend-dev/ZendOptimizerPlus 2013-03-06 09:42:26 +04:00
Dmitry Stogov 08bfdc75a4 Allows exclusion of large files from being cached 2013-03-06 09:41:59 +04:00
Xinchen Hui be5369be59 Add maintainers inot package.xml
otherwise, when doing release, pecl net will sync the maintianers info
form package.xml
2013-03-06 11:22:20 +08:00
Anatol Belski bfb8b9153b fix ANSI C90 compat 2013-03-05 20:24:58 +01:00
Dmitry Stogov c3c244af81 Fixed test 2013-03-05 22:49:31 +04:00
Dmitry Stogov 6ab1759369 Fixed uninitialized variable 2013-03-05 15:46:21 +04:00
Dmitry Stogov fae0a738df Fixed bug #64353 (Built-in classes can be unavailable with dynamic includes and Optimizer+) 2013-03-05 14:57:50 +04:00
Xinchen Hui 082741814a skip if no IPv6 support 2013-03-05 17:18:13 +08:00
Xinchen Hui e5d0dc24d2 Fix tests temporary
seems IPV6_PKTINFO are not avaiable in some OS
2013-03-05 16:56:00 +08:00
Dmitry Stogov 32904c6043 Merge branch 'master' of github.com:zend-dev/ZendOptimizerPlus 2013-03-05 12:18:57 +04:00
Dmitry Stogov 9c5039eabb Save a stat() call by calling sapi_module.get_stat() 2013-03-05 12:17:18 +04:00
Xinchen Hui 1978dae309 Skip test on Apple 2013-03-05 14:02:28 +08:00
Xinchen Hui 3f67d5ae43 Revert "Fixed Bug #64340 (sockets tests failed) Patch by Reeze"
build break, will only leave the test script fix first

This reverts commit f2246f352f.
2013-03-05 13:58:20 +08:00
Xinchen Hui 3b78c87a36 Fixed #54 (PECL install adds extension= instead of zend_extension= to php.ini) 2013-03-05 13:37:49 +08:00
Xinchen Hui 8f991588b9 Merge pull request #52 from laruence/master
update package.xml for releasing 7.0.0
2013-03-04 05:35:14 -08:00
Pierre Joye 0404c38615 - fix path 2013-03-04 14:14:09 +01:00
Pierre Joye e9a2642c89 Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2013-03-04 14:06:09 +01:00
Xinchen Hui a293bd1c4a release 7.0.0 2013-03-04 19:49:53 +08:00
Dmitry Stogov 2c95834135 Increased version number 2013-03-04 15:29:02 +04:00
Dmitry Stogov 3b0da73d32 Preparaton for pecl release 2013-03-04 15:26:40 +04:00
Pierre Joye 5001f40e82 - add noisy php logo for autocrop with threshold test 2013-03-04 12:05:59 +01:00
Anatol Belski 2635408a0d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed PCRE locale crash in Windows/TS
2013-03-04 09:15:17 +01:00
Anatol Belski 4e46a87392 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed PCRE locale crash in Windows/TS
2013-03-04 09:14:14 +01:00
Stephen A. Zarkos b6fdb60ecf Fixed PCRE locale crash in Windows/TS 2013-03-04 09:09:45 +01:00
Pierre Joye 2024ff3b61 - add test for imagecropauto 2013-03-04 07:26:07 +01:00
Stanislav Malyshev b65d4d1cfc Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  rename NEWS back
  updated NEWS
2013-03-03 13:24:00 -08:00
Stanislav Malyshev 2578f7bcc0 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  rename NEWS back
  updated NEWS
2013-03-03 13:20:57 -08:00
Stanislav Malyshev 656fcb67f1 rename NEWS back 2013-03-03 13:18:58 -08:00
Anatol Belski a5b6a0a25b Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src:
  Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files.
  Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files.
  Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files.
2013-03-03 19:23:06 +01:00
Anatol Belski d95faef1a1 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4
* 'PHP-5.4' of git.php.net:php-src:
  Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files.
  Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files.
2013-03-03 19:22:35 +01:00
Anatol Belski fe2612d71e Merge branch 'PHP-5.3' of git.php.net:php-src into PHP-5.3
* 'PHP-5.3' of git.php.net:php-src:
  Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files.
2013-03-03 19:21:45 +01:00
Anatol Belski 555d584a40 updated NEWS 2013-03-03 19:16:36 +01:00
Anatol Belski b89c326578 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated NEWS
  This commit was manufactured by cvs2svn to create tag 'NEWS'.
2013-03-03 19:15:37 +01:00
Anatol Belski 00ecc12c0f updated NEWS 2013-03-03 19:14:50 +01:00
Anatol Belski faf14e9b2e Merge commit 'NEWS' into PHP-5.4
* commit 'NEWS':
  This commit was manufactured by cvs2svn to create tag 'NEWS'.
2013-03-03 19:14:17 +01:00
Anatol Belski e1023affc1 updated NEWS 2013-03-03 19:13:38 +01:00
Derick Rethans 1e1de1554f Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files. 2013-03-03 13:10:24 -05:00
Anatol Belski 1cda84a986 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  merged PCRE 8.32
2013-03-03 19:10:12 +01:00
Derick Rethans 47ac3ec1f4 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-03 13:10:07 -05:00
Derick Rethans 6c2564766f Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files. 2013-03-03 13:09:52 -05:00
Derick Rethans 206cce0d8b Merge branch 'PHP-5.3' into PHP-5.4 2013-03-03 13:09:31 -05:00
Derick Rethans b36df28dca Rename to create a NEWS file per version to fix the annoying merging issue with NEWS files. 2013-03-03 13:08:19 -05:00
Anatol Belski ca4a3e6138 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  merged PCRE 8.32
2013-03-03 19:07:49 +01:00
Anatol Belski 357ab3cbad merged PCRE 8.32
- defined HAVE_CONFIG_H to simplify the future merges
- PCRE NEWS http://pcre.org/news.txt
2013-03-03 19:06:22 +01:00
Derick Rethans c596850af6 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	NEWS
2013-03-03 12:58:42 -05:00
Derick Rethans a3f020a4be Merge branch 'PHP-5.3' into PHP-5.4 2013-03-03 12:53:23 -05:00
Derick Rethans c134f2a1a5 - Updated to version 2013.1 (2013a) 2013-03-03 12:53:22 -05:00
Pierre Joye 0a55c4b1dd - (s)rgb distance works way better for now, re enable threshold 2013-03-03 05:30:12 +01:00
Xinchen Hui 46e612ada4 Merge branch 'PHP-5.4' into PHP-5.5 2013-03-03 11:25:29 +08:00
Xinchen Hui fe5ce5cb91 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4 2013-03-03 11:25:08 +08:00
Xinchen Hui 9bda6a25a5 Fix test (skip on unable to create socket) 2013-03-03 11:24:45 +08:00
Xinchen Hui 2413fa6fbb Fix test after the convert_to_long be improved, see #64290 2013-03-03 11:13:52 +08:00
Xinchen Hui 505c6ca486 Fixed bug #64290 (behavior change of converting to long)
convert_to_long behavior has been improved
As Cataphrace said in IRC, the test should be fixed.
2013-03-03 10:59:15 +08:00
Xinchen Hui f2246f352f Fixed Bug #64340 (sockets tests failed) Patch by Reeze
Add __APPLE_USE_RFC_3542 for OS X 10.7 because IPv6 options are incompatible with RFC 2292.
2013-03-03 10:51:04 +08:00
Dmitry Stogov 68c265ce37 typo 2013-03-01 22:57:53 +04:00
Dmitry Stogov ecf0cbdf3b Fixed timestamp update on Phar contents modification. 2013-03-01 19:17:25 +04:00
Dmitry Stogov b6656d0ec9 Fixed timestamp update on Phar contents modification. 2013-03-01 19:17:08 +04:00
Pierre Joye 7698bc5735 - disable threshold for now, will enable it again using CIEDE2000 2013-03-01 08:10:49 +01:00
Dmitry Stogov 28cd079adb Added info anout zend_optimizerplus.mmap_base directice 2013-03-01 10:17:41 +04:00
Dmitry Stogov a91292c6e9 Merge branch 'master' of https://github.com/Tyrael/ZendOptimizerPlus into test 2013-03-01 10:03:59 +04:00
Dmitry Stogov aa1e91b130 Merge branch 'patch-1' of https://github.com/patrickallaert/ZendOptimizerPlus into test 2013-03-01 10:00:21 +04:00
Stanislav Malyshev 99b373da25 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.24-dev
  5.3.23RC1
2013-02-28 21:30:02 -08:00
Stanislav Malyshev 03dfa08da9 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  5.4.24-dev
  5.3.23RC1

Conflicts:
	configure.in
	main/php_version.h
2013-02-28 21:29:40 -08:00
Stanislav Malyshev 5c5bc7cf1b 5.4.24-dev 2013-02-28 21:25:36 -08:00
Stanislav Malyshev 8f533d2dfd 5.3.23RC1 2013-02-28 21:22:06 -08:00
Ferenc Kovacs 0a29c8de7a adding the package.xml for pecl 2013-02-28 22:38:09 +01:00
Pierre Joye 22aeb976e0 - add todo for threshold 2013-02-28 19:34:14 +01:00
Pierre Joye 0c32a18d4c - clean and enable threshold 2013-02-28 19:22:06 +01:00
Pierre Joye a991360344 - add image crop support 2013-02-28 17:24:23 +01:00
Patrick Allaert 171843a4e0 Fixed typo 2013-02-28 15:44:58 +01:00
Pierre Joye 82765a0780 - typo 2013-02-27 21:02:47 +01:00
Pierre Joye 74983a45cc - fix name for imageflip constants, consistent witht the other 2013-02-27 20:23:31 +01:00
Pierre Joye 03d0bf633d - add test 2013-02-27 20:22:45 +01:00
Pierre Joye 34adce6c47 - add constants for imageflip 2013-02-27 20:08:26 +01:00
Ilia Alshanetsky 23daa95d10 return false to be consistent 2013-02-27 13:54:56 -05:00
Ilia Alshanetsky 0039f160f2 Make the functions validate input parameters (or lack thereof) 2013-02-27 13:53:03 -05:00
Dmitry Stogov d39a49a534 Correction 2013-02-27 21:35:24 +04:00
Ilia Alshanetsky e1fb6ce365 Added missing calloc() result checks 2013-02-27 10:13:01 -05:00
Pierre Joye efffdb4d7f - add only once 2013-02-27 16:03:17 +01:00
Pierre Joye 98e43de7c5 - add new file for m4 as well 2013-02-27 16:02:54 +01:00
Pierre Joye fa940a60de - add image flip API support 2013-02-27 10:39:25 +01:00
Pierre Joye e6414140e6 - add image flip API support 2013-02-27 10:39:16 +01:00
Pierre Joye af5bf879aa - add image flip API support 2013-02-27 10:39:09 +01:00
Pierre Joye e26ea9df42 - add image flip API support 2013-02-27 10:38:55 +01:00
Pierre Joye 6a3623e199 - add image flip API support 2013-02-27 10:38:33 +01:00
Pierre Joye 246de922e6 - add image flip API support 2013-02-27 10:37:48 +01:00
Stanislav Malyshev 0d65a85cc0 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.4.13 branched, now it's 5.4.14

Conflicts:
	configure.in
	main/php_version.h
2013-02-26 22:26:36 -08:00
Stanislav Malyshev 31a6f8b7f4 5.4.13 branched, now it's 5.4.14 2013-02-26 22:25:33 -08:00
Stanislav Malyshev 84b65cf7ab Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add news for SOAP fixes
2013-02-26 22:20:50 -08:00
Stanislav Malyshev 7ffb77d243 add news for SOAP fixes 2013-02-26 22:20:21 -08:00
Stanislav Malyshev 207d0ee08a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Bug #52861: unset fails with ArrayObject and deep arrays
2013-02-26 22:13:01 -08:00
Stanislav Malyshev 7c08232509 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Bug #52861: unset fails with ArrayObject and deep arrays
2013-02-26 22:12:36 -08:00
Mike Willbanks 61099f8585 Bug #52861: unset fails with ArrayObject and deep arrays
When checking to make into a reference write, readwrite are checked but not unset
2013-02-26 22:11:52 -08:00
Dmitry Stogov a6e115e94e Fixed typo 2013-02-26 23:05:24 +04:00
Remi Collet 7a3933a93b Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  add support for ppc64p7 arch (Power7 optimized)
2013-02-26 14:35:47 +01:00
Remi Collet 52d1add0fe add support for ppc64p7 arch (Power7 optimized) 2013-02-26 14:35:34 +01:00
Dmitry Stogov 616214f929 Fixed build instruction 2013-02-26 11:26:51 +04:00
Dmitry Stogov 443a177b34 Emit the same error messages as without O+ (use "dups_fix" hack only for classes) 2013-02-26 01:34:11 +04:00
Dmitry Stogov a7a355c741 Fixed memory leaks (avoid generation of unused results) 2013-02-26 01:32:24 +04:00
Dmitry Stogov 70f1cd9dc5 Execute shared memory initialization/deinitialization under exclusive lock 2013-02-25 16:35:44 +04:00
Dmitry Stogov f463abc508 Fixed function prototypes 2013-02-25 16:06:38 +04:00
Dmitry Stogov 56baf17a17 Merge branch 'master' of https://github.com/laruence/ZendOptimizerPlus
Conflicts:
	Optimizer/block_pass.c
2013-02-25 14:55:27 +04:00
Dmitry Stogov cf102333a2 op_array->brk_count_array has to be kept even if op_array doesn't have BRK/CONT/GOTO opcodes.
It might be used to unlock "loop" or "switch" variable in case of exception.
2013-02-25 14:18:07 +04:00
Xinchen Hui 3da5b830c2 coding style improve 2013-02-25 15:29:54 +08:00
Xinchen Hui c58b899470 remove useless configure option 2013-02-25 14:45:03 +08:00
Dmitry Stogov ce69b86927 Ability to disable O+ per process (or process pool) 2013-02-25 10:35:59 +04:00
Dmitry Stogov 0c220d6fb3 Fixed build in a separate directory (Ilia Alshanetsky) 2013-02-25 10:04:03 +04:00
Dmitry Stogov 0d73c20d87 Fixed compilation, when compiling right into PHP (Ilia Alshanetsky) 2013-02-25 09:59:39 +04:00
Xinchen Hui e75804c34e Merge branch 'PHP-5.4' into PHP-5.5 2013-02-24 12:59:10 +08:00
Xinchen Hui d24ac6953e Merge branch 'PHP-5.3' into PHP-5.4
Conflicts:
	ext/spl/spl_fixedarray.c
2013-02-24 12:58:39 +08:00
Xinchen Hui 1b58bd39a6 Fixed bug #64264 (SPLFixedArray toArray problem) 2013-02-24 12:55:53 +08:00
Gustavo Lopes 59ec22b370 sendrecvmsg_shutdown function moved to mshutdown
The function php_socket_sendrecvmsg_shutdown() should have been called in
MSHUTDOWN, not RSHUTDOWN.

Bug only on TSRM builds.

Should fix bug #64287.
2013-02-24 03:50:38 +01:00
Gustavo Lopes 189fbfd53b Fix ext/sockets build with phpize
Fixes bug #64285
2013-02-24 00:49:25 +01:00
Gustavo Lopes 97f22702c4 Fix ext/intl build with phpize
Fixes bug #64284.
2013-02-24 00:49:01 +01:00
Gustavo Lopes fa3cb8608c NEWS for 8718755 2013-02-23 18:07:01 +01:00
Gustavo Lopes 12745594a4 Remove trailing whitespace; break long lines 2013-02-23 18:01:52 +01:00
Gustavo Lopes 8718755c9f Merge branch 'dval_to_lval' into PHP-5.5
* dval_to_lval:
  Fix rounding of zend_dval_to_lval
  Fix zend_dval_to_lval outside 64bit integers range
2013-02-23 17:59:28 +01:00
Gustavo Lopes a86fcfbc1d Fix rounding of zend_dval_to_lval
Now rounding is always towards zero; the rounding can be though as if
occurring on the original double. Only relevant for the 32-bit long
variant.
2013-02-23 16:55:50 +00:00
Gustavo Lopes 77566edbaf Fix zend_dval_to_lval outside 64bit integers range
PHP should preserve the least significant bits when casting from double
to long. Zend.m4 contains this:

AC_DEFINE([ZEND_DVAL_TO_LVAL_CAST_OK], 1, [Define if double cast to long preserves least significant bits])

If ZEND_DVAL_TO_LVAL_CAST_OK is not defined, zend_operators.h had an
inline implementation of zend_dval_to_lval() that would do a cast to an
int64_t (when sizeof(long) == 4), then a cast to unsigned long and
finally the cast to long.

While this works well for doubles inside the range of values of the type
used in the first cast (int64_t in the 32-bit version and unsigned long
in the 64-bit version), if outside the range, it is undefined behavior
that WILL give varying and not particularly useful results.

This commit uses fmod() to first put the double in a range that can
safely be cast to unsigned long and then casts this unsigned long to
long. This last cast is implementation defined, but it's very likely
that this gives the expected result (i.e. the internal 2's complement
representation is unchanged) on all platforms that PHP supports. In any
case, the previous implementationa already had this assumption.

This alternative code path is indeed significantly slower than simply
casting the double (almost an order of magnitude), but that should not
matter because casting doubles with a very high absolute value is a
rare event.
2013-02-23 17:23:49 +01:00
Xinchen Hui a1afc0a139 Simplify the install instructions 2013-02-23 15:34:10 +08:00
Dmitry Stogov a9910f3ce2 white spaces 2013-02-22 18:09:26 +04:00
Dmitry Stogov 4fe4b0d593 Fixed memory leak 2013-02-22 17:22:43 +04:00
Dmitry Stogov f2e8465017 Fixed memory leak 2013-02-22 17:10:34 +04:00
Andrey Hristov 64a2a8a753 relax the check 2013-02-22 13:50:04 +01:00
Andrey Hristov 1643d4ed56 Add some parameter checks 2013-02-22 13:17:46 +01:00
Dmitry Stogov 56818541c7 Started Test Suite 2013-02-22 14:06:02 +04:00
Dmitry Stogov f1b76342d8 We build a zend_extension (not a regular PHP module). 2013-02-22 13:38:32 +04:00
Xinchen Hui cddc2c35d9 Codes style improve 2013-02-22 14:56:05 +08:00
Johannes Schlüter b479c2bffb Merge branch 'PHP-5.4' into PHP-5.5 2013-02-21 16:50:59 +01:00
Johannes Schlüter 064c62e4cf Fix #60840 (undefined symbol: mysqlnd_debug_std_no_trace_funcs) 2013-02-21 16:49:28 +01:00
Johannes Schlüter 7b719235b3 Merge branch 'PHP-5.4' into PHP-5.5 2013-02-21 15:10:47 +01:00
Johannes Schlüter 1e9bc56775 Merge branch 'PHP-5.3' into PHP-5.4 2013-02-21 15:10:15 +01:00
Johannes Schlüter fcd4b5335a Fix TSRM (after afc1debb) 2013-02-21 15:08:58 +01:00
Dmitry Stogov 8b7222e22f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  PHAR should modify entry timestamp when it's modified
2013-02-21 16:08:07 +04:00
Dmitry Stogov b5d267aa95 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  PHAR should modify entry timestamp when it's modified
2013-02-21 15:57:26 +04:00
Dmitry Stogov 7b113d789d PHAR should modify entry timestamp when it's modified 2013-02-21 15:55:20 +04:00
Sara Golemon ead2e1708d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  http-stream test requires network connectivity
2013-02-21 03:22:09 -08:00
Sara Golemon c16d6befd4 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  http-stream test requires network connectivity
2013-02-21 03:21:49 -08:00
Sara Golemon bc55a8eb9f http-stream test requires network connectivity 2013-02-21 03:21:23 -08:00
Xinchen Hui f39d12c821 Merge branch 'PHP-5.4' into PHP-5.5 2013-02-21 18:20:48 +08:00
Xinchen Hui 9a44a9806c Fixed bug #64235 (Insteadof not work for class method in 5.4.11)
As we discussed with stefan, we think previous of allowing use with
classes is a bug, should be forbided, anyway, the error message should
be improved.
2013-02-21 18:18:41 +08:00
Anatol Belski 22ae9efe6e added back the older vc9 favours 2013-02-21 10:59:50 +01:00
Anatol Belski 27f8944eaa updated lib versions 2013-02-21 10:32:56 +01:00
Anatol Belski 5ec06a1e5a Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  updated lib versions
  updated lib versions
2013-02-21 10:29:55 +01:00
Anatol Belski bae95bd9d4 updated lib versions 2013-02-21 10:27:37 +01:00
Anatol Belski 07a13fd9fa Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  updated lib versions
2013-02-21 10:26:38 +01:00
Stanislav Malyshev 76160319a5 news for bug #49348 2013-02-21 00:56:00 -08:00
Stanislav Malyshev d39554ac08 Merge branch 'bug49348' into PHP-5.5
* bug49348:
  fix tests
  fix bug #49348 - issue notice on get_property_ptr_ptr when used for read
2013-02-21 00:52:46 -08:00
Anatol Belski 81e9aa6c8d updated lib versions 2013-02-21 09:46:50 +01:00
Dmitry Stogov 3a06991ffd Added ability to always validate cached script timestamps using zend_optimizerplus.revalidate_freq=0 2013-02-21 12:11:03 +04:00
Dmitry Stogov 20c623c9be Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed external entity loading
2013-02-20 22:30:59 +04:00
Dmitry Stogov c737b89473 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed external entity loading

Conflicts:
	ext/libxml/libxml.c
	ext/libxml/php_libxml.h
2013-02-20 22:27:41 +04:00
Dmitry Stogov 8e76d0404b Fixed external entity loading 2013-02-20 22:14:59 +04:00
Dmitry Stogov 280bbaf301 Avoid unexpected warning messages (ext/standard/tests/file/fopencookie.phpt) 2013-02-20 18:04:07 +04:00
Johannes Schlüter b157e05f57 Merge branch 'PHP-5.4' into PHP-5.5 2013-02-20 11:58:01 +01:00
Johannes Schlüter 021f57ef0e Merge branch 'PHP-5.3' into PHP-5.4 2013-02-20 11:57:11 +01:00
Johannes Schlüter afc1debb2f 5.3.22 NEWS 2013-02-20 11:56:29 +01:00
Dmitry Stogov b95964535c Fixed compilation error 2013-02-20 11:21:15 +04:00
David Soria Parra 7e5f761e82 Start new NEWS section for beta1 2013-02-19 19:42:27 +01:00
David Soria Parra a4bcc15c3b News for PHP 5.5.0 Alpha 5 2013-02-19 19:41:46 +01:00
Dmitry Stogov 1fcdd25e83 Added check for calloc() failure 2013-02-19 18:21:31 +04:00
Dmitry Stogov 6ee2602317 Simplification 2013-02-19 18:15:11 +04:00
Dmitry Stogov 4813a71174 Fixed static analyser warning 2013-02-19 18:07:23 +04:00
Dmitry Stogov 3af305cc50 Removed redundand TSRMLS_FETCH() 2013-02-19 18:04:40 +04:00
Dmitry Stogov 2d87dce1ed Avoid buffer overrun 2013-02-19 18:00:49 +04:00
Anatol Belski 43664e656d Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix the test for curl 7.29.0+
2013-02-19 09:05:27 +01:00
Anatol Belski cc34dfce16 Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix the test for curl 7.29.0+
2013-02-19 09:04:52 +01:00
Anatol Belski 558c5dbe65 fix the test for curl 7.29.0+ 2013-02-19 09:04:06 +01:00
Stanislav Malyshev dc6f073ce9 fix tests 2013-02-18 23:01:42 -08:00
Stanislav Malyshev 0c6d903ce7 fix bug #49348 - issue notice on get_property_ptr_ptr when used for read 2013-02-18 20:56:02 -08:00
Dmitry Stogov 511b33ccdf Avoid warning about possible precision loss 2013-02-18 13:27:42 +04:00
Dmitry Stogov 40107aa6da Use proper format specifier 2013-02-18 13:19:24 +04:00
Dmitry Stogov 53d4abb16c Avoid static analyzer warning 2013-02-18 13:13:25 +04:00
Dmitry Stogov f18678bbcf Fixed signed/unsigned comparison warnings 2013-02-18 13:03:29 +04:00
Dmitry Stogov e708dce674 Lenght is unsigned 2013-02-18 12:42:56 +04:00
Dmitry Stogov d9ba147e5c Avoid mixing declarations and code 2013-02-18 12:33:58 +04:00
Dmitry Stogov a120178520 Added checks for malloc() failures 2013-02-18 11:34:10 +04:00
Dmitry Stogov 6d999b4379 Added check for CreateMutex() failure 2013-02-18 11:12:20 +04:00
Dmitry Stogov 908fc9dcc4 Fixed inconsistent start_accel_module() prototype and usage 2013-02-18 11:04:58 +04:00
krakjoe 996485e0b2 bug #29 enable cli-server support 2013-02-17 15:48:31 +00:00
Dmitry Stogov 2b6eede1d3 Fixed warning about uninitialized variable (actually, it doesn't have to be initialized). 2013-02-15 18:06:48 +04:00
Dmitry Stogov 6693f1854d Wrong value 2013-02-15 17:59:36 +04:00
Dmitry Stogov bee06002d0 Fixed possible resource leak 2013-02-15 17:46:38 +04:00
Dmitry Stogov 4c97b6c8cf "locked" must be a "module" global (local to thread) 2013-02-15 17:35:58 +04:00
Dmitry Stogov d70ed26aaa Added ZTS lock 2013-02-15 15:08:51 +04:00
Dmitry Stogov bde294f8eb Renamed ZCG(startup_ok) into "accel_startup_ok".
It must be a "true" global to make ZTS work.
(ZTS starts work, but ZTS O+ is not stable anyway)
2013-02-15 13:45:42 +04:00
Dmitry Stogov f579ef5abe Merge branch 'patch-1' of https://github.com/reeze/ZendOptimizerPlus 2013-02-15 10:51:29 +04:00
Reeze Xia 4fec381b3a Typo fix 2013-02-15 13:48:37 +08:00
Daniel Gimenes ddbe1b66ed Fix typo in README 2013-02-15 00:00:40 -02:00
Dmitry Stogov aef92d22d5 Fixed compatibility with 5.2 and 5.3 2013-02-14 18:36:07 +04:00
Dmitry Stogov 5cd7c77545 Added Xdebug compatibility note 2013-02-14 18:20:34 +04:00
Dmitry Stogov d8b84d9f80 Merge branch 'master' of https://github.com/thomasbley/ZendOptimizerPlus 2013-02-14 16:15:55 +04:00
Dmitry Stogov a84b588208 Merge branch 'issue-ini' of https://github.com/remicollet/ZendOptimizerPlus 2013-02-14 16:03:32 +04:00
Thomas Bley a9ff713a56 phpize is already in README 2013-02-14 12:44:07 +01:00
Thomas Bley f0aa77a44d Update README 2013-02-14 12:24:48 +01:00
Thomas Bley 8eb38dacac added travis-ci config (make + load extension) 2013-02-14 12:20:50 +01:00
Dmitry Stogov ded12158cc Fixed phpinfo() output when O+ is not enabled for CLI 2013-02-14 13:19:06 +04:00
Dmitry Stogov 91e775df1b Disabled unsafe optimization pattern 2013-02-14 13:06:30 +04:00
Remi Collet 071ab3cf37 also add load_comments 2013-02-14 09:24:11 +01:00
Remi Collet 92df8e208f missing directives in accelerator_get_configuration 2013-02-14 09:21:45 +01:00
Remi Collet d30b985015 missing directive in README (need doc) 2013-02-14 09:21:45 +01:00
Dmitry Stogov afb43f5650 - Added zend_optimizerplus.load_comments configuration durective, so "Doc comments" may be always stored in SHM, but
restored only by applicaions that really need them.
- Added note, that zend_optimizerplus.save_comments is dangerous and may break applications and frameworks.
2013-02-14 11:59:23 +04:00
Dmitry Stogov 4bc28ae783 Revert renaming (md needs additional formatting tags) 2013-02-14 11:13:51 +04:00
Dmitry Stogov 37de7567b1 Renamed README into README.md 2013-02-14 11:09:36 +04:00
Dmitry Stogov 30ea6e100e Merge branch 'master' of https://github.com/johnl/ZendOptimizerPlus 2013-02-14 11:04:37 +04:00
Dmitry Stogov 54a90b691f Don't completely delete the "enabled condition". 2013-02-14 11:00:04 +04:00
Dmitry Stogov 18904d18c7 Merge branch 'master' of https://github.com/adoy/ZendOptimizerPlus 2013-02-14 10:57:59 +04:00
Dmitry Stogov abb7788093 Merge branch 'master' of https://github.com/pierrejoye/ZendOptimizerPlus 2013-02-14 10:43:50 +04:00
Pierre Joye dfcd77341d - nuke unused variable 2013-02-14 07:41:18 +01:00
Dmitry Stogov 219decd8ec This is a development version yet 2013-02-14 10:38:20 +04:00
Pierre Joye f74c938c95 - fix windows build 2013-02-14 07:24:26 +01:00
Dmitry Stogov 44f892080d Merge branch 'patch-1' of https://github.com/raziel057/ZendOptimizerPlus 2013-02-14 10:07:39 +04:00
Dmitry Stogov bfcbe7849b Avoid compilation of unsupported SHM backends 2013-02-14 10:01:29 +04:00
Pierrick Charron 30c3a59668 Avoid unnecessary code and change the type of accelerator_enabled
accelerator_enabled will always be true when accelerator_get_status
returns an array. Also the accelerator_enabled should be a boolean
and not a long
2013-02-13 14:25:38 -05:00
Thomas Lallement 8847f9107b Fix typo 2013-02-13 19:56:44 +01:00
John Leach 54da28b015 Added LICENSE from http://www.php.net/license/3_01.txt
Closes #2
2013-02-13 18:47:31 +00:00
Dmitry Stogov 7334835143 Fixed zend_optimizerplus.enable_file_override=1 compatibility with PHP-5.3 2013-02-13 21:41:07 +04:00
sasezaki 2ba47175cf typo at Optimizer/block_pass.c 2013-02-14 00:48:18 +09:00
Damien Tournoud 7c0e3ccdb6 Fix typos and grammar issues in README. 2013-02-13 16:08:19 +01:00
Dmitry Stogov aafc1456b0 spelling 2013-02-13 16:33:14 +04:00
Dmitry Stogov 528006a3b4 Open Source Release 2013-02-13 16:26:47 +04:00
Ben Ramsey 3439a098a0 array_column: Removed array_pluck() alias 2013-01-14 10:04:14 -06:00
Ben Ramsey a1876b6846 array_column: Set array_pluck as an alias for array_column 2013-01-11 17:09:34 -06:00
Ben Ramsey 5bc2854b37 array_column: Implement ability to specify an index column 2013-01-11 16:58:31 -06:00
Ben Ramsey 94d5b2519a Cleaning up a memory leak. 2013-01-11 14:16:20 -06:00
Ben Ramsey 20ab30339d array_column: Adding test for IS_OBJECT and converting object to string 2013-01-11 14:16:19 -06:00
Ben Ramsey 66a02eb25e array_column: Using add_next_index_zval() at nikic's recommendation. 2013-01-11 14:16:19 -06:00
Ben Ramsey 5f6b20a44d array_column: Improved tests 2013-01-11 14:16:19 -06:00
Ben Ramsey e921d28ae3 array_column: Cleaning up, as recommended in pull request #56 comments 2013-01-11 14:16:19 -06:00
Ben Ramsey 10da6f00b8 Fixing typo in test for array_column() 2013-01-11 14:16:19 -06:00
Ben Ramsey 6a27b890e6 Simplify the code and use zend_hash_next_index_insert() 2013-01-11 14:16:19 -06:00
Ben Ramsey dc4dfe8ae0 Adding test for columns not present in all rows for array_column(). 2013-01-11 14:16:19 -06:00
Ben Ramsey a811e5b6f7 Adding tests for the negative results of array_column() 2013-01-11 14:16:19 -06:00
Ben Ramsey 9035a1ed24 Implement new array function array_column()
array_column() returns the values of the specified column from a
multi-dimensional array.
2013-01-11 14:16:19 -06:00
Leigh 6809c388b5 Tests, fixes and optimisations
* Amended existing tests to cater for new functionality.
* Implemented fixes and optimisations recommended by NikiC
* Added create_sid to the registered interface. This was breaking
tests. It also now breaks BC for people implementing the interface
directly instead of extending the class.
2012-06-26 14:57:10 +01:00
Leigh 59cf3a2404 Add create_sid to session_set_save_handler and SessionHandler
A lot of code already existed to allow a custom create_sid handler, but
lacked a specific implementation.

Therefore I have added a 7th (optional) argument
session_set_save_handler, to allow a user function to be supplied for
session id generation.

If a create_sid function is not supplied, the default function is
called in its absence to preserve backwards compatibility.

Likewise create_sid only added to SessionHandler class, and not the
interface to maintain backwards compatibility. If the result is not
overridden, the default is called.
2012-06-15 15:06:47 +01:00
SVN Migration 3e94ce6a97 This commit was manufactured by cvs2svn to create tag 'NEWS'. 2008-12-19 02:13:42 +00:00
1246 changed files with 158817 additions and 94579 deletions

No files matched your search

+2
View File
@@ -23,6 +23,8 @@ sapi/continuity/capi.c ident
Zend/RFCs/002.txt ident
Zend/RFCs/003.txt ident
NEWS merge=NEWS
UPGRADING merge=NEWS
UPGRADING.INTERNALS merge=NEWS
/ext/bz2/tests/with_strings.phpt -crlf
/ext/dom/tests/bug40836.phpt -crlf
/ext/dom/tests/domelement.phpt -crlf
+2 -2
View File
@@ -8,7 +8,7 @@ notifications:
email: false
env:
- REPORT_EXIT_STATUS=1 TEST_PHP_EXECUTABLE=./sapi/cli/php
- REPORT_EXIT_STATUS=1
before_script:
# Compile PHP
@@ -21,4 +21,4 @@ before_script:
- . ./travis/ext/pdo_pgsql/setup.sh
# Run PHPs run-tests.php
script: ./sapi/cli/php run-tests.php -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP"
script: ./sapi/cli/php run-tests.php -p `pwd`/sapi/cli/php -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --show-diff
+2 -2
View File
@@ -147,7 +147,7 @@ STATUS: Working
COMMENT: Tested on phpts and isapi versions
-------------------------------------------------------------------------------
EXTENSION: mysql
PRIMARY MAINTAINER: Zak Greant <zak@mysql.com>, Georg Richter <georg@php.net>, Johannes Schlüter <johannes@php.net>, Ulf Wendel <uw@php.net>
PRIMARY MAINTAINER: Zak Greant <zak@mysql.com>, Georg Richter <georg@php.net>, Andrey Hristov <andrey@php.net>, Johannes Schlüter <johannes@php.net>, Ulf Wendel <uw@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
@@ -158,7 +158,7 @@ STATUS: Working
SINCE: 5.0
-------------------------------------------------------------------------------
EXTENSION: mysqlnd
PRIMARY MAINTAINER: Georg Richter <georg@php.net>, Andrey Hristov <andrey@php.net>, Johannes Schlüter <johannes@php.net>, Ulf Wendel <uw@php.net>
PRIMARY MAINTAINER: Andrey Hristov <andrey@php.net>, Johannes Schlüter <johannes@php.net>, Ulf Wendel <uw@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.3
+2 -2
View File
@@ -1819,7 +1819,7 @@ Installation
set of HTTP headers. The headers it did return are:
10. Windows: I've followed all the instructions, but still can't get
PHP and IIS to work together!
11. When running PHP as CGI with IIS, PWS, OmniHTTPD or Xitami, I get
11. When running PHP as CGI with IIS, OmniHTTPD or Xitami, I get
the following error: Security Alert! PHP CGI cannot be accessed
directly..
12. How do I know if my php.ini is being found and read? It seems like
@@ -2007,7 +2007,7 @@ cgi error:
And for IIS4 you need to tell it that PHP is a script engine.
Also, you will want to read this faq.
When running PHP as CGI with IIS, PWS, OmniHTTPD or Xitami, I get the
When running PHP as CGI with IIS, OmniHTTPD or Xitami, I get the
following error: Security Alert! PHP CGI cannot be accessed
directly..
You must set the cgi.force_redirect directive to 0. It defaults
+1 -1
View File
@@ -14,7 +14,7 @@ php_lcov.info: lcov-test
@rm -rf lcov_data/
@$(mkinstalldirs) lcov_data/
@echo
-@files=`find . -name \*.gcda -o -name \*.gcno -o -name \*.da -o -name \*.h | sed -e 's/^\.\///' | sed -e 's/\.gcda//g' -e 's/\.gcno//g' -e 's/\.da//g' | $(EGREP) $(LCOV_INCLUDE) | uniq` ;\
-@files=`find . -name \*.gcda -o -name \*.gcno -o -name \*.da -o -name \*.c -o -name \*.h | sed -e 's/^\.\///' | sed -e 's/\.gcda//g' -e 's/\.gcno//g' -e 's/\.da//g' | $(EGREP) $(LCOV_INCLUDE) | uniq` ;\
for x in $$files; do \
echo -n . ;\
y=`echo $$x | sed -e 's!\.libs/!!'`; \
+12 -3
View File
@@ -10,7 +10,7 @@ all: $(all_targets)
@echo "Build complete."
@echo "Don't forget to run 'make test'."
@echo
build-modules: $(PHP_MODULES) $(PHP_ZEND_EX)
build-binaries: $(PHP_BINARIES)
@@ -115,10 +115,19 @@ clean:
find . -name \*.la -o -name \*.a | xargs rm -f
find . -name \*.so | xargs rm -f
find . -name .libs -a -type d|xargs rm -rf
rm -f libphp$(PHP_MAJOR_VERSION).la $(SAPI_CLI_PATH) $(OVERALL_TARGET) modules/* libs/*
rm -f libphp$(PHP_MAJOR_VERSION).la $(SAPI_CLI_PATH) $(SAPI_CGI_PATH) $(SAPI_MILTER_PATH) $(SAPI_LITESPEED_PATH) $(SAPI_FPM_PATH) $(OVERALL_TARGET) modules/* libs/*
distclean: clean
rm -f Makefile config.cache config.log config.status Makefile.objects Makefile.fragments libtool main/php_config.h stamp-h sapi/apache/libphp$(PHP_MAJOR_VERSION).module buildmk.stamp
rm -f Makefile config.cache config.log config.status Makefile.objects Makefile.fragments libtool main/php_config.h main/internal_functions_cli.c main/internal_functions.c stamp-h sapi/apache/libphp$(PHP_MAJOR_VERSION).module sapi/apache_hooks/libphp$(PHP_MAJOR_VERSION).module buildmk.stamp Zend/zend_dtrace_gen.h Zend/zend_dtrace_gen.h.bak Zend/zend_config.h TSRM/tsrm_config.h
rm -f php5.spec main/build-defs.h scripts/phpize
rm -f ext/date/lib/timelib_config.h ext/mbstring/oniguruma/config.h ext/mbstring/libmbfl/config.h ext/mysqlnd/php_mysqlnd_config.h
rm -f scripts/man1/phpize.1 scripts/php-config scripts/man1/php-config.1 sapi/cli/php.1 sapi/cgi/php-cgi.1 ext/phar/phar.1 ext/phar/phar.phar.1
rm -f sapi/fpm/php-fpm.conf sapi/fpm/init.d.php-fpm sapi/fpm/php-fpm.service sapi/fpm/php-fpm.8 sapi/fpm/status.html
rm -f ext/iconv/php_have_bsd_iconv.h ext/iconv/php_have_glibc_iconv.h ext/iconv/php_have_ibm_iconv.h ext/iconv/php_have_iconv.h ext/iconv/php_have_libiconv.h ext/iconv/php_iconv_aliased_libiconv.h ext/iconv/php_iconv_supports_errno.h ext/iconv/php_php_iconv_h_path.h ext/iconv/php_php_iconv_impl.h
rm -f ext/phar/phar.phar ext/phar/phar.php
if test "$(srcdir)" != "$(builddir)"; then \
rm -f ext/phar/phar/phar.inc; \
fi
$(EGREP) define'.*include/php' $(top_srcdir)/configure | $(SED) 's/.*>//'|xargs rm -f
.PHONY: all clean install distclean test
+8404 -158
View File
File diff suppressed because it is too large. Load diff
+6 -5
View File
@@ -45,15 +45,16 @@ Currently we have the following branches in use::
master The active development branch.
PHP-5.5 Is used to release the PHP 5.5.x series. It allows for larger
enhancements.
PHP-5.4 Is used to release the PHP 5.4.x series. This is current
PHP-5.5 Is used to release the PHP 5.5.x series. This is a current
stable version and is open for bugfixes only.
PHP-5.3 Is used to release the PHP 5.3.x series. This is current
PHP-5.4 Is used to release the PHP 5.4.x series. This is a current
stable version and is open for bugfixes only.
PHP-5.3 Is used to release the PHP 5.3.x series. This is currently
in extended support and open forsecurity fixes only. Triaged
via security@php.net
PHP-5.2 This branch is closed.
PHP-5.1 This branch is closed.
+1 -1
View File
@@ -43,7 +43,7 @@ See also https://wiki.php.net/rfc/zpp_improv#expose_zend_parse_arg_as_zend_parse
Type specifiers
---------------
The following list shows the type specifier, its meaning and the parameter
types that need to be passed by address. All passed paramaters are set
types that need to be passed by address. All passed parameters are set
if the PHP parameter is non optional and untouched if optional and the
parameter is not present. The only exception is O where the zend_class_entry*
has to be provided on input and is used to verify the PHP parameter is an
+17 -2
View File
@@ -64,7 +64,8 @@ Do not use abbreviations for alpha and beta.
``git push --tags origin HEAD``
8. run: ``./makedist 5.4.2RC2``, this will export the tree, create configure
and build three tarballs (gz,bz2 and xz).
and build three tarballs (gz,bz2 and xz). Make sure you use the same GNU Bison
version as snaps. Recent bison version are known to break ZTS.
9. Copy those three tarballs to www.php.net, in your homedir there should be a
directory "downloads/". Copy them into there, so that the system can generate
@@ -77,6 +78,9 @@ f.e. http://downloads.php.net/derick/
(internals-win@lists.php.net) so that Windows binaries can be created. Once
those are made, they should be placed into the same directory as the source snapshots.
12. Notify the documentation team if documentations for new features are
not yet available but a stable release is imminent.
Getting the non stable release (alpha/beta/RC) announced
--------------------------------------------------------
@@ -154,7 +158,15 @@ origin <branch>``".
11. run: ``./makedist php 5.4.1``, this will export the tree, create configure
and build two tarballs (one gz and one bz2).
12. Commit those two tarballs to Git (php-distributions.git)
12. Commit those two tarballs to web/php-distributions.git, then update the git
submodule reference in web/php.git:
git submodule init;
git submodule update;
cd distributions;
git pull origin master;
cd ..;
git commit distributions;
git push;
13. Once the release has been tagged, contact the PHP Windows development team
(internals-win@lists.php.net) so that Windows binaries can be created. Once
@@ -165,6 +177,9 @@ those are made, they should be committed to SVN too.
15. When making a final release, also remind the PHP Windows development team
(internals-win@lists.php.net) to prepare the installer packages for Win32.
16. Make sure proper documentation exists for all new features/changes.
Coordinate the release with the PHP Documentation team.
Getting the stable release announced
------------------------------------
+1 -1
View File
@@ -1,6 +1,6 @@
[IMPORTANT NOTICE]
------------------
Failed tests usualy indicate a problem with your local system setup
Failed tests usually indicate a problem with your local system setup
and not within PHP itself (at least for official PHP release versions).
You may decide to automaticaly submit a test summary to our QA workflow
at the end of a test run.
+5 -3
View File
@@ -625,7 +625,7 @@ TSRM_API int shmget(int key, int size, int flags)
shm->info = info_handle;
shm->descriptor = MapViewOfFileEx(shm->info, FILE_MAP_ALL_ACCESS, 0, 0, 0, NULL);
if (created) {
if (NULL != shm->descriptor && created) {
shm->descriptor->shm_perm.key = key;
shm->descriptor->shm_segsz = size;
shm->descriptor->shm_ctime = time(NULL);
@@ -639,8 +639,10 @@ TSRM_API int shmget(int key, int size, int flags)
shm->descriptor->shm_perm.mode = shm->descriptor->shm_perm.seq = 0;
}
if (shm->descriptor->shm_perm.key != key || size > shm->descriptor->shm_segsz ) {
CloseHandle(shm->segment);
if (NULL != shm->descriptor && (shm->descriptor->shm_perm.key != key || size > shm->descriptor->shm_segsz)) {
if (NULL != shm->segment) {
CloseHandle(shm->segment);
}
UnmapViewOfFile(shm->descriptor);
CloseHandle(shm->info);
return -1;
+265 -119
View File
@@ -2,16 +2,16 @@ $Id$
PHP 5.5 UPGRADE NOTES
1. Backward Incompatible Changes
2. New Features
2. Changes in SAPI modules
3. Deprecated Functionality
4. Changed Functions
5. New Functions
6. New Classes and Interfaces
7. Removed Extensions
8. Other Changes to Extensions
9. New Global Constants
1. Backward Incompatible Changes
2. New Features
2. Changes in SAPI modules
3. Deprecated Functionality
4. Changed Functions
5. New Functions
6. New Classes and Interfaces
7. Removed Extensions
8. Other Changes to Extensions
9. New Global Constants
10. Changes to INI File Handling
11. Windows Support
12. Other Changes
@@ -21,150 +21,177 @@ PHP 5.5 UPGRADE NOTES
1. Backward Incompatible Changes
========================================
- Drop Windows XP and 2003 support. (Pierre)
- All internal case insensitivity handling for class, function and constant
names is done according to ASCII rules, current locale settings are ignored.
- Dropped Windows XP and 2003 support. (Pierre)
- All internal case insensitivity handling for class, function and constant
names is done according to ASCII rules. Current locale settings are ignored.
- self, parent & static keywords now are always case-insensitive (see bug
#60833).
- php_logo_guid(), php_egg_logo_guid(), php_real_logo_guid() and
zend_logo_guid() have been removed
- Removal of Logo GUIDs
- extensions can't override zend_execute() any more, they should override
zend_execute_ex() instead. The EG(current_execute_data) is already
initialized in zend_execute_ex(), so for compatibility extensions
may need to use EG(current_execute_data)->prev_execute_data instead.
- removed EG(arg_types_stack), EX(fbc), EX(called_scope), EX(current_object)
- added op_array->nested_calls. It's calculated at compile time.
- added EX(call_slots). It is an array to store information about syntaticaly
nested calls (e.g. foo(bar())). It's preallocated together with execute_data.
- added EX(call) - pointer to a current calling function. Actually an
element of EX(call_slots)
- opcodes INIT_METHOD_CALL, ZEND_INIT_STATIC_METHOD_CALL,
ZEND_INIT_FCALL_BY_NAME, ZEND_INIT_NS_FCALL_BY_NAME use result.num as
an index in EX(call_slots)
- opcode ZEND_NEW uses extended_vallue as an index in EX(call_slots)
- opcoes ZEND_DO_FCALL and ZEND_DO_FCALL_BY_NAME use op2.num as
an index in EX(call_slots)
- added op_array->used_stack. It's calculated at compile time and the
corresponding stack space is preallocated together with execute_data.
ZEND_SEND* and ZEND_DO_FCALL* don't need to check for stack overflow
anymore.
- Removed execute_data->Ts field. The VM temporary variables always allocated
immediately before execute_data structure. Now they are accessed by offset
from the execute_data base pointer (instead of execute_data->Ts). Compiler
stores new offsets in op_array->opcodes[*].op?.num. You can use macros
EX_TMP_VAR() and EX_TMP_VAR_NUM() to access temp_variable by offset or
number. You can convert number to offset using EX_TMP_VAR_NUM(0, num) or
offset to number (EX_TMP_VAR_NUM(0,0)-EX_TMP_VAR(0,offset)).
- Removed execute_data->CVs field. The VM compiled variables always allocated
immediately after execute_data structure. Now they are accessed by offset
from the execute_data base pointer (instead of execute_data->CVs). You can
use macros EX_CV_NUM() to access compiled variables by number.
- Removed Logo GUIDs: php_logo_guid(), php_egg_logo_guid(),
php_real_logo_guid() and zend_logo_guid()
========================================
2. New Features
========================================
- Support list in foreach. (Laruence)
(wiki.php.net/rfc/foreachlist)
- Support finally keyword. (Laruence)
(wiki.php.net/rfc/finally)
(http://php.net/foreach#control-structures.foreach.list,
http://wiki.php.net/rfc/foreachlist)
- Support "finally" keyword. (Laruence)
(http://php.net/exceptions, http://wiki.php.net/rfc/finally)
- Support constant array/string dereferencing. (Laruence)
(https://wiki.php.net/rfc/constdereference)
(http://php.net/manual/en/language.types.array.php,
https://wiki.php.net/rfc/constdereference)
- Add support for using empty() on the result of function calls and
other expressions. Thus it is now possible to write empty(getArray()),
for example. (https://wiki.php.net/rfc/empty_isset_exprs)
for example. (http://php.net/manual/en/function.empty.php,
https://wiki.php.net/rfc/empty_isset_exprs)
- Added generators.
(https://wiki.php.net/rfc/generators)
- ClassName::class syntax returning full class name for a class as
a string constant. (https://wiki.php.net/rfc/class_name_scalars)
(http://php.net/generators, https://wiki.php.net/rfc/generators)
- ClassName::class syntax returning full class name for a class as a
string constant. (http://php.net/oop5.basic,
https://wiki.php.net/rfc/class_name_scalars)
- Added support for non-scalar Iterator keys in foreach.
(http://php.net/manual/en/control-structures.foreach.php,
https://wiki.php.net/rfc/foreach-non-scalar-keys).
- Bundled Zend OPcache extension to improve performance
(http://php.net/manual/en/book.opcache.php,
https://wiki.php.net/rfc/optimizerplus)
- Added a simplified password hashing API
(http://php.net/password, https://wiki.php.net/rfc/password_hash)
========================================
2. Changes in SAPI modules
========================================
- Support for changing the process's title in CLI/CLI-Server
SAPIs. (Keyur)
(http://php.net/manual/en/function.cli-set-process-title.php,
http://php.net/manual/en/function.cli-get-process-title.php,
https://wiki.php.net/rfc/cli_process_title)
- Support for systemd in php-fpm: Add --with-fpm-systemd option to
report health to systemd, and add systemd_interval option to
configure this. The service can now use Type=notify in the systemd
unit file. (Remi)
========================================
3. Deprecated Functionality
========================================
- The original MySQL extension is now deprecated, and will generate deprecation
warnings when connecting to a database through mysql_connect(),
mysql_pconnect() or by establishing an implicit connection. Use MySQLi or PDO
instead.
- The original MySQL extension is now deprecated and will generate
deprecation warnings when connecting to a database through
mysql_connect(), mysql_pconnect() or by establishing an implicit
connection. Use MySQLi or PDO instead.
- The preg_replace /e modifier is now deprecated. Use
preg_replace_callback instead.
(https://wiki.php.net/rfc/remove_preg_replace_eval_modifier)
- IntlDateFormatter::setTimeZoneID() and datefmt_set_timezone_id() are
deprecated. Use IntlDateFormatter::setTimeZone() or datefmt_set_timezone()
instead.
deprecated. Use IntlDateFormatter::setTimeZone() or
datefmt_set_timezone() instead.
- mcrypt_ecb(), mcrypt_cbc(), mcrypt_cfb() and mcrypt_ofb() now throw
E_DEPRECATED. Their use was already previously discouraged in the docs,
but that predated the existence of E_DEPRECATED.
E_DEPRECATED. Their use was already previously discouraged in the
documentation, but that predated the existence of E_DEPRECATED.
========================================
4. Changed Functions
========================================
- pack()/unpack() had the following changes, which bring it more in line
with Perl's behavior:
- Implemented format character "Z": NULL padded string, with trailing NULL
bytes removed.
- Changed format character "a": this no longer removes trailing NULL bytes.
- Changed format character "A": all trailing ASCII whitespace is now removed
(defined as spaces, tabs, \r, \n and NULL).
- MessageFormatter::format() and related functions now accepted named arguments
and mixed numeric/named arguments in ICU 4.8+.
- MessageFormatter::format() and related functions now don't error out when
an insufficient argument count is provided. Instead, the placeholders will
remain unsubstituted.
- MessageFormatter::parse() and MessageFormat::format() (and their static
equivalents) now don't throw away better than second precision in the
arguments.
- IntlDateFormatter::__construct and datefmt_create() now accept for the
$timezone argument time zone identifiers, IntlTimeZone objects, DateTimeZone
objects and NULL. It used to accept only time zone identifiers and NULL.
Invalid time zone identifiers are no longer accepted. Emptry strings are
no longer accepted.
- pack()/unpack() had the following changes, which bring it more in
line with Perl's behavior: - Implemented format character "Z": NULL
padded string, with trailing NULL bytes removed. - Changed format
character "a": this no longer removes trailing NULL bytes. -
Changed format character "A": all trailing ASCII whitespace is now
removed (defined as spaces, tabs, \r, \n and NULL).
- MessageFormatter::format() and related functions now accepted named
arguments and mixed numeric/named arguments in ICU 4.8+.
- MessageFormatter::format() and related functions now don't error out
when an insufficient argument count is provided. Instead, the
placeholders will remain unsubstituted.
- MessageFormatter::parse() and MessageFormat::format() (and their
static equivalents) now don't throw away better than second
precision in the arguments.
- IntlDateFormatter::__construct and datefmt_create() now accept for
the $timezone argument time zone identifiers, IntlTimeZone objects,
DateTimeZone objects and NULL. It used to accept only time zone
identifiers and NULL. Invalid time zone identifiers are no longer
accepted. Empty strings are no longer accepted.
- 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.
- 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.
- IntlDateFormatter::__construct and datefmt_create() now accept for the
$calendar argument also IntlCalendar objects.
- 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.
- 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.
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.
- 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.
- IntlDateFormatter::__construct and datefmt_create() now accept for
the $calendar argument also IntlCalendar objects.
- 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.
- 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.
- IntlDateFormatter::format() and datefmt_format() now also accept an
IntlCalendar object for formatting.
- php_logo_guid(), php_egg_logo_guid(), php_real_logo_guid() and
zend_logo_guid() have been removed
- set_error_handler(NULL) can now be used to reset the error handler.
Furthermore both set_error_handler(NULL) and set_exception_handler(NULL) will
now return the previously defined error/exception handler. Previously
bool(true) was returned.
- setcookie(), setrawcookie() and ext/session now send Max-Age headers alongside
Expires headers. (see https://wiki.php.net/rfc/cookie_max-age)
- curl_setopt now accepts new option CURLOPT_SAFE_UPLOAD and CURLFile object for
safer file uploads (see https://wiki.php.net/rfc/curl-file-upload)
- Functions in the socket extension now do not emit warnings when the errno is
EAGAIN, EWOULDBLOCK or EINPROGRESS.
Furthermore both set_error_handler(NULL) and
set_exception_handler(NULL) will now return the previously defined
error/exception handler. Previously bool(true) was returned.
- setcookie(), setrawcookie() and ext/session now send Max-Age headers
alongside Expires headers. (see
https://wiki.php.net/rfc/cookie_max-age)
- curl_setopt now accepts new option CURLOPT_SAFE_UPLOAD and CURLFile
object for safer file uploads (see
https://wiki.php.net/rfc/curl-file-upload)
- Functions in the socket extension now do not emit warnings when the
errno is EAGAIN, EWOULDBLOCK or EINPROGRESS.
- Since 5.5.2, spl_autoload_functions() returns different names for
different lambda functions registered via spl_autoload_register().
- Since 5.5.3, DOMDocument::schemaValidateSource() and
DOMDocument::schemaValidate() accept flag parameter. Only flag
available now is LIBXML_SCHEMA_CREATE. Default is 0.
========================================
5. New Functions
========================================
- Core:
- array_column()
- boolval()
- password_get_info()
- password_hash()
@@ -174,6 +201,16 @@ PHP 5.5 UPGRADE NOTES
- cURL:
- curl_file_create
- GD
- imageflip
- imagecrop
- imagecropauto
- imagesetinterpolation
- imageaffine
- imageaffinematrixget
- imageaffinematrixconcat
- imagescale
- Hash:
- hash_pbkdf2()
@@ -266,6 +303,14 @@ PHP 5.5 UPGRADE NOTES
- SPL:
- SplFixedArray::__wakeup()
- SplDoublyLinkedList::add()
- RecursiveTreeIterator::getPostfix() (5.5.2)
- RecursiveTreeIterator::setPostfix() (5.5.2)
- Zend OPcache:
- opcache_get_configuration()
- opcache_get_status()
- opcache_reset()
========================================
6. New Classes and Interfaces
@@ -287,6 +332,7 @@ PHP 5.5 UPGRADE NOTES
7. Removed Extensions
========================================
None
========================================
8. Other Changes to Extensions
@@ -304,32 +350,132 @@ PHP 5.5 UPGRADE NOTES
- cURL:
- Added CURLOPT_SAFE_UPLOAD to be used with curl_setopt().
- Added CURL_WRAPPERS_ENABLED to reflect --with-curlwrappers.
- GD
- Added constants for imageflip:
. IMG_FLIP_HORIZONTAL
. IMG_FLIP_VERTICAL
. IMG_FLIP_BOTH
- Added constants for imagecrop
. IMG_CROP_DEFAULT
. IMG_CROP_TRANSPARENT
. IMG_CROP_BLACK
. IMG_CROP_WHITE
. IMG_CROP_SIDES
. IMG_CROP_THRESHOLD
- Added constants for imagesetinterpolation, used by imagescale
imagerotate and imageaffine:
. IMG_BELL
. IMG_BESSEL
. IMG_BILINEAR_FIXED
. IMG_BICUBIC
. IMG_BICUBIC_FIXED
. IMG_BLACKMAN
. IMG_BOX
. IMG_BSPLINE
. IMG_CATMULLROM
. IMG_GAUSSIAN
. IMG_GENERALIZED_CUBIC
. IMG_HERMITE
. IMG_HAMMING
. IMG_HANNING
. IMG_MITCHELL
. IMG_POWER
. IMG_QUADRATIC
. IMG_SINC
. IMG_NEAREST_NEIGHBOUR
. IMG_WEIGHTED4
. IMG_TRIANGLE
- Added constants for imageaffinematrixget
. IMG_AFFINE_TRANSLATE
. IMG_AFFINE_SCALE
. IMG_AFFINE_ROTATE
. IMG_AFFINE_SHEAR_HORIZONTAL
. IMG_AFFINE_SHEAR_VERTICAL
========================================
10. Changes to INI File Handling
========================================
- Core:
- Added sys_temp_dir INI directive, for specifying temp firectory.
- Added sys_temp_dir INI directive, for specifying temporary
directory.
- Intl:
- Added intl.use_exceptions INI directive, which controls what happens when
global errors are set together with intl.error_level.
- Added intl.use_exceptions INI directive, which controls what
happens when global errors are set together with intl.error_level.
- MSSQL:
- mssql.compatability_mode renamed to mssql.compatibility_mode in 5.5.2,
old directive still supported for BC reasons.
- mysqlnd:
- Added mysqlnd.sha256_server_public_key INI PERDIR setting that affects all
APIs which use(are built) for mysqlnd. This allows ext/mysqli to be used
with the new auth protocol, although at coarser level.
- Added mysqlnd.sha256_server_public_key INI PERDIR setting that
affects all APIs which use(are built) for mysqlnd. This allows
ext/mysqli to be used with the new auth protocol, although at
coarser level.
- Sessions:
- Added session.use_strict_mode in 5.5.3, which prevents session
fixation attacks and session collisions.
See also https://wiki.php.net/rfc/strict_sessions
- Zend OPcache (See http://php.net/manual/en/book.opcache.php)
- Added the following directives:
- opcache.enable (default "1")
- opcache.memory_consumption (default "64")
- opcache.interned_strings_buffer (default "4")
- opcache.max_accelerated_files (default "2000")
- opcache.max_wasted_percentage (default "5")
- opcache.use_cwd (default "1")
- opcache.validate_timestamps (default "1")
- opcache.revalidate_freq (default "2")
- opcache.revalidate_path (default "0")
- opcache.save_comments (default "1")
- opcache.load_comments (default "1")
- opcache.fast_shutdown (default "0")
- opcache.enable_file_override (default "0")
- opcache.optimization_level (default "0xffffffff")
- opcache.inherited_hack (default "1")
- opcache.blacklist_filename (default "")
- opcache.max_file_size (default "0")
- opcache.consistency_checks (default "0")
- opcache.force_restart_timeout (default "180")
- opcache.error_log (default "" which means stderr)
- opcache.log_verbosity_level (default "1")
- opcache.preferred_memory_model (default "")
- opcache.protect_memory (default "0")
- opcache.mmap_base (Windows-only)
========================================
11. Windows Support
========================================
- Apache 2.4 handler is supported as of PHP 5.5.0
- The Apache 2.4 handler is supported as of PHP 5.5.0
- OPcache: Errors like 'unable to reattach to base address' could
happen in many common setups. It is due to some technical and
design restriction in the engine and could not be fixed easily
before 5.5.0 was released.
A possible fix is to tweak the opcache.mmap_base INI setting by
forcing the first address to be tried.
For x86 version, the following addreses can be tried:
. 0x20000000, 0x21000000, 0x30000000, 0x31000000, 0x50000000
and for x64 (still experimental):
. 0x0000100000000000, 0x0000200000000000, 0x0000300000000000, 0x0000700000000000
========================================
12. Other Changes
========================================
- Logo GUIDs will no longer work
- If the APC or WinCache user cache APIs were used before, consider
these alternatives for PHP 5.5:
- APCu
- all supported OSes: http://pecl.php.net/package/APCu
- Windows: http://windows.php.net/downloads/pecl/releases/apcu/
- WinCache, Windows only: http://pecl.php.net/package/WinCache
+50 -6
View File
@@ -3,9 +3,11 @@ $Id$
UPGRADE NOTES - PHP X.Y
1. Internal API changes
a. Streams pooling API
b. Lowercasing and locales
c. zend_qsort_r
a. Executor changes
b. Streams pooling API
c. Lowercasing and locales
d. zend_qsort_r
e. get_current_key
2. Build system changes
a. Unix build system changes
@@ -16,7 +18,41 @@ UPGRADE NOTES - PHP X.Y
1. Internal API changes
========================
a. Streams pooling API
a. Executor changes
* extensions can't override zend_execute() any more, they should override
zend_execute_ex() instead. The EG(current_execute_data) is already
initialized in zend_execute_ex(), so for compatibility extensions
may need to use EG(current_execute_data)->prev_execute_data instead.
* removed EG(arg_types_stack), EX(fbc), EX(called_scope), EX(current_object)
* added op_array->nested_calls. It's calculated at compile time.
* added EX(call_slots). It is an array to store information about syntaticaly
nested calls (e.g. foo(bar())). It's preallocated together with execute_data.
* added EX(call) - pointer to a current calling function. Actually an
element of EX(call_slots)
* opcodes INIT_METHOD_CALL, ZEND_INIT_STATIC_METHOD_CALL,
ZEND_INIT_FCALL_BY_NAME, ZEND_INIT_NS_FCALL_BY_NAME use result.num as
an index in EX(call_slots)
* opcode ZEND_NEW uses extended_vallue as an index in EX(call_slots)
* opcoes ZEND_DO_FCALL and ZEND_DO_FCALL_BY_NAME use op2.num as
an index in EX(call_slots)
* added op_array->used_stack. It's calculated at compile time and the
corresponding stack space is preallocated together with execute_data.
ZEND_SEND* and ZEND_DO_FCALL* don't need to check for stack overflow
anymore.
* Removed execute_data->Ts field. The VM temporary variables always allocated
immediately before execute_data structure. Now they are accessed by offset
from the execute_data base pointer (instead of execute_data->Ts). Compiler
stores new offsets in op_array->opcodes[*].op?.num. You can use macros
EX_TMP_VAR() and EX_TMP_VAR_NUM() to access temp_variable by offset or
number. You can convert number to offset using EX_TMP_VAR_NUM(0, num) or
offset to number (EX_TMP_VAR_NUM(0,0)-EX_TMP_VAR(0,offset)).
* Removed execute_data->CVs field. The VM compiled variables always allocated
immediately after execute_data structure. Now they are accessed by offset
from the execute_data base pointer (instead of execute_data->CVs). You can
use macros EX_CV_NUM() to access compiled variables by number.
b. Streams pooling API
The streams pooling API has been removed. The following functions no longer
exist:
@@ -28,7 +64,7 @@ PHPAPI int php_stream_context_set_link(php_stream_context *context,
PHPAPI int php_stream_context_del_link(php_stream_context *context,
php_stream *stream);
b. Lowercasing and locales
c. Lowercasing and locales
The lowercasing functions in zend_operators.c were split into those that do
lowercasing according to locale rules and those that do ASCII lowercasing.
@@ -54,7 +90,7 @@ such as strcasecmp, will be using locale rules.
Two new functions - zend_binary_strncasecmp_l and zend_binary_strcasecmp_l - added as
locale-based counterparts to zend_binary_strcasecmp and zend_binary_strncasecmp.
c. zend_qsort_r
d. zend_qsort_r
Added the function zend_qsort_r():
@@ -64,6 +100,14 @@ void zend_qsort_r(void *base, size_t nmemb, size_t siz, compare_r_func_t compare
The extra argument it has (relatively to zend_qsort()) is passed to the
comparison function.
e. get_current_key
The signature of the get_current_key iteration handler has been changed to:
void (*get_current_key)(zend_object_iterator *iter, zval *key TSRMLS_DC);
The key should be written into the zval* using the ZVAL_* macros.
========================
2. Build system changes
========================
+1 -1
View File
@@ -6,7 +6,7 @@ fields and using different execution methods (call threading, switch threading
and direct threading). As a result ZE2 got more than 20% speedup on raw PHP
code execution (with specialized executor and direct threading execution
method). As in most PHP applications raw execution speed isn't the limiting
factor but system calls and database callls are, your mileage with this patch
factor but system calls and database calls are, your mileage with this patch
will vary.
Most parts of the old zend_execute.c go into zend_vm_def.h. Here you can
+3 -3
View File
@@ -435,7 +435,7 @@ Changes in the Zend Engine 2.0
that of other object-oriented languages, such as Java: When the
last reference to an object is destroyed the object's
destructor, which is a class method name __destruct() that
recieves no parameters, is called before the object is freed
receives no parameters, is called before the object is freed
from memory.
Example:
@@ -1136,7 +1136,7 @@ Changes in the Zend Engine 1.0
(supports breakpoints, expression evaluation, step-in/over,
function call backtrace, and more).
The Zend Engine claims 100% compatability with the engine of PHP
The Zend Engine claims 100% compatibility with the engine of PHP
3.0, and is shamelessly lying about it. Here's why:
* Static variable initializers only accept scalar values
@@ -1161,6 +1161,6 @@ Changes in the Zend Engine 1.0
printed the letter { and the contents of the variable $somevar in
PHP 3.0), it will result in a parse error with the Zend Engine.
In this case, you would have to change the code to print
"\{$somevar"; This incompatability is due to the full variable
"\{$somevar"; This incompatibility is due to the full variable
reference within quoted strings feature added in the Zend
Engine.
+1 -1
View File
@@ -4,7 +4,7 @@ dnl This file contains local autoconf functions.
AC_DEFUN([LIBZEND_BISON_CHECK],[
# we only support certain bison versions
bison_version_list="1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4 2.4.1 2.4.2 2.4.3 2.5 2.5.1 2.6 2.6.1 2.6.2"
bison_version_list="2.4 2.4.1 2.4.2 2.4.3 2.5 2.5.1 2.6 2.6.1 2.6.2 2.6.3 2.6.4 2.6.5 2.7"
# for standalone build of Zend Engine
test -z "$SED" && SED=sed
+1 -1
View File
@@ -357,7 +357,7 @@ var_dump($global_var);
test_unset3();
var_dump($global_var);
//Note: No error conditions relating to passing arugments can be tested
//Note: No error conditions relating to passing arguments can be tested
// because these are not functions but statements, it will result in syntax error.
?>
===DONE===
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
Bug #32428 (The @ warning error supression operator is broken)
Bug #32428 (The @ warning error suppression operator is broken)
--FILE--
<?php
$data = @$not_exists;
+2
View File
@@ -64,6 +64,8 @@ print "\nDone\n";
--EXPECTF--
Notice: String offset cast occurred in %s on line %d
Notice: Uninitialized string offset: %s in %s on line 6
Notice: Uninitialized string offset: 0 in %s on line %d
Notice: Uninitialized string offset: 0 in %s on line %d
+2
View File
@@ -2,6 +2,8 @@
Bug #43450 (Memory leak on some functions with implicit object __toString() call)
--SKIPIF--
<?php if (!function_exists('memory_get_usage')) die('memory_get_usage() not installed'); ?>
--INI--
opcache.enable_cli=0
--FILE--
<?php
error_reporting(E_ALL|E_STRICT);
+12
View File
@@ -35,18 +35,30 @@ Notice: Undefined variable: x in %sbug52041.php on line 3
Warning: Creating default object from empty value in %sbug52041.php on line 8
Notice: Undefined property: stdClass::$a in %sbug52041.php on line 8
Notice: Undefined variable: x in %sbug52041.php on line 3
Notice: Undefined property: stdClass::$a in %sbug52041.php on line 9
Warning: Creating default object from empty value in %sbug52041.php on line 9
Notice: Undefined property: stdClass::$b in %sbug52041.php on line 9
Notice: Undefined variable: x in %sbug52041.php on line 3
Warning: Creating default object from empty value in %sbug52041.php on line 10
Notice: Undefined property: stdClass::$a in %sbug52041.php on line 10
Notice: Undefined variable: x in %sbug52041.php on line 3
Notice: Undefined property: stdClass::$a in %sbug52041.php on line 11
Warning: Creating default object from empty value in %sbug52041.php on line 11
Notice: Undefined property: stdClass::$b in %sbug52041.php on line 11
Notice: Undefined variable: x in %sbug52041.php on line 3
Notice: Undefined variable: x in %sbug52041.php on line 3
+3
View File
@@ -1,5 +1,8 @@
--TEST--
Bug #55156 (ReflectionClass::getDocComment() returns comment even though the class has none)
--INI--
opcache.save_comments=1
opcache.load_comments=1
--FILE--
<?php
+5 -3
View File
@@ -3,18 +3,18 @@ Bug #60536 (Traits Segfault)
--FILE--
<?php
trait T { private $x = 0; }
class X {
class X {
use T;
}
class Y extends X {
use T;
function x() {
return ++$this->x;
return ++$this->x;
}
}
class Z extends Y {
function z() {
return ++$this->x;
return ++$this->x;
}
}
$a = new Z();
@@ -22,4 +22,6 @@ $a->x();
echo "DONE";
?>
--EXPECTF--
Notice: Undefined property: Z::$x in %s on line 14
DONE
+10 -9
View File
@@ -1,9 +1,10 @@
--TEST--
test of larger than 8kb text file being parsed by require statement
--FILE--
<?php
file_put_contents('test.php',str_repeat('passed, ',1024));
require('test.php');
?>
--EXPECT--
passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed,Line truncated
--TEST--
test of larger than 8kb text file being parsed by require statement
--FILE--
<?php
file_put_contents('test.php',str_repeat('passed, ',1024));
require('./test.php');
unlink('test.php');
?>
--EXPECT--
passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed, passed,Line truncated
+27
View File
@@ -0,0 +1,27 @@
--TEST--
Bug #61025 (__invoke() visibility not honored)
--FILE--
<?php
Interface InvokeAble {
static function __invoke();
}
class Bar {
private function __invoke() {
return __CLASS__;
}
}
$b = new Bar;
echo $b();
echo $b->__invoke();
?>
--EXPECTF--
Warning: The magic method __invoke() must have public visibility and cannot be static in %sbug61025.php on line %d
Warning: The magic method __invoke() must have public visibility and cannot be static in %sbug61025.php on line %d
Bar
Fatal error: Call to private method Bar::__invoke() from context '' in %sbug61025.php on line %d
+2
View File
@@ -9,6 +9,8 @@ function add_points($player, $points) {
add_points(NULL, 2);
--EXPECTF--
Warning: Creating default object from empty value in %sbug62005.php on line %d
Notice: Undefined property: stdClass::$energy in %sbug62005.php on line 3
stdClass Object
(
[energy] => 2
+13
View File
@@ -0,0 +1,13 @@
--TEST--
Bug #62343 (Show class_alias In get_declared_classes())
--FILE--
<?php
class a { }
class_alias("a", "b");
$c = get_declared_classes();
var_dump(end($c));
var_dump(prev($c));
?>
--EXPECT--
string(1) "b"
string(1) "a"
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #63976 (Parent class incorrectly using child constant in class property)
--FILE--
<?php
if (1) {
class Foo {
const TABLE = "foo";
public $table = self::TABLE;
}
}
if (1) {
class Bar extends Foo {
const TABLE = "bar";
}
}
$bar = new Bar();
var_dump($bar->table);
?>
--EXPECT--
string(3) "foo"
+28
View File
@@ -0,0 +1,28 @@
--TEST--
Bug #64239 (get_class_methods() changed behavior)
--FILE--
<?php
class A {
use T2 { t2method as Bmethod; }
}
class B extends A {
}
trait T2 {
public function t2method() {
}
}
print_r(get_class_methods("A"));
print_r(get_class_methods("B"));
--EXPECT--
Array
(
[0] => Bmethod
[1] => t2method
)
Array
(
[0] => Bmethod
[1] => t2method
)
+58
View File
@@ -0,0 +1,58 @@
--TEST--
Bug #64239 (debug_backtrace() changed behavior)
--FILE--
<?php
class A {
use T1;
public function test() { $this->backtrace(); }
}
class B {
use T2 { t2method as Bmethod; }
}
class C extends A {
}
trait T1 {
protected function backtrace() {
$b = new B();
$b->Bmethod();
}
}
trait T2 {
public function t2method() {
print_r(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1));
}
}
$a = new A();
$a->test();
$c = new C();
$c->test();
?>
--EXPECTF--
Array
(
[0] => Array
(
[file] => %sbug64239_2.php
[line] => %d
[function] => Bmethod
[class] => B
[type] => ->
)
)
Array
(
[0] => Array
(
[file] => %sbug64239_2.php
[line] => %d
[function] => Bmethod
[class] => B
[type] => ->
)
)
+33
View File
@@ -0,0 +1,33 @@
--TEST--
Bug #64239 (debug_print_backtrace() changed behavior)
--FILE--
<?php
class A {
use T2 { t2method as Bmethod; }
}
class C extends A {
public function Bmethod() {
debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1);
}
}
trait T2 {
public function t2method() {
debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1);
}
}
$a = new A();
$a->Bmethod();
$a->t2method();
$c = new C();
$c->Bmethod();
$c->t2method();
?>
--EXPECTF--
#0 A->Bmethod() called at [%sbug64239_3.php:%d]
#0 A->t2method() called at [%sbug64239_3.php:%d]
#0 C->Bmethod() called at [%sbug64239_3.php:%d]
#0 A->t2method() called at [%sbug64239_3.php:%d]
+31
View File
@@ -0,0 +1,31 @@
--TEST--
Bug #64239 (debug_print_backtrace() changed behavior)
--FILE--
<?php
class A {
use T2 { t2method as Bmethod; }
}
class C extends A {
public static function Bmethod() {
debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1);
}
}
trait T2 {
public static function t2method() {
debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 1);
}
}
A::Bmethod();
A::t2method();
C::Bmethod();
C::t2method();
?>
--EXPECTF--
#0 A::Bmethod() called at [%sbug64239_4.php:%d]
#0 A::t2method() called at [%sbug64239_4.php:%d]
#0 C::Bmethod() called at [%sbug64239_4.php:%d]
#0 A::t2method() called at [%sbug64239_4.php:%d]
+24
View File
@@ -0,0 +1,24 @@
--TEST--
Bug #64354 (Unserialize array of objects whose class can't be autoloaded fail)
--FILE--
<?php
class B implements Serializable {
public function serialize() {
throw new Exception("serialize");
return NULL;
}
public function unserialize($data) {
}
}
$data = array(new B);
try {
serialize($data);
} catch (Exception $e) {
var_dump($e->getMessage());
}
?>
--EXPECTF--
string(9) "serialize"
+39
View File
@@ -0,0 +1,39 @@
--TEST--
Bug #64417 (BC break: ArrayAccess::&offsetGet() in a trait causes fatal error)
--FILE--
<?php
trait aa {
private $container = array();
public function offsetSet($offset, $value) {
if (is_null($offset)) {
$this->container[] = $value;
} else {
$this->container[$offset] = $value;
}
}
public function offsetExists($offset) {
return isset($this->container[$offset]);
}
public function offsetUnset($offset) {
unset($this->container[$offset]);
}
public function &offsetGet($offset) {
$result = null;
if (isset($this->container[$offset])) {
$result = &$this->container[$offset];
}
return $result;
}
}
class obj implements ArrayAccess {
use aa;
}
$o = new obj;
$o['x'] = 1;
++$o['x'];
echo $o['x'], "\n";
--EXPECT--
2
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Bug #64515 (Memoryleak when using the same variablename 2times in function declaration)
--FILE--
<?php
function foo($unused = null, $unused = null, $arg = array()) {
return 1;
}
foo();
echo "okey";
?>
--EXPECT--
okey
+42
View File
@@ -0,0 +1,42 @@
--TEST--
Bug #64555: Array key within interned string gets wrong hash value
--FILE--
<?php
class Foo {
protected $unsetme = 1;
protected $keepme = 2;
public function test() {
$a = get_object_vars($this);
foreach ($a as $k => $v) {
if ($k == 'unsetme') {
echo "Unsetting: $k\n";
unset($a[$k]);
} else if ($k == 'keepme') {
echo "Changing: $k\n";
$a[$k] = 42;
$a['keepme'] = 43;
}
}
var_dump($a, array_keys($a));
}
}
$f = new Foo;
$f->test();
?>
--EXPECT--
Unsetting: unsetme
Changing: keepme
array(1) {
["keepme"]=>
int(43)
}
array(1) {
[0]=>
string(6) "keepme"
}
+14
View File
@@ -0,0 +1,14 @@
--TEST--
Bug #64578 (debug_backtrace in set_error_handler corrupts zend heap: segfault)
--FILE--
<?php
set_error_handler(function($no, $err) { var_dump($err); });
function x($s) { $s['a'] = 1; };
$y = '1';
x($y);
print_r($y);
--EXPECTF--
string(25) "Illegal string offset 'a'"
1
+11
View File
@@ -0,0 +1,11 @@
--TEST--
Bug #64660 (Segfault on memory exhaustion within function definition)
--FILE--
<?php
function a() {
[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[Line truncated
}
echo "Done\n";
--EXPECTF--
Parse error: memory exhausted in %s on line %d
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #64677 (execution operator `` stealing surrounding arguments)
--FILE--
<?PHP
class cat {
public function show_output($prepend, $output = '') {
}
}
$cat = new cat();
$cat->show_output('Files: ', trim(`cd .`)); // this gives invalid args to shell_exec
$cat->show_output('Files: ', `cd .`); // this causes a segmentation fault
$cat->show_output(`cd .`); // this causes a segmentation fault
function show_outputa($prepend, $output) {
echo "Okey";
}
show_outputa('Files: ', `cd .`); // this works as expected
?>
--EXPECT--
Okey
+48
View File
@@ -0,0 +1,48 @@
--TEST--
Bug #64720 (SegFault on zend_deactivate)
--FILE--
<?php
class Stat {
private static $requests;
public static function getInstance() {
if (!isset(self::$requests[1])) {
self::$requests[1] = new self();
}
return self::$requests[1];
}
public function __destruct() {
unset(self::$requests[1]);
}
}
class Foo {
public function __construct() {
Stat::getInstance();
}
}
class Error {
private $trace;
public function __construct() {
$this->trace = debug_backtrace(1);
}
}
class Bar {
public function __destruct() {
Stat::getInstance();
new Error();
}
public function test() {
new Error();
}
}
$foo = new Foo();
$bar = new Bar();
$bar->test();
?>
--EXPECTF--
Fatal error: Access to undeclared static property: Stat::$requests in %sbug64720.php on line 12
+22
View File
@@ -0,0 +1,22 @@
--TEST--
Bug #64821 Custom Exceptions crash when internal properties overridden (variation 1)
--FILE--
<?php
class a extends exception {
public function __construct() {
$this->message = NULL;
$this->string = NULL;
$this->code = array();
$this->line = "hello";
}
}
throw new a;
?>
--EXPECTF--
Fatal error: Uncaught exception 'a' in %s:0
Stack trace:
#0 {main}
thrown in %s on line %d
+19
View File
@@ -0,0 +1,19 @@
--TEST--
Bug #64821 Custom Exceptions crash when internal properties overridden (variation 2)
--FILE--
<?php
class a extends exception {
public function __construct() {
$this->line = array();
}
}
throw new a;
?>
--EXPECTF--
Fatal error: Uncaught exception 'a' in %s:0
Stack trace:
#0 {main}
thrown in %s on line %d
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #64821 Custom Exceptions crash when internal properties overridden (variation 3)
--FILE--
<?php
class a extends exception {
public function __construct() {
$this->line = array();
$this->file = NULL;
}
}
throw new a;
?>
--EXPECTF--
Fatal error: Uncaught exception 'a' in :0
Stack trace:
#0 {main}
thrown in Unknown on line %d
+40
View File
@@ -0,0 +1,40 @@
--TEST--
Bug #64960 (Segfault in gc_zval_possible_root)
--FILE--
<?php
// this makes ob_end_clean raise an error
ob_end_flush();
class ExceptionHandler {
public function __invoke (Exception $e)
{
// this triggers the custom error handler
ob_end_clean();
}
}
// this must be a class, closure does not trigger segfault
set_exception_handler(new ExceptionHandler());
// exception must be throwed from error handler.
set_error_handler(function()
{
$e = new Exception;
$e->_trace = debug_backtrace();
throw $e;
});
// trigger error handler
$a['waa'];
?>
--EXPECTF--
Notice: ob_end_flush(): failed to delete and flush buffer. No buffer to delete or flush in %sbug64960.php on line 3
Fatal error: Uncaught exception 'Exception' in %sbug64960.php:19
Stack trace:
#0 [internal function]: {closure}(8, 'ob_end_clean():...', '%s', 9, Array)
#1 %sbug64960.php(9): ob_end_clean()
#2 [internal function]: ExceptionHandler->__invoke(Object(Exception))
#3 {main}
thrown in %sbug64960.php on line 19
+30
View File
@@ -0,0 +1,30 @@
--TEST--
Bug #64966 (segfault in zend_do_fcall_common_helper_SPEC)
--FILE--
<?php
error_reporting(E_ALL);
set_error_handler(function($error) { throw new Exception(); }, E_RECOVERABLE_ERROR);
function test($func) {
$a = $func("");
return true;
}
class A {
public function b() {
test("strlen");
test("iterator_apply");
}
}
$a = new A();
$a->b();
?>
--EXPECTF--
Fatal error: Uncaught exception 'Exception' in %sbug64966.php:3
Stack trace:
#0 [internal function]: {closure}(4096, 'Argument 1 pass...', '%s', 6, Array)
#1 %sbug64966.php(6): iterator_apply('')
#2 %sbug64966.php(12): test('iterator_apply')
#3 %sbug64966.php(17): A->b()
#4 {main}
thrown in %sbug64966.php on line 3
+30
View File
@@ -0,0 +1,30 @@
--TEST--
Bug #64988 (Class loading order affects E_STRICT warning)
--FILE--
<?php
abstract class Base1 {
public function insert(array $data){
return array_reverse($data);
}
}
class Noisy1 extends Base1 {
public function insert(array $data, $option1 = Null) {
if (!empty($option1)) {
$data['option1'] = $option1;
}
return parent::insert($data);
}
}
class Smooth1 extends Noisy1 {
public function insert(array $data) {
return parent::insert($data, count($data));
}
}
$o = new Smooth1();
echo "okey";
?>
--EXPECTF--
Strict Standards: Declaration of Smooth1::insert() should be compatible with Noisy1::insert(array $data, $option1 = NULL) in %sbug64988.php on line 20
okey
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #65051: count() off by one inside unset()
--FILE--
<?php
class Foo {
public $array;
public function __destruct() {
var_dump(count($this->array[0]));
var_dump($this->array[0]);
}
}
$array = [[new Foo]];
$array[0][0]->array =& $array;
unset($array[0][0]);
?>
--EXPECT--
int(0)
array(0) {
}
+27
View File
@@ -0,0 +1,27 @@
--TEST--
Bug #65108 (is_callable() triggers Fatal Error)
--FILE--
<?php
class C {
private function f() {}
static function __callStatic($name, $args) {}
}
class B {
public function B() {
$isCallable = is_callable(array(new C, 'f'));
var_dump($isCallable);
}
}
new B();
Class E {
private function f() {}
function __call($name, $args) {}
}
$isCallable = is_callable(array('E', 'f'));
var_dump($isCallable);
--EXPECT--
bool(false)
bool(false)
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #65254 (Exception not catchable when exception thrown in autoload with a namespace)
--FILE--
<?php
function __autoload($class)
{
eval("namespace ns_test; class test {}");
throw new \Exception('abcd');
}
try
{
\ns_test\test::go();
}
catch (Exception $e)
{
echo 'caught';
}
--EXPECT--
caught
+25
View File
@@ -0,0 +1,25 @@
--TEST--
Bug #65291 - get_defined_constants() causes PHP to crash in a very limited case.
--FILE--
<?php
trait TestTrait
{
public static function testStaticFunction()
{
return __CLASS__;
}
}
class Tester
{
use TestTrait;
}
$foo = Tester::testStaticFunction();
get_defined_constants();
get_defined_constants(true);
echo $foo;
?>
--EXPECT--
Tester
+40
View File
@@ -0,0 +1,40 @@
--TEST--
Bug #65372 (Segfault in gc_zval_possible_root when return reference fails)
--FILE--
<?php
class ParentClass
{
private static $_OBJECTS;
public static function Get()
{
self::$_OBJECTS[1] = new ChildClass();
return self::$_OBJECTS[1];
}
}
class ChildClass extends ParentClass
{
public $Manager;
function __construct()
{
$this->Manager = $this;
}
public static function &GetCurrent()
{
return ChildClass::Get();
}
public static function &Get()
{
return parent::Get();
}
}
$staff = ChildClass::GetCurrent();
?>
--EXPECTF--
Notice: Only variable references should be returned by reference in %sbug65372.php on line 30
+1 -1
View File
@@ -3,7 +3,7 @@ Closure 044: Scope/bounding combination invariants; non static closures
--FILE--
<?php
/* A non-static closure has a bound instance if it has a scope
* and does't have an instance if it has no scope */
* and doesn't have an instance if it has no scope */
$nonstaticUnscoped = function () { var_dump(isset(A::$priv)); var_dump(isset($this)); };
+32
View File
@@ -0,0 +1,32 @@
--TEST--
zend_dval_to_lval preserves low bits (32 bit long)
--SKIPIF--
<?php
if (PHP_INT_SIZE != 4)
die("skip for machines with 32-bit longs");
?>
--FILE--
<?php
/* test doubles around -4e21 */
$values = [
-4000000000000001048576.,
-4000000000000000524288.,
-4000000000000000000000.,
-3999999999999999475712.,
-3999999999999998951424.,
];
/* see if we're rounding negative numbers right */
$values[] = -2147483649.8;
foreach ($values as $v) {
var_dump((int)$v);
}
?>
--EXPECT--
int(-2056257536)
int(-2055733248)
int(-2055208960)
int(-2054684672)
int(-2054160384)
int(2147483647)
+29
View File
@@ -0,0 +1,29 @@
--TEST--
zend_dval_to_lval preserves low bits (64 bit long)
--SKIPIF--
<?php
if (PHP_INT_SIZE != 8)
die("skip for machines with 64-bit longs");
?>
--FILE--
<?php
/* test doubles around -4e21 */
$values = [
-4000000000000001048576.,
-4000000000000000524288.,
-4000000000000000000000.,
-3999999999999999475712.,
-3999999999999998951424.,
];
foreach ($values as $v) {
var_dump((int)$v);
}
?>
--EXPECT--
int(2943463994971652096)
int(2943463994972176384)
int(2943463994972700672)
int(2943463994973224960)
int(2943463994973749248)
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
GC 007: Unreferensed array cycle
GC 007: Unreferenced array cycle
--INI--
zend.enable_gc=1
--FILE--
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
GC 008: Unreferensed object cycle
GC 008: Unreferenced object cycle
--INI--
zend.enable_gc=1
--FILE--
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
GC 009: Unreferensed array-object cycle
GC 009: Unreferenced array-object cycle
--INI--
zend.enable_gc=1
--FILE--
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #65035: yield / exit segfault
--FILE--
<?php
function gen() {
fn();
yield;
}
function fn() {
exit('Done');
}
$gen = gen();
$gen->current();
?>
--EXPECT--
Done
+20
View File
@@ -0,0 +1,20 @@
--TEST--
Bug #65161: Generator + autoload + syntax error = segfault
--FILE--
<?php
function autoload() {
foo();
}
spl_autoload_register('autoload');
function testGenerator() {
new SyntaxError('param');
yield;
}
foreach (testGenerator() as $i);
?>
--EXPECTF--
Fatal error: Call to undefined function foo() in %s on line %d
+7 -24
View File
@@ -1,32 +1,15 @@
--TEST--
Generators can be cloned
Generators cannot be cloned
--FILE--
<?php
function firstN($end) {
for ($i = 0; $i < $end; ++$i) {
yield $i;
}
function gen() {
yield;
}
$g1 = firstN(5);
var_dump($g1->current());
$g1->next();
$g2 = clone $g1;
var_dump($g2->current());
$g2->next();
var_dump($g2->current());
var_dump($g1->current());
$g1->next();
var_dump($g1->current());
$gen = gen();
clone $gen;
?>
--EXPECT--
int(0)
int(1)
int(2)
int(1)
int(2)
--EXPECTF--
Fatal error: Trying to clone an uncloneable object of class Generator in %s on line %d
@@ -1,20 +0,0 @@
--TEST--
Cloning a generator after an object method was called
--FILE--
<?php
class A { public function b() { } }
function gen() {
$a = new A;
$a->b();
yield;
}
$g1 = gen();
$g1->rewind();
$g2 = clone $g1;
echo "Done";
--EXPECT--
Done
@@ -1,33 +0,0 @@
--TEST--
Cloning a generator with a foreach loop properly adds a ref for the loop var
--FILE--
<?php
function gen() {
foreach ([1, 2, 3] as $i) {
yield $i;
}
}
$g1 = gen();
var_dump($g1->current());
$g2 = clone $g1;
var_dump($g2->current());
$g1->next();
$g2->next();
var_dump($g1->current());
var_dump($g2->current());
unset($g1);
$g2->next();
var_dump($g2->current());
?>
--EXPECT--
int(1)
int(1)
int(2)
int(2)
int(3)
@@ -1,18 +0,0 @@
--TEST--
Tests cloning a generator with properties
--FILE--
<?php
function gen() { yield; }
$g1 = gen();
$g1->prop = 'val';
$g2 = clone $g1;
unset($g1);
var_dump($g2->prop);
?>
--EXPECT--
string(3) "val"
@@ -1,18 +0,0 @@
--TEST--
A generator with an active stack can be cloned
--FILE--
<?php
function gen() {
var_dump(str_repeat("x", yield));
}
$g1 = gen();
$g1->rewind();
$g2 = clone $g1;
unset($g1);
$g2->send(10);
?>
--EXPECT--
string(10) "xxxxxxxxxx"
@@ -1,27 +0,0 @@
--TEST--
A generator using a symbol table can be cloned
--FILE--
<?php
function gen() {
// force compiled variable for $foo
$foo = 'foo';
// force symbol table
extract(['foo' => 'bar']);
// interrupt
yield;
var_dump($foo);
}
$g1 = gen();
$g1->rewind();
$g2 = clone $g1;
unset($g1);
$g2->next();
?>
--EXPECT--
string(3) "bar"
@@ -1,24 +0,0 @@
--TEST--
Cloning a generator method (with $this)
--FILE--
<?php
class Test {
protected $foo;
public function gen() {
$this->foo = 'bar';
yield; // interrupt
var_dump($this->foo);
}
}
$g1 = (new Test)->gen();
$g1->rewind(); // goto yield
$g2 = clone $g1;
unset($g1);
$g2->next();
?>
--EXPECT--
string(3) "bar"
@@ -38,8 +38,6 @@ Stack trace:
#1 %s(%d): unserialize('O:9:"Generator"...')
#2 {main}
Notice: unserialize(): Error at offset 19 of 20 bytes in %s on line %d
exception 'Exception' with message 'Unserialization of 'Generator' is not allowed' in %s:%d
Stack trace:
#0 %s(%d): unserialize('C:9:"Generator"...')
@@ -0,0 +1,52 @@
--TEST--
Generators can return non-scalar keys
--FILE--
<?php
function gen() {
yield [1, 2, 3] => [4, 5, 6];
yield (object) ['a' => 'b'] => (object) ['b' => 'a'];
yield 3.14 => 2.73;
yield false => true;
yield true => false;
yield null => null;
}
foreach (gen() as $k => $v) {
var_dump($k, $v);
}
?>
--EXPECT--
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
int(3)
}
array(3) {
[0]=>
int(4)
[1]=>
int(5)
[2]=>
int(6)
}
object(stdClass)#3 (1) {
["a"]=>
string(1) "b"
}
object(stdClass)#4 (1) {
["b"]=>
string(1) "a"
}
float(3.14)
float(2.73)
bool(false)
bool(true)
bool(true)
bool(false)
NULL
NULL
@@ -26,10 +26,7 @@ $g2 = gen(new B);
$g2->current();
$g1->next();
$g3 = clone $g2;
unset($g2);
$g3->next();
$g2->next();
?>
--EXPECT--
@@ -22,14 +22,6 @@ $gen = gen();
$gen->rewind();
unset($gen);
// test cloning
$g1 = gen();
$g1->rewind();
$g2 = clone $g1;
unset($g1);
$g2->send('bar');
?>
--EXPECT--
foo
bar
@@ -9,13 +9,13 @@ function recv() {
}
}
$reciever = recv();
var_dump($reciever->current());
$reciever->send(1);
var_dump($reciever->current());
$reciever->send(2);
var_dump($reciever->current());
$reciever->send(3);
$receiver = recv();
var_dump($receiver->current());
$receiver->send(1);
var_dump($receiver->current());
$receiver->send(2);
var_dump($receiver->current());
$receiver->send(3);
?>
--EXPECT--
+2
View File
@@ -1,5 +1,7 @@
--TEST--
026: Name ambiguity (class name & namespace name)
--INI--
opcache.optimization_level=0
--FILE--
<?php
namespace Foo;
+34
View File
@@ -0,0 +1,34 @@
--TEST--
Bug #64235 (Insteadof not work for class method in 5.4.11)
--FILE--
<?php
class TestParentClass
{
public function method()
{
print_r('Parent method');
print "\n";
}
}
trait TestTrait
{
public function method()
{
print_r('Trait method');
print "\n";
}
}
class TestChildClass extends TestParentClass
{
use TestTrait
{
TestTrait::method as methodAlias;
TestParentClass::method insteadof TestTrait;
}
}
?>
--EXPECTF--
Fatal error: Class TestParentClass is not a trait, Only traits may be used in 'as' and 'insteadof' statements in %sbug64235.php on line %d
+35
View File
@@ -0,0 +1,35 @@
--TEST--
Bug #64235 (Insteadof not work for class method in 5.4.11)
--FILE--
<?php
class TestParentClass
{
public function method()
{
print_r('Parent method');
print "\n";
}
}
trait TestTrait
{
public function method()
{
print_r('Trait method');
print "\n";
}
}
class TestChildClass extends TestParentClass
{
use TestTrait
{
TestTrait::method as methodAlias;
TestParentClass::method as TestParent;
}
}
?>
--EXPECTF--
Fatal error: Class TestParentClass is not a trait, Only traits may be used in 'as' and 'insteadof' statements in %sbug64235b.php on line %d
@@ -1,5 +1,5 @@
--TEST--
Overridding Conflicting Methods should not result in a notice/warning about collisions
Overriding Conflicting Methods should not result in a notice/warning about collisions
--FILE--
<?php
error_reporting(E_ALL);
+1 -1
View File
@@ -14,4 +14,4 @@ class C {
}
}
--EXPECTF--
Fatal error: Trait T2 is not used in %s on line %d
Fatal error: Required Trait T2 wasn't added to C in %slanguage015.php on line %d
+1 -1
View File
@@ -14,4 +14,4 @@ class C {
}
}
--EXPECTF--
Fatal error: Trait T2 is not used in %s on line %d
Fatal error: Required Trait T2 wasn't added to C in %slanguage016.php on line %d
+1 -1
View File
@@ -14,4 +14,4 @@ class C {
}
}
--EXPECTF--
Fatal error: Trait T2 is not used in %s on line %d
Fatal error: Required Trait T2 wasn't added to C in %slanguage017.php on line %d
+1 -1
View File
@@ -1098,7 +1098,7 @@ ZEND_API void zend_error(int type, const char *format, ...) /* {{{ */
if(DTRACE_ERROR_ENABLED()) {
char *dtrace_error_buffer;
zend_vspprintf(&dtrace_error_buffer, 0, format, args);
DTRACE_ERROR(dtrace_error_buffer, error_filename, error_lineno);
DTRACE_ERROR(dtrace_error_buffer, (char *)error_filename, error_lineno);
efree(dtrace_error_buffer);
}
#endif /* HAVE_DTRACE */
+6 -3
View File
@@ -22,7 +22,7 @@
#ifndef ZEND_H
#define ZEND_H
#define ZEND_VERSION "2.5.0-dev"
#define ZEND_VERSION "2.5.0"
#define ZEND_ENGINE_2
@@ -299,7 +299,6 @@ void zend_error_noreturn(int type, const char *format, ...) __attribute__ ((nore
/*
* zval
*/
typedef struct _zval_struct zval;
typedef struct _zend_class_entry zend_class_entry;
typedef struct _zend_guard {
@@ -365,6 +364,10 @@ struct _zval_struct {
#define Z_UNSET_ISREF(z) Z_UNSET_ISREF_P(&(z))
#define Z_SET_ISREF_TO(z, isref) Z_SET_ISREF_TO_P(&(z), isref)
#if ZEND_DEBUG
#define zend_always_inline inline
#define zend_never_inline
#else
#if defined(__GNUC__)
#if __GNUC__ >= 3
#define zend_always_inline inline __attribute__((always_inline))
@@ -373,7 +376,6 @@ struct _zval_struct {
#define zend_always_inline inline
#define zend_never_inline
#endif
#elif defined(_MSC_VER)
#define zend_always_inline __forceinline
#define zend_never_inline
@@ -381,6 +383,7 @@ struct _zval_struct {
#define zend_always_inline inline
#define zend_never_inline
#endif
#endif /* ZEND_DEBUG */
#if (defined (__GNUC__) && __GNUC__ > 2 ) && !defined(DARWIN) && !defined(__hpux) && !defined(_AIX)
# define EXPECTED(condition) __builtin_expect(condition, 1)
+130 -5
View File
@@ -1051,6 +1051,41 @@ ZEND_API void zend_merge_properties(zval *obj, HashTable *properties, int destro
}
/* }}} */
static int zval_update_class_constant(zval **pp, int is_static, int offset TSRMLS_DC) /* {{{ */
{
if ((Z_TYPE_PP(pp) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT ||
(Z_TYPE_PP(pp) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT_ARRAY) {
zend_class_entry **scope = EG(in_execution)?&EG(scope):&CG(active_class_entry);
if ((*scope)->parent) {
zend_class_entry *ce = *scope;
HashPosition pos;
zend_property_info *prop_info;
do {
for (zend_hash_internal_pointer_reset_ex(&ce->properties_info, &pos);
zend_hash_get_current_data_ex(&ce->properties_info, (void **) &prop_info, &pos) == SUCCESS;
zend_hash_move_forward_ex(&ce->properties_info, &pos)) {
if (is_static == ((prop_info->flags & ZEND_ACC_STATIC) != 0) &&
offset == prop_info->offset) {
int ret;
zend_class_entry *old_scope = *scope;
*scope = prop_info->ce;
ret = zval_update_constant(pp, (void*)1 TSRMLS_CC);
*scope = old_scope;
return ret;
}
}
ce = ce->parent;
} while (ce);
}
return zval_update_constant(pp, (void*)1 TSRMLS_CC);
}
return 0;
}
/* }}} */
ZEND_API void zend_update_class_constants(zend_class_entry *class_type TSRMLS_DC) /* {{{ */
{
if ((class_type->ce_flags & ZEND_ACC_CONSTANTS_UPDATED) == 0 || (!CE_STATIC_MEMBERS(class_type) && class_type->default_static_members_count)) {
@@ -1063,7 +1098,7 @@ ZEND_API void zend_update_class_constants(zend_class_entry *class_type TSRMLS_DC
for (i = 0; i < class_type->default_properties_count; i++) {
if (class_type->default_properties_table[i]) {
zval_update_constant(&class_type->default_properties_table[i], (void**)1 TSRMLS_CC);
zval_update_class_constant(&class_type->default_properties_table[i], 0, i TSRMLS_CC);
}
}
@@ -1104,7 +1139,7 @@ ZEND_API void zend_update_class_constants(zend_class_entry *class_type TSRMLS_DC
}
for (i = 0; i < class_type->default_static_members_count; i++) {
zval_update_constant(&CE_STATIC_MEMBERS(class_type)[i], (void**)1 TSRMLS_CC);
zval_update_class_constant(&CE_STATIC_MEMBERS(class_type)[i], 1, i TSRMLS_CC);
}
*scope = old_scope;
@@ -1137,7 +1172,7 @@ ZEND_API void object_properties_init(zend_object *object, zend_class_entry *clas
/* This function requires 'properties' to contain all props declared in the
* class and all props being public. If only a subset is given or the class
* has protected members then you need to merge the properties seperately by
* has protected members then you need to merge the properties separately by
* calling zend_merge_properties(). */
ZEND_API int _object_and_properties_init(zval *arg, zend_class_entry *class_type, HashTable *properties ZEND_FILE_LINE_DC TSRMLS_DC) /* {{{ */
{
@@ -1502,6 +1537,40 @@ ZEND_API int add_get_index_stringl(zval *arg, ulong index, const char *str, uint
}
/* }}} */
ZEND_API int array_set_zval_key(HashTable *ht, zval *key, zval *value) /* {{{ */
{
int result;
switch (Z_TYPE_P(key)) {
case IS_STRING:
result = zend_symtable_update(ht, Z_STRVAL_P(key), Z_STRLEN_P(key) + 1, &value, sizeof(zval *), NULL);
break;
case IS_NULL:
result = zend_symtable_update(ht, "", 1, &value, sizeof(zval *), NULL);
break;
case IS_RESOURCE:
zend_error(E_STRICT, "Resource ID#%ld used as offset, casting to integer (%ld)", Z_LVAL_P(key), Z_LVAL_P(key));
/* break missing intentionally */
case IS_BOOL:
case IS_LONG:
result = zend_hash_index_update(ht, Z_LVAL_P(key), &value, sizeof(zval *), NULL);
break;
case IS_DOUBLE:
result = zend_hash_index_update(ht, zend_dval_to_lval(Z_DVAL_P(key)), &value, sizeof(zval *), NULL);
break;
default:
zend_error(E_WARNING, "Illegal offset type");
result = FAILURE;
}
if (result == SUCCESS) {
Z_ADDREF_P(value);
}
return result;
}
/* }}} */
ZEND_API int add_property_long_ex(zval *arg, const char *key, uint key_len, long n TSRMLS_DC) /* {{{ */
{
zval *tmp;
@@ -2773,8 +2842,8 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
}
if ((check_flags & IS_CALLABLE_CHECK_NO_ACCESS) == 0 &&
(fcc->calling_scope &&
(fcc->calling_scope->__call ||
fcc->calling_scope->__callstatic))) {
((fcc->object_ptr && fcc->calling_scope->__call) ||
(!fcc->object_ptr && fcc->calling_scope->__callstatic)))) {
if (fcc->function_handler->op_array.fn_flags & ZEND_ACC_PRIVATE) {
if (!zend_check_private(fcc->function_handler, fcc->object_ptr ? Z_OBJCE_P(fcc->object_ptr) : EG(scope), lmname, mlen TSRMLS_CC)) {
retval = 0;
@@ -3907,6 +3976,62 @@ ZEND_API void zend_restore_error_handling(zend_error_handling *saved TSRMLS_DC)
}
/* }}} */
ZEND_API const char* zend_find_alias_name(zend_class_entry *ce, const char *name, zend_uint len) /* {{{ */
{
zend_trait_alias *alias, **alias_ptr;
alias_ptr = ce->trait_aliases;
alias = *alias_ptr;
while (alias) {
if (alias->alias_len == len &&
!strncasecmp(name, alias->alias, alias->alias_len)) {
return alias->alias;
}
alias_ptr++;
alias = *alias_ptr;
}
return name;
}
/* }}} */
ZEND_API const char* zend_resolve_method_name(zend_class_entry *ce, zend_function *f) /* {{{ */
{
zend_function *func;
HashPosition iterator;
HashTable *function_table;
if (f->common.type != ZEND_USER_FUNCTION ||
*(f->op_array.refcount) < 2 ||
!f->common.scope ||
!f->common.scope->trait_aliases) {
return f->common.function_name;
}
function_table = &ce->function_table;
zend_hash_internal_pointer_reset_ex(function_table, &iterator);
while (zend_hash_get_current_data_ex(function_table, (void **)&func, &iterator) == SUCCESS) {
if (func == f) {
char *name;
uint len;
ulong idx;
if (zend_hash_get_current_key_ex(function_table, &name, &len, &idx, 0, &iterator) != HASH_KEY_IS_STRING) {
return f->common.function_name;
}
--len;
if (len == strlen(f->common.function_name) &&
!strncasecmp(name, f->common.function_name, len)) {
return f->common.function_name;
}
return zend_find_alias_name(f->common.scope, name, len);
}
zend_hash_move_forward_ex(function_table, &iterator);
}
return f->common.function_name;
}
/* }}} */
/*
* Local variables:
* tab-width: 4
+8 -3
View File
@@ -90,7 +90,7 @@ typedef struct _zend_fcall_info_cache {
#define ZEND_NS_RAW_FENTRY(ns, zend_name, name, arg_info, flags) ZEND_RAW_FENTRY(ZEND_NS_NAME(ns, zend_name), name, arg_info, flags)
#define ZEND_NS_RAW_NAMED_FE(ns, zend_name, name, arg_info) ZEND_NS_RAW_FENTRY(ns, #zend_name, name, arg_info, 0)
#define ZEND_NS_NAMED_FE(ns, zend_name, name, arg_info) ZEND_NS_FENTRY(ns, #zend_name, name, arg_info, 0)
#define ZEND_NS_NAMED_FE(ns, zend_name, name, arg_info) ZEND_NS_FENTRY(ns, zend_name, name, arg_info, 0)
#define ZEND_NS_FE(ns, name, arg_info) ZEND_NS_FENTRY(ns, name, ZEND_FN(name), arg_info, 0)
#define ZEND_NS_DEP_FE(ns, name, arg_info) ZEND_NS_FENTRY(ns, name, ZEND_FN(name), arg_info, ZEND_ACC_DEPRECATED)
#define ZEND_NS_FALIAS(ns, name, alias, arg_info) ZEND_NS_FENTRY(ns, name, ZEND_FN(alias), arg_info, 0)
@@ -426,6 +426,8 @@ ZEND_API int add_get_index_double(zval *arg, ulong idx, double d, void **dest);
ZEND_API int add_get_index_string(zval *arg, ulong idx, const char *str, void **dest, int duplicate);
ZEND_API int add_get_index_stringl(zval *arg, ulong idx, const char *str, uint length, void **dest, int duplicate);
ZEND_API int array_set_zval_key(HashTable *ht, zval *key, zval *value);
ZEND_API int add_property_long_ex(zval *arg, const char *key, uint key_len, long l TSRMLS_DC);
ZEND_API int add_property_null_ex(zval *arg, const char *key, uint key_len TSRMLS_DC);
ZEND_API int add_property_bool_ex(zval *arg, const char *key, uint key_len, int b TSRMLS_DC);
@@ -463,7 +465,7 @@ ZEND_API extern const zend_fcall_info_cache empty_fcall_info_cache;
*/
ZEND_API int zend_fcall_info_init(zval *callable, uint check_flags, zend_fcall_info *fci, zend_fcall_info_cache *fcc, char **callable_name, char **error TSRMLS_DC);
/** Clear argumens connected with zend_fcall_info *fci
/** Clear arguments connected with zend_fcall_info *fci
* If free_mem is not zero then the params array gets free'd as well
*/
ZEND_API void zend_fcall_info_args_clear(zend_fcall_info *fci, int free_mem);
@@ -501,7 +503,7 @@ ZEND_API int zend_fcall_info_argv(zend_fcall_info *fci TSRMLS_DC, int argc, va_l
ZEND_API int zend_fcall_info_argn(zend_fcall_info *fci TSRMLS_DC, int argc, ...);
/** Call a function using information created by zend_fcall_info_init()/args().
* If args is given then those replace the arguement info in fci is temporarily.
* If args is given then those replace the argument info in fci is temporarily.
*/
ZEND_API int zend_fcall_info_call(zend_fcall_info *fci, zend_fcall_info_cache *fcc, zval **retval, zval *args TSRMLS_DC);
@@ -519,6 +521,9 @@ ZEND_API void zend_reset_all_cv(HashTable *symbol_table TSRMLS_DC);
ZEND_API void zend_rebuild_symbol_table(TSRMLS_D);
ZEND_API const char* zend_find_alias_name(zend_class_entry *ce, const char *name, zend_uint len);
ZEND_API const char* zend_resolve_method_name(zend_class_entry *ce, zend_function *f);
#define add_method(arg, key, method) add_assoc_function((arg), (key), (method))
ZEND_API ZEND_FUNCTION(display_disabled_function);
+15 -6
View File
@@ -672,7 +672,7 @@ static inline unsigned int zend_mm_high_bit(size_t _size)
#elif defined(__GNUC__) && defined(__x86_64__)
unsigned long n;
__asm__("bsrq %1,%0\n\t" : "=r" (n) : "rm" (_size) : "cc");
__asm__("bsr %1,%0\n\t" : "=r" (n) : "rm" (_size) : "cc");
return (unsigned int)n;
#elif defined(_MSC_VER) && defined(_M_IX86)
__asm {
@@ -700,12 +700,12 @@ static inline unsigned int zend_mm_low_bit(size_t _size)
#elif defined(__GNUC__) && defined(__x86_64__)
unsigned long n;
__asm__("bsfq %1,%0\n\t" : "=r" (n) : "rm" (_size) : "cc");
__asm__("bsf %1,%0\n\t" : "=r" (n) : "rm" (_size) : "cc");
return (unsigned int)n;
#elif defined(_MSC_VER) && defined(_M_IX86)
__asm {
bsf eax, _size
}
}
#elif defined(__GNUC__) && (defined(__arm__) || defined(__aarch64__))
return __builtin_ctzl(_size);
#else
@@ -2465,7 +2465,7 @@ static inline size_t safe_address(size_t nmemb, size_t size, size_t offset)
size_t res = nmemb;
unsigned long overflow = 0;
__asm__ ("mull %3\n\taddl %4,%0\n\tadcl %1,%1"
__asm__ ("mull %3\n\taddl %4,%0\n\tadcl $0,%1"
: "=&a"(res), "=&d" (overflow)
: "%0"(res),
"rm"(size),
@@ -2485,12 +2485,21 @@ static inline size_t safe_address(size_t nmemb, size_t size, size_t offset)
size_t res = nmemb;
unsigned long overflow = 0;
__asm__ ("mulq %3\n\taddq %4,%0\n\tadcq %1,%1"
#ifdef __ILP32__ /* x32 */
# define LP_SUFF "l"
#else /* amd64 */
# define LP_SUFF "q"
#endif
__asm__ ("mul" LP_SUFF " %3\n\t"
"add %4,%0\n\t"
"adc $0,%1"
: "=&a"(res), "=&d" (overflow)
: "%0"(res),
"rm"(size),
"rm"(offset));
#undef LP_SUFF
if (UNEXPECTED(overflow)) {
zend_error_noreturn(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset);
return 0;
@@ -2526,7 +2535,7 @@ static inline size_t safe_address(size_t nmemb, size_t size, size_t offset)
size_t res;
unsigned long overflow;
__asm__ ("mul %0,%2,%3\n\tumulh %1,%2,%3\n\tadds %0,%0,%4\n\tadc %1,%1,%1"
__asm__ ("mul %0,%2,%3\n\tumulh %1,%2,%3\n\tadds %0,%0,%4\n\tadc %1,%1,xzr"
: "=&r"(res), "=&r"(overflow)
: "r"(nmemb),
"r"(size),
+61 -13
View File
@@ -1014,7 +1014,7 @@ ZEND_FUNCTION(get_object_vars)
while (zend_hash_get_current_data_ex(properties, (void **) &value, &pos) == SUCCESS) {
if (zend_hash_get_current_key_ex(properties, &key, &key_len, &num_index, 0, &pos) == HASH_KEY_IS_STRING) {
if (zend_check_property_access(zobj, key, key_len-1 TSRMLS_CC) == SUCCESS) {
zend_unmangle_property_name_ex(key, key_len - 1, &class_name, &prop_name, &prop_len);
zend_unmangle_property_name_ex(key, key_len - 1, &class_name, &prop_name, (int*) &prop_len);
/* Not separating references */
Z_ADDREF_PP(value);
add_assoc_zval_ex(return_value, prop_name, prop_len + 1, *value);
@@ -1025,6 +1025,13 @@ ZEND_FUNCTION(get_object_vars)
}
/* }}} */
static int same_name(const char *key, const char *name, zend_uint name_len)
{
char *lcname = zend_str_tolower_dup(name, name_len);
int ret = memcmp(lcname, key, name_len) == 0;
efree(lcname);
return ret;
}
/* {{{ proto array get_class_methods(mixed class)
Returns an array of method names for class or class instance. */
@@ -1072,14 +1079,26 @@ ZEND_FUNCTION(get_class_methods)
uint len = strlen(mptr->common.function_name);
/* Do not display old-style inherited constructors */
if ((mptr->common.fn_flags & ZEND_ACC_CTOR) == 0 ||
mptr->common.scope == ce ||
zend_hash_get_current_key_ex(&ce->function_table, &key, &key_len, &num_index, 0, &pos) != HASH_KEY_IS_STRING ||
zend_binary_strcasecmp(key, key_len-1, mptr->common.function_name, len) == 0) {
if (zend_hash_get_current_key_ex(&ce->function_table, &key, &key_len, &num_index, 0, &pos) != HASH_KEY_IS_STRING) {
MAKE_STD_ZVAL(method_name);
ZVAL_STRINGL(method_name, mptr->common.function_name, len, 1);
zend_hash_next_index_insert(return_value->value.ht, &method_name, sizeof(zval *), NULL);
} else if ((mptr->common.fn_flags & ZEND_ACC_CTOR) == 0 ||
mptr->common.scope == ce ||
zend_binary_strcasecmp(key, key_len-1, mptr->common.function_name, len) == 0) {
if (mptr->type == ZEND_USER_FUNCTION &&
*mptr->op_array.refcount > 1 &&
(len != key_len - 1 ||
!same_name(key, mptr->common.function_name, len))) {
MAKE_STD_ZVAL(method_name);
ZVAL_STRINGL(method_name, zend_find_alias_name(mptr->common.scope, key, key_len - 1), key_len - 1, 1);
zend_hash_next_index_insert(return_value->value.ht, &method_name, sizeof(zval *), NULL);
} else {
MAKE_STD_ZVAL(method_name);
ZVAL_STRINGL(method_name, mptr->common.function_name, len, 1);
zend_hash_next_index_insert(return_value->value.ht, &method_name, sizeof(zval *), NULL);
}
}
}
zend_hash_move_forward_ex(&ce->function_table, &pos);
@@ -1625,7 +1644,6 @@ ZEND_FUNCTION(restore_exception_handler)
}
/* }}} */
static int copy_class_or_interface_name(zend_class_entry **pce TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key)
{
zval *array = va_arg(args, zval *);
@@ -1636,7 +1654,13 @@ static int copy_class_or_interface_name(zend_class_entry **pce TSRMLS_DC, int nu
if ((hash_key->nKeyLength==0 || hash_key->arKey[0]!=0)
&& (comply_mask == (ce->ce_flags & mask))) {
add_next_index_stringl(array, ce->name, ce->name_length, 1);
if (ce->refcount > 1 &&
(ce->name_length != hash_key->nKeyLength - 1 ||
!same_name(hash_key->arKey, ce->name, ce->name_length))) {
add_next_index_stringl(array, hash_key->arKey, hash_key->nKeyLength - 1, 1);
} else {
add_next_index_stringl(array, ce->name, ce->name_length, 1);
}
}
return ZEND_HASH_APPLY_KEEP;
}
@@ -1887,6 +1911,11 @@ static int add_constant_info(zend_constant *constant, void *arg TSRMLS_DC)
zval *name_array = (zval *)arg;
zval *const_val;
if (!constant->name) {
/* skip special constants */
return 0;
}
MAKE_STD_ZVAL(const_val);
*const_val = constant->value;
zval_copy_ctor(const_val);
@@ -1954,11 +1983,16 @@ ZEND_FUNCTION(get_defined_constants)
while (zend_hash_get_current_data_ex(EG(zend_constants), (void **) &val, &pos) != FAILURE) {
zval *const_val;
if (!val->name) {
/* skip special constants */
goto next_constant;
}
if (val->module_number == PHP_USER_CONSTANT) {
module_number = i;
} else if (val->module_number > i || val->module_number < 0) {
/* should not happen */
goto bad_module_id;
goto next_constant;
} else {
module_number = val->module_number;
}
@@ -1975,7 +2009,7 @@ ZEND_FUNCTION(get_defined_constants)
INIT_PZVAL(const_val);
add_assoc_zval_ex(modules[module_number], val->name, val->name_len, const_val);
bad_module_id:
next_constant:
zend_hash_move_forward_ex(EG(zend_constants), &pos);
}
efree(module_names);
@@ -2079,7 +2113,14 @@ ZEND_FUNCTION(debug_print_backtrace)
lineno = 0;
}
function_name = ptr->function_state.function->common.function_name;
function_name = (ptr->function_state.function->common.scope &&
ptr->function_state.function->common.scope->trait_aliases) ?
zend_resolve_method_name(
ptr->object ?
Z_OBJCE_P(ptr->object) :
ptr->function_state.function->common.scope,
ptr->function_state.function) :
ptr->function_state.function->common.function_name;
if (function_name) {
if (ptr->object) {
@@ -2260,7 +2301,14 @@ ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int
filename = NULL;
}
function_name = ptr->function_state.function->common.function_name;
function_name = (ptr->function_state.function->common.scope &&
ptr->function_state.function->common.scope->trait_aliases) ?
zend_resolve_method_name(
ptr->object ?
Z_OBJCE_P(ptr->object) :
ptr->function_state.function->common.scope,
ptr->function_state.function) :
ptr->function_state.function->common.function_name;
if (function_name) {
add_assoc_string_ex(stack_frame, "function", sizeof("function"), (char*)function_name, 1);
@@ -2333,7 +2381,7 @@ ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int
MAKE_STD_ZVAL(arg_array);
array_init(arg_array);
/* include_filename always points to the last filename of the last last called-fuction.
/* include_filename always points to the last filename of the last last called-function.
if we have called include in the frame above - this is the file we have included.
*/
+8 -9
View File
@@ -5,7 +5,7 @@
| Copyright (c) 1998-2013 Zend Technologies Ltd. (http://www.zend.com) |
+----------------------------------------------------------------------+
| This source file is subject to version 2.00 of the Zend license, |
| that is bundled with this package in the file LICENSE, and is |
| that is bundled with this package in the file LICENSE, and is |
| available through the world-wide-web at the following url: |
| http://www.zend.com/license/2_00.txt. |
| If you did not receive a copy of the Zend license and are unable to |
@@ -88,7 +88,7 @@ ZEND_METHOD(Closure, bind)
RETURN_NULL();
}
closure = (zend_closure *)zend_object_store_get_object(zclosure TSRMLS_CC);
closure = (zend_closure *)zend_object_store_get_object(zclosure TSRMLS_CC);
if ((newthis != NULL) && (closure->func.common.fn_flags & ZEND_ACC_STATIC)) {
zend_error(E_WARNING, "Cannot bind an instance to a static closure");
@@ -152,7 +152,7 @@ static int zend_closure_compare_objects(zval *o1, zval *o2 TSRMLS_DC) /* {{{ */
ZEND_API zend_function *zend_get_closure_invoke_method(zval *obj TSRMLS_DC) /* {{{ */
{
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
zend_function *invoke = (zend_function*)emalloc(sizeof(zend_function));
invoke->common = closure->func.common;
@@ -168,14 +168,14 @@ ZEND_API zend_function *zend_get_closure_invoke_method(zval *obj TSRMLS_DC) /* {
ZEND_API const zend_function *zend_get_closure_method_def(zval *obj TSRMLS_DC) /* {{{ */
{
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
return &closure->func;
}
/* }}} */
ZEND_API zval* zend_get_closure_this_ptr(zval *obj TSRMLS_DC) /* {{{ */
{
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
return closure->this_ptr;
}
/* }}} */
@@ -212,7 +212,7 @@ static void zend_closure_write_property(zval *object, zval *member, zval *value,
}
/* }}} */
static zval **zend_closure_get_property_ptr_ptr(zval *object, zval *member, const zend_literal *key TSRMLS_DC) /* {{{ */
static zval **zend_closure_get_property_ptr_ptr(zval *object, zval *member, int type, const zend_literal *key TSRMLS_DC) /* {{{ */
{
ZEND_CLOSURE_PROPERTY_ERROR();
return NULL;
@@ -291,7 +291,6 @@ static zend_object_value zend_closure_clone(zval *zobject TSRMLS_DC) /* {{{ */
}
/* }}} */
int zend_closure_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zval **zobj_ptr TSRMLS_DC) /* {{{ */
{
zend_closure *closure;
@@ -378,7 +377,7 @@ static HashTable *zend_closure_get_debug_info(zval *object, int *is_temp TSRMLS_
static HashTable *zend_closure_get_gc(zval *obj, zval ***table, int *n TSRMLS_DC) /* {{{ */
{
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
zend_closure *closure = (zend_closure *)zend_object_store_get_object(obj TSRMLS_CC);
*table = closure->this_ptr ? &closure->this_ptr : NULL;
*n = closure->this_ptr ? 1 : 0;
@@ -474,7 +473,7 @@ ZEND_API void zend_create_closure(zval *res, zend_function *func, zend_class_ent
zend_error(E_WARNING, "Cannot bind function %s::%s to scope class %s", func->common.scope->name, func->common.function_name, scope->name);
scope = NULL;
}
if(scope && this_ptr && (func->common.fn_flags & ZEND_ACC_STATIC) == 0 &&
if(scope && this_ptr && (func->common.fn_flags & ZEND_ACC_STATIC) == 0 &&
!instanceof_function(Z_OBJCE_P(this_ptr), closure->func.common.scope TSRMLS_CC)) {
zend_error(E_WARNING, "Cannot bind function %s::%s to object of class %s", func->common.scope->name, func->common.function_name, Z_OBJCE_P(this_ptr)->name);
scope = NULL;
-2
View File
@@ -24,8 +24,6 @@
BEGIN_EXTERN_C()
#define ZEND_INVOKE_FUNC_NAME "__invoke"
void zend_register_closure_ce(TSRMLS_D);
extern ZEND_API zend_class_entry *zend_ce_closure;
+29 -15
View File
@@ -288,7 +288,7 @@ ZEND_API zend_bool zend_is_compiling(TSRMLS_D) /* {{{ */
static zend_uint get_temporary_variable(zend_op_array *op_array) /* {{{ */
{
return (zend_uint)EX_TMP_VAR_NUM(0, (op_array->T)++);
return (zend_uint)(zend_uintptr_t)EX_TMP_VAR_NUM(0, (op_array->T)++);
}
/* }}} */
@@ -1621,6 +1621,10 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
zend_error(E_WARNING, "The magic method __toString() must have public visibility and cannot be static");
}
} else if ((name_len == sizeof(ZEND_INVOKE_FUNC_NAME)-1) && (!memcmp(lcname, ZEND_INVOKE_FUNC_NAME, sizeof(ZEND_INVOKE_FUNC_NAME)-1))) {
if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
zend_error(E_WARNING, "The magic method __invoke() must have public visibility and cannot be static");
}
}
} else {
char *class_lcname;
@@ -1677,6 +1681,10 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
zend_error(E_WARNING, "The magic method __toString() must have public visibility and cannot be static");
}
CG(active_class_entry)->__tostring = (zend_function *) CG(active_op_array);
} else if ((name_len == sizeof(ZEND_INVOKE_FUNC_NAME)-1) && (!memcmp(lcname, ZEND_INVOKE_FUNC_NAME, sizeof(ZEND_INVOKE_FUNC_NAME)-1))) {
if (fn_flags & ((ZEND_ACC_PPP_MASK | ZEND_ACC_STATIC) ^ ZEND_ACC_PUBLIC)) {
zend_error(E_WARNING, "The magic method __invoke() must have public visibility and cannot be static");
}
} else if (!(fn_flags & ZEND_ACC_STATIC)) {
CG(active_op_array)->fn_flags |= ZEND_ACC_ALLOW_STATIC;
}
@@ -1726,7 +1734,7 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
}
{
/* Push a seperator to the switch stack */
/* Push a separator to the switch stack */
zend_switch_entry switch_entry;
switch_entry.cond.op_type = IS_UNUSED;
@@ -1801,7 +1809,7 @@ void zend_do_end_function_declaration(const znode *function_token TSRMLS_DC) /*
zend_do_return(NULL, 0 TSRMLS_CC);
pass_two(CG(active_op_array) TSRMLS_CC);
zend_release_labels(TSRMLS_C);
zend_release_labels(0 TSRMLS_CC);
if (CG(active_class_entry)) {
zend_check_magic_method_implementation(CG(active_class_entry), (zend_function*)CG(active_op_array), E_COMPILE_ERROR TSRMLS_CC);
@@ -1820,7 +1828,7 @@ void zend_do_end_function_declaration(const znode *function_token TSRMLS_DC) /*
CG(active_op_array) = function_token->u.op_array;
/* Pop the switch and foreach seperators */
/* Pop the switch and foreach separators */
zend_stack_del_top(&CG(switch_cond_stack));
zend_stack_del_top(&CG(foreach_copy_stack));
}
@@ -2383,13 +2391,14 @@ void zend_do_goto(const znode *label TSRMLS_DC) /* {{{ */
}
/* }}} */
void zend_release_labels(TSRMLS_D) /* {{{ */
void zend_release_labels(int temporary TSRMLS_DC) /* {{{ */
{
if (CG(context).labels) {
zend_hash_destroy(CG(context).labels);
FREE_HASHTABLE(CG(context).labels);
CG(context).labels = NULL;
}
if (!zend_stack_is_empty(&CG(context_stack))) {
if (!temporary && !zend_stack_is_empty(&CG(context_stack))) {
zend_compiler_context *ctx;
zend_stack_top(&CG(context_stack), (void**)&ctx);
@@ -2662,7 +2671,7 @@ static int generate_free_foreach_copy(const zend_op *foreach_copy TSRMLS_DC) /*
{
zend_op *opline;
/* If we reach the seperator then stop applying the stack */
/* If we reach the separator then stop applying the stack */
if (foreach_copy->result_type == IS_UNUSED && foreach_copy->op1_type == IS_UNUSED) {
return 1;
}
@@ -3455,11 +3464,11 @@ static void do_inheritance_check_on_method(zend_function *child, zend_function *
if (child->common.prototype && (child->common.prototype->common.fn_flags & ZEND_ACC_ABSTRACT)) {
if (!zend_do_perform_implementation_check(child, child->common.prototype TSRMLS_CC)) {
zend_error(E_COMPILE_ERROR, "Declaration of %s::%s() must be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, zend_get_function_declaration(child->common.prototype? child->common.prototype : parent TSRMLS_CC));
zend_error(E_COMPILE_ERROR, "Declaration of %s::%s() must be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, zend_get_function_declaration(child->common.prototype TSRMLS_CC));
}
} else if (EG(error_reporting) & E_STRICT || EG(user_error_handler)) { /* Check E_STRICT (or custom error handler) before the check so that we save some time */
if (!zend_do_perform_implementation_check(child, parent TSRMLS_CC)) {
char *method_prototype = zend_get_function_declaration(child->common.prototype? child->common.prototype : parent TSRMLS_CC);
char *method_prototype = zend_get_function_declaration(parent TSRMLS_CC);
zend_error(E_STRICT, "Declaration of %s::%s() should be compatible with %s", ZEND_FN_SCOPE_NAME(child), child->common.function_name, method_prototype);
efree(method_prototype);
}
@@ -3823,7 +3832,7 @@ static zend_bool zend_traits_method_compatibility_check(zend_function *fn, zend_
zend_uint other_flags = other_fn->common.scope->ce_flags;
return zend_do_perform_implementation_check(fn, other_fn TSRMLS_CC)
&& zend_do_perform_implementation_check(other_fn, fn TSRMLS_CC)
&& ((other_fn->common.scope->ce_flags & ZEND_ACC_INTERFACE) || zend_do_perform_implementation_check(other_fn, fn TSRMLS_CC))
&& ((fn_flags & (ZEND_ACC_FINAL|ZEND_ACC_STATIC)) ==
(other_flags & (ZEND_ACC_FINAL|ZEND_ACC_STATIC))); /* equal final and static qualifier */
}
@@ -3932,7 +3941,7 @@ static void zend_add_trait_method(zend_class_entry *ce, const char *name, const
#endif
} else {
/* inherited members are overridden by members inserted by traits */
/* check whether the trait method fullfills the inheritance requirements */
/* check whether the trait method fulfills the inheritance requirements */
do_inheritance_check_on_method(fn, existing_fn TSRMLS_CC);
}
}
@@ -4048,12 +4057,16 @@ static void zend_check_trait_usage(zend_class_entry *ce, zend_class_entry *trait
{
zend_uint i;
if ((trait->ce_flags & ZEND_ACC_TRAIT) != ZEND_ACC_TRAIT) {
zend_error(E_COMPILE_ERROR, "Class %s is not a trait, Only traits may be used in 'as' and 'insteadof' statements", trait->name);
}
for (i = 0; i < ce->num_traits; i++) {
if (ce->traits[i] == trait) {
return;
}
}
zend_error(E_COMPILE_ERROR, "Trait %s is not used", trait->name);
zend_error(E_COMPILE_ERROR, "Required Trait %s wasn't added to %s", trait->name, ce->name);
}
/* }}} */
@@ -4095,7 +4108,7 @@ static void zend_traits_init_trait_structures(zend_class_entry *ce TSRMLS_DC) /*
/** With the other traits, we are more permissive.
We do not give errors for those. This allows to be more
defensive in such definitions.
However, we want to make sure that the insteadof declartion
However, we want to make sure that the insteadof declaration
is consistent in itself.
*/
j = 0;
@@ -5674,7 +5687,7 @@ void zend_do_shell_exec(znode *result, const znode *cmd TSRMLS_DC) /* {{{ */
break;
}
SET_NODE(opline->op1, cmd);
opline->op2.opline_num = 0;
opline->op2.opline_num = 1;
opline->extended_value = ZEND_DO_FCALL;
SET_UNUSED(opline->op2);
@@ -5689,6 +5702,7 @@ void zend_do_shell_exec(znode *result, const znode *cmd TSRMLS_DC) /* {{{ */
GET_CACHE_SLOT(opline->op1.constant);
opline->extended_value = 1;
SET_UNUSED(opline->op2);
opline->op2.num = CG(context).nested_calls;
GET_NODE(result, opline->result);
if (CG(context).nested_calls + 1 > CG(active_op_array)->nested_calls) {
@@ -7162,7 +7176,7 @@ ZEND_API size_t zend_dirname(char *path, size_t len)
}
#elif defined(NETWARE)
/*
* Find the first occurence of : from the left
* Find the first occurrence of : from the left
* move the path pointer to the position just after :
* increment the len_adjust to the length of path till colon character(inclusive)
* If there is no character beyond : simple return len
+2 -1
View File
@@ -643,7 +643,7 @@ void zend_do_resolve_class_name(znode *result, znode *class_name, int is_static
void zend_do_label(znode *label TSRMLS_DC);
void zend_do_goto(const znode *label TSRMLS_DC);
void zend_resolve_goto_label(zend_op_array *op_array, zend_op *opline, int pass2 TSRMLS_DC);
void zend_release_labels(TSRMLS_D);
void zend_release_labels(int temporary TSRMLS_DC);
ZEND_API void function_add_ref(zend_function *function);
@@ -856,6 +856,7 @@ END_EXTERN_C()
#define ZEND_CALLSTATIC_FUNC_NAME "__callstatic"
#define ZEND_TOSTRING_FUNC_NAME "__tostring"
#define ZEND_AUTOLOAD_FUNC_NAME "__autoload"
#define ZEND_INVOKE_FUNC_NAME "__invoke"
/* The following constants may be combined in CG(compiler_options)
* to change the default compiler behavior */
+11 -11
View File
@@ -24,7 +24,7 @@
#ifdef HAVE_DTRACE
/* PHP DTrace probes {{{ */
static inline char *dtrace_get_executed_filename(TSRMLS_D)
static inline const char *dtrace_get_executed_filename(TSRMLS_D)
{
if (EG(current_execute_data) && EG(current_execute_data)->op_array) {
return EG(current_execute_data)->op_array->filename;
@@ -36,9 +36,9 @@ static inline char *dtrace_get_executed_filename(TSRMLS_D)
ZEND_API zend_op_array *dtrace_compile_file(zend_file_handle *file_handle, int type TSRMLS_DC)
{
zend_op_array *res;
DTRACE_COMPILE_FILE_ENTRY(file_handle->opened_path, file_handle->filename);
DTRACE_COMPILE_FILE_ENTRY(file_handle->opened_path, (char *)file_handle->filename);
res = compile_file(file_handle, type TSRMLS_CC);
DTRACE_COMPILE_FILE_RETURN(file_handle->opened_path, file_handle->filename);
DTRACE_COMPILE_FILE_RETURN(file_handle->opened_path, (char *)file_handle->filename);
return res;
}
@@ -47,7 +47,7 @@ ZEND_API zend_op_array *dtrace_compile_file(zend_file_handle *file_handle, int t
ZEND_API void dtrace_execute_ex(zend_execute_data *execute_data TSRMLS_DC)
{
int lineno;
char *scope, *filename, *funcname, *classname;
const char *scope, *filename, *funcname, *classname;
scope = filename = funcname = classname = NULL;
/* we need filename and lineno for both execute and function probes */
@@ -65,41 +65,41 @@ ZEND_API void dtrace_execute_ex(zend_execute_data *execute_data TSRMLS_DC)
}
if (DTRACE_EXECUTE_ENTRY_ENABLED()) {
DTRACE_EXECUTE_ENTRY(filename, lineno);
DTRACE_EXECUTE_ENTRY((char *)filename, lineno);
}
if (DTRACE_FUNCTION_ENTRY_ENABLED() && funcname != NULL) {
DTRACE_FUNCTION_ENTRY(funcname, filename, lineno, classname, scope);
DTRACE_FUNCTION_ENTRY((char *)funcname, (char *)filename, lineno, (char *)classname, (char *)scope);
}
execute_ex(execute_data TSRMLS_CC);
if (DTRACE_FUNCTION_RETURN_ENABLED() && funcname != NULL) {
DTRACE_FUNCTION_RETURN(funcname, filename, lineno, classname, scope);
DTRACE_FUNCTION_RETURN((char *)funcname, (char *)filename, lineno, (char *)classname, (char *)scope);
}
if (DTRACE_EXECUTE_RETURN_ENABLED()) {
DTRACE_EXECUTE_RETURN(filename, lineno);
DTRACE_EXECUTE_RETURN((char *)filename, lineno);
}
}
ZEND_API void dtrace_execute_internal(zend_execute_data *execute_data_ptr, zend_fcall_info *fci, int return_value_used TSRMLS_DC)
{
int lineno;
char *filename;
const char *filename;
if (DTRACE_EXECUTE_ENTRY_ENABLED() || DTRACE_EXECUTE_RETURN_ENABLED()) {
filename = dtrace_get_executed_filename(TSRMLS_C);
lineno = zend_get_executed_lineno(TSRMLS_C);
}
if (DTRACE_EXECUTE_ENTRY_ENABLED()) {
DTRACE_EXECUTE_ENTRY(filename, lineno);
DTRACE_EXECUTE_ENTRY((char *)filename, lineno);
}
execute_internal(execute_data_ptr, fci, return_value_used TSRMLS_CC);
if (DTRACE_EXECUTE_RETURN_ENABLED()) {
DTRACE_EXECUTE_RETURN(filename, lineno);
DTRACE_EXECUTE_RETURN((char *)filename, lineno);
}
}
+12 -4
View File
@@ -85,12 +85,12 @@ void zend_throw_exception_internal(zval *exception TSRMLS_DC) /* {{{ */
{
#ifdef HAVE_DTRACE
if (DTRACE_EXCEPTION_THROWN_ENABLED()) {
char *classname;
int name_len;
const char *classname;
zend_uint name_len;
if (exception != NULL) {
zend_get_object_classname(exception, &classname, &name_len TSRMLS_CC);
DTRACE_EXCEPTION_THROWN(classname);
DTRACE_EXCEPTION_THROWN((char *)classname);
} else {
DTRACE_EXCEPTION_THROWN(NULL);
}
@@ -817,6 +817,10 @@ ZEND_API void zend_exception_error(zval *exception, int severity TSRMLS_DC) /* {
if (instanceof_function(ce_exception, default_exception_ce TSRMLS_CC)) {
file = zend_read_property(default_exception_ce, EG(exception), "file", sizeof("file")-1, 1 TSRMLS_CC);
line = zend_read_property(default_exception_ce, EG(exception), "line", sizeof("line")-1, 1 TSRMLS_CC);
convert_to_string(file);
file = (Z_STRLEN_P(file) > 0) ? file : NULL;
line = (Z_TYPE_P(line) == IS_LONG) ? line : NULL;
} else {
file = NULL;
line = NULL;
@@ -828,7 +832,11 @@ ZEND_API void zend_exception_error(zval *exception, int severity TSRMLS_DC) /* {
file = zend_read_property(default_exception_ce, exception, "file", sizeof("file")-1, 1 TSRMLS_CC);
line = zend_read_property(default_exception_ce, exception, "line", sizeof("line")-1, 1 TSRMLS_CC);
zend_error_va(severity, Z_STRVAL_P(file), Z_LVAL_P(line), "Uncaught %s\n thrown", Z_STRVAL_P(str));
convert_to_string(str);
convert_to_string(file);
convert_to_long(line);
zend_error_va(severity, (Z_STRLEN_P(file) > 0) ? Z_STRVAL_P(file) : NULL, Z_LVAL_P(line), "Uncaught %s\n thrown", Z_STRVAL_P(str));
} else {
zend_error(severity, "Uncaught exception '%s'", ce_exception->name);
}
+11 -13
View File
@@ -898,13 +898,10 @@ static inline zval* zend_assign_to_variable(zval **variable_ptr_ptr, zval *value
} else if (EXPECTED(!PZVAL_IS_REF(value))) {
Z_ADDREF_P(value);
*variable_ptr_ptr = value;
if (EXPECTED(variable_ptr != &EG(uninitialized_zval))) {
GC_REMOVE_ZVAL_FROM_BUFFER(variable_ptr);
zval_dtor(variable_ptr);
efree(variable_ptr);
} else {
Z_DELREF_P(variable_ptr);
}
ZEND_ASSERT(variable_ptr != &EG(uninitialized_zval));
GC_REMOVE_ZVAL_FROM_BUFFER(variable_ptr);
zval_dtor(variable_ptr);
efree(variable_ptr);
return value;
} else {
goto copy_value;
@@ -1147,6 +1144,10 @@ convert_to_array:
zend_error_noreturn(E_ERROR, "[] operator not supported for strings");
}
if (type != BP_VAR_UNSET) {
SEPARATE_ZVAL_IF_NOT_REF(container_ptr);
}
if (Z_TYPE_P(dim) != IS_LONG) {
switch(Z_TYPE_P(dim)) {
@@ -1175,9 +1176,6 @@ convert_to_array:
convert_to_long(&tmp);
dim = &tmp;
}
if (type != BP_VAR_UNSET) {
SEPARATE_ZVAL_IF_NOT_REF(container_ptr);
}
container = *container_ptr;
result->str_offset.str = container;
PZVAL_LOCK(container);
@@ -1384,7 +1382,7 @@ static void zend_fetch_property_address(temp_variable *result, zval **container_
}
if (Z_OBJ_HT_P(container)->get_property_ptr_ptr) {
zval **ptr_ptr = Z_OBJ_HT_P(container)->get_property_ptr_ptr(container, prop_ptr, key TSRMLS_CC);
zval **ptr_ptr = Z_OBJ_HT_P(container)->get_property_ptr_ptr(container, prop_ptr, type, key TSRMLS_CC);
if (NULL == ptr_ptr) {
zval *ptr;
@@ -1523,9 +1521,9 @@ void zend_free_compiled_variables(zend_execute_data *execute_data) /* {{{ */
}
/* }}} */
/*
/*
* Stack Frame Layout (the whole stack frame is allocated at once)
* ==================
* ==================
*
* +========================================+
* | zend_execute_data |<---+
+4 -6
View File
@@ -254,15 +254,13 @@ void shutdown_executor(TSRMLS_D) /* {{{ */
if (EG(user_error_handler)) {
zeh = EG(user_error_handler);
EG(user_error_handler) = NULL;
zval_dtor(zeh);
FREE_ZVAL(zeh);
zval_ptr_dtor(&zeh);
}
if (EG(user_exception_handler)) {
zeh = EG(user_exception_handler);
EG(user_exception_handler) = NULL;
zval_dtor(zeh);
FREE_ZVAL(zeh);
zval_ptr_dtor(&zeh);
}
zend_stack_destroy(&EG(user_error_handlers_error_reporting));
@@ -1056,7 +1054,7 @@ ZEND_API int zend_lookup_class_ex(const char *name, int name_length, const zend_
}
/* The compiler is not-reentrant. Make sure we __autoload() only during run-time
* (doesn't impact fuctionality of __autoload()
* (doesn't impact functionality of __autoload()
*/
if (!use_autoload || zend_is_compiling(TSRMLS_C)) {
if (!key) {
@@ -1295,7 +1293,7 @@ void execute_new_code(TSRMLS_D) /* {{{ */
opline++;
}
zend_release_labels(TSRMLS_C);
zend_release_labels(1 TSRMLS_CC);
EG(return_value_ptr_ptr) = NULL;
EG(active_op_array) = CG(active_op_array);
+4 -2
View File
@@ -65,11 +65,13 @@ extern ZEND_API void zend_ensure_fpu_mode(TSRMLS_D);
MS Visual C:
- Since MSVC users tipically don't use autoconf or CMake, we will detect
MSVC via compile time define.
MSVC via compile time define. Floating point precision change isn't
supported on 64 bit platforms, so it's NOP. See
http://msdn.microsoft.com/en-us/library/c9676k6h(v=vs.110).aspx
*/
/* MSVC detection (MSVC people usually don't use autoconf) */
#ifdef _MSC_VER
#if defined(_MSC_VER) && !defined(_WIN64)
# if _MSC_VER >= 1500
/* Visual C++ 2008 or higher, supports _controlfp_s */
# define HAVE__CONTROLFP_S
+2 -2
View File
@@ -106,7 +106,7 @@ typedef struct _zend_gc_globals {
gc_root_buffer *first_unused; /* pointer to first unused buffer */
gc_root_buffer *last_unused; /* pointer to last unused buffer */
zval_gc_info *zval_to_free; /* temporaryt list of zvals to free */
zval_gc_info *zval_to_free; /* temporary list of zvals to free */
zval_gc_info *free_list;
zval_gc_info *next_to_free;
@@ -199,7 +199,7 @@ static zend_always_inline void gc_remove_from_buffer(gc_root_buffer *root TSRMLS
GC_ZVAL_INIT(z); \
} while (0)
/* The following macroses override macroses from zend_alloc.h */
/* The following macros override macros from zend_alloc.h */
#undef ALLOC_ZVAL
#define ALLOC_ZVAL(z) \
do { \
+12 -189
View File
@@ -55,6 +55,12 @@ ZEND_API void zend_generator_close(zend_generator *generator, zend_bool finished
zval_ptr_dtor(&execute_data->current_this);
}
/* A fatal error / die occurred during the generator execution. Trying to clean
* up the stack may not be safe in this case. */
if (CG(unclean_shutdown)) {
return;
}
/* If the generator is closed before it can finish execution (reach
* a return statement) we have to free loop variables manually, as
* we don't know whether the SWITCH_FREE / FREE opcodes have run */
@@ -196,175 +202,6 @@ static void zend_generator_free_storage(zend_generator *generator TSRMLS_DC) /*
}
/* }}} */
static zend_object_value zend_generator_clone(zval *object TSRMLS_DC) /* {{{ */
{
zend_generator *orig = zend_object_store_get_object(object TSRMLS_CC);
zend_object_value clone_val = zend_generator_create(Z_OBJCE_P(object) TSRMLS_CC);
zend_generator *clone = zend_object_store_get_object_by_handle(clone_val.handle TSRMLS_CC);
zend_objects_clone_members(
&clone->std, clone_val, &orig->std, Z_OBJ_HANDLE_P(object) TSRMLS_CC
);
clone->execute_data = orig->execute_data;
clone->largest_used_integer_key = orig->largest_used_integer_key;
clone->flags = orig->flags;
if (orig->execute_data) {
/* Create a few shorter aliases to the old execution data */
zend_execute_data *execute_data = orig->execute_data;
zend_op_array *op_array = execute_data->op_array;
HashTable *symbol_table = execute_data->symbol_table;
zend_execute_data *current_execute_data;
zend_op **opline_ptr;
HashTable *current_symbol_table;
zend_vm_stack current_stack;
zval *current_this;
void **stack_frame, **orig_stack_frame;
/* Create new execution context. We have to back up and restore
* EG(current_execute_data), EG(opline_ptr), EG(active_symbol_table)
* and EG(This) here because the function modifies or uses them */
current_execute_data = EG(current_execute_data);
EG(current_execute_data) = execute_data->prev_execute_data;
opline_ptr = EG(opline_ptr);
current_symbol_table = EG(active_symbol_table);
EG(active_symbol_table) = execute_data->symbol_table;
current_this = EG(This);
EG(This) = NULL;
current_stack = EG(argument_stack);
clone->execute_data = zend_create_execute_data_from_op_array(op_array, 0 TSRMLS_CC);
clone->stack = EG(argument_stack);
EG(argument_stack) = current_stack;
EG(This) = current_this;
EG(active_symbol_table) = current_symbol_table;
EG(current_execute_data) = current_execute_data;
EG(opline_ptr) = opline_ptr;
/* copy */
clone->execute_data->opline = execute_data->opline;
clone->execute_data->function_state = execute_data->function_state;
clone->execute_data->object = execute_data->object;
clone->execute_data->current_scope = execute_data->current_scope;
clone->execute_data->current_called_scope = execute_data->current_called_scope;
clone->execute_data->fast_ret = execute_data->fast_ret;
if (!symbol_table) {
int i;
/* Copy compiled variables */
for (i = 0; i < op_array->last_var; i++) {
if (*EX_CV_NUM(execute_data, i)) {
*EX_CV_NUM(clone->execute_data, i) = (zval **) EX_CV_NUM(clone->execute_data, op_array->last_var + i);
**EX_CV_NUM(clone->execute_data, i) = *(zval **) EX_CV_NUM(execute_data, op_array->last_var + i);
Z_ADDREF_PP(*EX_CV_NUM(clone->execute_data, i));
}
}
} else {
/* Copy symbol table */
ALLOC_HASHTABLE(clone->execute_data->symbol_table);
zend_hash_init(clone->execute_data->symbol_table, zend_hash_num_elements(symbol_table), NULL, ZVAL_PTR_DTOR, 0);
zend_hash_copy(clone->execute_data->symbol_table, symbol_table, (copy_ctor_func_t) zval_add_ref, NULL, sizeof(zval *));
/* Update zval** pointers for compiled variables */
{
int i;
for (i = 0; i < op_array->last_var; i++) {
if (zend_hash_quick_find(clone->execute_data->symbol_table, op_array->vars[i].name, op_array->vars[i].name_len + 1, op_array->vars[i].hash_value, (void **) EX_CV_NUM(clone->execute_data, i)) == FAILURE) {
*EX_CV_NUM(clone->execute_data, i) = NULL;
}
}
}
}
/* Copy nested-calls stack */
if (execute_data->call) {
clone->execute_data->call = clone->execute_data->call_slots +
(execute_data->call - execute_data->call_slots);
} else {
clone->execute_data->call = NULL;
}
memcpy(clone->execute_data->call_slots, execute_data->call_slots, ZEND_MM_ALIGNED_SIZE(sizeof(call_slot)) * op_array->nested_calls);
if (clone->execute_data->call >= clone->execute_data->call_slots) {
call_slot *call = clone->execute_data->call;
while (call >= clone->execute_data->call_slots) {
if (call->object) {
Z_ADDREF_P(call->object);
}
call--;
}
}
/* Copy the temporary variables */
memcpy(EX_TMP_VAR_NUM(clone->execute_data, op_array->T-1), EX_TMP_VAR_NUM(execute_data, op_array->T-1), ZEND_MM_ALIGNED_SIZE(sizeof(temp_variable)) * op_array->T);
/* Copy arguments passed on stack */
stack_frame = zend_vm_stack_frame_base(clone->execute_data);
orig_stack_frame = zend_vm_stack_frame_base(execute_data);
clone->stack->top = stack_frame + (orig->stack->top - orig_stack_frame);
if (clone->stack->top != stack_frame) {
memcpy(stack_frame, orig_stack_frame, ZEND_MM_ALIGNED_SIZE(sizeof(zval*)) * (orig->stack->top - orig_stack_frame));
while (clone->stack->top != stack_frame) {
Z_ADDREF_PP((zval**)stack_frame);
stack_frame++;
}
}
/* Add references to loop variables */
{
zend_uint op_num = execute_data->opline - op_array->opcodes;
int i;
for (i = 0; i < op_array->last_brk_cont; ++i) {
zend_brk_cont_element *brk_cont = op_array->brk_cont_array + i;
if (brk_cont->start < 0) {
continue;
} else if (brk_cont->start > op_num) {
break;
} else if (brk_cont->brk > op_num) {
zend_op *brk_opline = op_array->opcodes + brk_cont->brk;
if (brk_opline->opcode == ZEND_SWITCH_FREE) {
temp_variable *var = EX_TMP_VAR(execute_data, brk_opline->op1.var);
Z_ADDREF_P(var->var.ptr);
}
}
}
}
/* Update the send_target to use the temporary variable with the same
* offset as the original generator, but in our temporary variable
* memory segment. */
if (orig->send_target) {
size_t offset = (char *) orig->send_target - (char *)execute_data;
clone->send_target = EX_TMP_VAR(clone->execute_data, offset);
zval_copy_ctor(&clone->send_target->tmp_var);
}
if (execute_data->current_this) {
clone->execute_data->current_this = execute_data->current_this;
Z_ADDREF_P(execute_data->current_this);
}
}
/* The value and key are known not to be references, so simply add refs */
if (orig->value) {
clone->value = orig->value;
Z_ADDREF_P(orig->value);
}
if (orig->key) {
clone->key = orig->key;
Z_ADDREF_P(orig->key);
}
return clone_val;
}
/* }}} */
static zend_object_value zend_generator_create(zend_class_entry *class_type TSRMLS_DC) /* {{{ */
{
zend_generator *generator;
@@ -755,31 +592,17 @@ static void zend_generator_iterator_get_data(zend_object_iterator *iterator, zva
}
/* }}} */
static int zend_generator_iterator_get_key(zend_object_iterator *iterator, char **str_key, uint *str_key_len, ulong *int_key TSRMLS_DC) /* {{{ */
static void zend_generator_iterator_get_key(zend_object_iterator *iterator, zval *key TSRMLS_DC) /* {{{ */
{
zend_generator *generator = (zend_generator *) iterator->data;
zend_generator_ensure_initialized(generator TSRMLS_CC);
if (!generator->key) {
return HASH_KEY_NON_EXISTANT;
if (generator->key) {
ZVAL_ZVAL(key, generator->key, 1, 0);
} else {
ZVAL_NULL(key);
}
if (Z_TYPE_P(generator->key) == IS_LONG) {
*int_key = Z_LVAL_P(generator->key);
return HASH_KEY_IS_LONG;
}
if (Z_TYPE_P(generator->key) == IS_STRING) {
*str_key = estrndup(Z_STRVAL_P(generator->key), Z_STRLEN_P(generator->key));
*str_key_len = Z_STRLEN_P(generator->key) + 1;
return HASH_KEY_IS_STRING;
}
/* Waiting for Etienne's patch to allow arbitrary zval keys. Until then
* error out on non-int and non-string keys. */
zend_error_noreturn(E_ERROR, "Currently only int and string keys can be yielded");
return HASH_KEY_NON_EXISTANT; /* Nerver reached */
}
/* }}} */
@@ -881,7 +704,7 @@ void zend_register_generator_ce(TSRMLS_D) /* {{{ */
memcpy(&zend_generator_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers));
zend_generator_handlers.get_constructor = zend_generator_get_constructor;
zend_generator_handlers.clone_obj = zend_generator_clone;
zend_generator_handlers.clone_obj = NULL;
}
/* }}} */
+3 -1
View File
@@ -22,8 +22,8 @@
#define ZEND_GENERATORS_H
BEGIN_EXTERN_C()
extern ZEND_API zend_class_entry *zend_ce_generator;
END_EXTERN_C()
typedef struct _zend_generator_iterator {
zend_object_iterator intern;
@@ -66,6 +66,8 @@ ZEND_API zval *zend_generator_create_zval(zend_op_array *op_array TSRMLS_DC);
ZEND_API void zend_generator_close(zend_generator *generator, zend_bool finished_execution TSRMLS_DC);
ZEND_API void zend_generator_resume(zend_generator *generator TSRMLS_DC);
END_EXTERN_C()
#endif
/*
+1 -1
View File
@@ -302,7 +302,7 @@ struct _zend_php_scanner_globals {
unsigned char *script_filtered;
size_t script_filtered_size;
/* input/ouput filters */
/* input/output filters */
zend_encoding_filter input_filter;
zend_encoding_filter output_filter;
const zend_encoding *script_encoding;
+23 -5
View File
@@ -527,6 +527,7 @@ ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint n
if (ht->pInternalPointer == p) {
ht->pInternalPointer = p->pListNext;
}
ht->nNumOfElements--;
if (ht->pDestructor) {
ht->pDestructor(p->pData);
}
@@ -535,7 +536,6 @@ ZEND_API int zend_hash_del_key_or_index(HashTable *ht, const char *arKey, uint n
}
pefree(p, ht->persistent);
HANDLE_UNBLOCK_INTERRUPTIONS();
ht->nNumOfElements--;
return SUCCESS;
}
p = p->pNext;
@@ -1168,9 +1168,27 @@ ZEND_API int zend_hash_get_current_key_ex(const HashTable *ht, char **str_index,
return HASH_KEY_IS_LONG;
}
}
return HASH_KEY_NON_EXISTANT;
return HASH_KEY_NON_EXISTENT;
}
ZEND_API void zend_hash_get_current_key_zval_ex(const HashTable *ht, zval *key, HashPosition *pos) {
Bucket *p;
IS_CONSISTENT(ht);
p = pos ? (*pos) : ht->pInternalPointer;
if (!p) {
Z_TYPE_P(key) = IS_NULL;
} else if (p->nKeyLength) {
Z_TYPE_P(key) = IS_STRING;
Z_STRVAL_P(key) = estrndup(p->arKey, p->nKeyLength - 1);
Z_STRLEN_P(key) = p->nKeyLength - 1;
} else {
Z_TYPE_P(key) = IS_LONG;
Z_LVAL_P(key) = p->h;
}
}
ZEND_API int zend_hash_get_current_key_type_ex(HashTable *ht, HashPosition *pos)
{
@@ -1187,7 +1205,7 @@ ZEND_API int zend_hash_get_current_key_type_ex(HashTable *ht, HashPosition *pos)
return HASH_KEY_IS_LONG;
}
}
return HASH_KEY_NON_EXISTANT;
return HASH_KEY_NON_EXISTENT;
}
@@ -1302,6 +1320,7 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
if (ht->pInternalPointer == p) {
ht->pInternalPointer = p->pListNext;
}
ht->nNumOfElements--;
if (ht->pDestructor) {
ht->pDestructor(p->pData);
}
@@ -1309,7 +1328,6 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
pefree(p->pData, ht->persistent);
}
pefree(p, ht->persistent);
ht->nNumOfElements--;
HANDLE_UNBLOCK_INTERRUPTIONS();
return FAILURE;
}
@@ -1337,6 +1355,7 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
if (ht->pInternalPointer == q) {
ht->pInternalPointer = q->pListNext;
}
ht->nNumOfElements--;
if (ht->pDestructor) {
ht->pDestructor(q->pData);
}
@@ -1344,7 +1363,6 @@ ZEND_API int zend_hash_update_current_key_ex(HashTable *ht, int key_type, const
pefree(q->pData, ht->persistent);
}
pefree(q, ht->persistent);
ht->nNumOfElements--;
}
if (p->pNext) {
+6 -3
View File
@@ -27,7 +27,8 @@
#define HASH_KEY_IS_STRING 1
#define HASH_KEY_IS_LONG 2
#define HASH_KEY_NON_EXISTANT 3
#define HASH_KEY_NON_EXISTENT 3
#define HASH_KEY_NON_EXISTANT HASH_KEY_NON_EXISTENT /* Keeping old define (with typo) for backward compatibility */
#define HASH_UPDATE (1<<0)
#define HASH_ADD (1<<1)
@@ -170,13 +171,13 @@ ZEND_API int zend_hash_quick_exists(const HashTable *ht, const char *arKey, uint
ZEND_API int zend_hash_index_exists(const HashTable *ht, ulong h);
ZEND_API ulong zend_hash_next_free_element(const HashTable *ht);
/* traversing */
#define zend_hash_has_more_elements_ex(ht, pos) \
(zend_hash_get_current_key_type_ex(ht, pos) == HASH_KEY_NON_EXISTANT ? FAILURE : SUCCESS)
(zend_hash_get_current_key_type_ex(ht, pos) == HASH_KEY_NON_EXISTENT ? FAILURE : SUCCESS)
ZEND_API int zend_hash_move_forward_ex(HashTable *ht, HashPosition *pos);
ZEND_API int zend_hash_move_backwards_ex(HashTable *ht, HashPosition *pos);
ZEND_API int zend_hash_get_current_key_ex(const HashTable *ht, char **str_index, uint *str_length, ulong *num_index, zend_bool duplicate, HashPosition *pos);
ZEND_API void zend_hash_get_current_key_zval_ex(const HashTable *ht, zval *key, HashPosition *pos);
ZEND_API int zend_hash_get_current_key_type_ex(HashTable *ht, HashPosition *pos);
ZEND_API int zend_hash_get_current_data_ex(HashTable *ht, void **pData, HashPosition *pos);
ZEND_API void zend_hash_internal_pointer_reset_ex(HashTable *ht, HashPosition *pos);
@@ -199,6 +200,8 @@ ZEND_API int zend_hash_set_pointer(HashTable *ht, const HashPointer *ptr);
zend_hash_move_backwards_ex(ht, NULL)
#define zend_hash_get_current_key(ht, str_index, num_index, duplicate) \
zend_hash_get_current_key_ex(ht, str_index, NULL, num_index, duplicate, NULL)
#define zend_hash_get_current_key_zval(ht, key) \
zend_hash_get_current_key_zval_ex(ht, key, NULL)
#define zend_hash_get_current_key_type(ht) \
zend_hash_get_current_key_type_ex(ht, NULL)
#define zend_hash_get_current_data(ht, pData) \
Loaded 100 of 1246 files, more files were not shown because too many files have changed in this diff. Show more