Compare commits

...
Author SHA1 Message Date
SVN Migration c89cf742c4 This commit was manufactured by cvs2svn to create tag 'php_5_2_6'. 2008-04-30 18:27:57 +00:00
Ilia Alshanetsky 6a7f02001d 5.2.6 2008-04-30 18:27:56 +00:00
Ant Phillips ab211d72a3 Fix session test failures as reported by Antony Dovgal.
These were caused by the tests assuming default values for some session
configuration settings, in particular session.save_path and session.name.
The tests now explicitly set these settings in the --INI-- section.
2008-04-30 15:20:16 +00:00
Ant Phillips 3946b4727b Break up complicated rename tests into some smaller more consumable chunks 2008-04-30 13:53:49 +00:00
Ant Phillips 3a30d703c0 Fix session test failures as reported by Antony Dovgal.
These were caused by the tests assuming default values for some session
configuration settings, in particular session.save_path and session.name.
The tests now explicitly set these settings in the --INI-- section.
2008-04-30 09:27:59 +00:00
Scott MacVicar ad86c485cd MFH Fixed bug #44720 (Prevent infinite recursion within session_register) 2008-04-29 14:42:38 +00:00
Ant Phillips 597adbfef1 More session tests to improve code coverage for untested extension code 2008-04-29 09:24:17 +00:00
Ant Phillips 2d2ad8e8d3 More session tests to improve code coverage for untested extension code 2008-04-29 08:57:12 +00:00
Jani Taskinen f2c9167ebb MFH 2008-04-28 12:30:33 +00:00
Ant Phillips 0ccb772f10 Extra open_basedir tests 2008-04-24 16:40:53 +00:00
Ant Phillips 138a1160ab Allow for chmod() to fail on symbolic links 2008-04-24 13:58:29 +00:00
Ant Phillips e9da49eaf5 open_basedir tests for file system functions (v5.2, 5.3 and 6.0 branches) 2008-04-23 14:10:23 +00:00
Ant Phillips 64de2d2d45 New set of session extension tests for PHP 5.2 branch.
These hopefully test a reasonable set of basic, error and variations for
the twenty or so session functions. Note however that they do not
test all the session configuration settings, nor do they test anything
with register_globals enabled.
2008-04-22 16:04:00 +00:00
Ant Phillips 1f4fa0ba1f These tests were backported from the PHP 6.0 branch, which in turn were ported from this branch and then updated to remove any dependencies on register_globals. With register_globals removed they are useful tests to run against the 5.X branches. 2008-04-22 15:58:34 +00:00
Robin Fernandes 1d943ee85e Fix some ereg tests for 64bit platforms. 2008-04-22 15:31:56 +00:00
Felipe Pena 5c605854b8 - Fixed tests 2008-04-20 01:55:05 +00:00
Felipe Pena 11d09ac646 - Better error message 2008-04-20 01:43:18 +00:00
Antony Dovgal 269aac9ee9 fix test 2008-04-18 08:22:01 +00:00
Ilia Alshanetsky 7204e7ba5a BFN 2008-04-18 01:00:56 +00:00
Antony Dovgal 59dde7cbeb make Matt happy =) 2008-04-17 11:48:53 +00:00
Felipe Pena 11a13337ff - Fix typo 2008-04-17 11:04:49 +00:00
Derick Rethans 8649483a69 - Fixed bug #44703 (htmlspecialchars() does not detect bad character set
argument).
2008-04-16 17:21:46 +00:00
Antony Dovgal d9b443095f change %d to %ld and silence the warning 2008-04-16 08:54:44 +00:00
Felipe Pena 9db0be61ad Fixed bug #44703 (htmlspecialchars() does not detect bad character set argument) (patch by Andy Wharmby) 2008-04-11 19:01:25 +00:00
Robin Fernandes 29c12bd254 Fix test parse_url_variation_002.phpt for 64bit platforms. 2008-04-11 14:35:04 +00:00
Antony Dovgal ef1f2c1b7b fix tests 2008-04-11 11:06:18 +00:00
Antony Dovgal 1e20b1ed7d MFH: fix 2 segfaults in ZTS mode 2008-04-11 11:00:24 +00:00
Steve Seear 9d700f942f POSIX extension error tests 2008-04-11 09:32:32 +00:00
Steve Seear 35ca4a5cb4 POSIX extension variation tests 2008-04-11 09:27:42 +00:00
Robin Fernandes fdb9b9d8c8 Adding some tests for ereg and url functions. 2008-04-11 08:57:11 +00:00
Ilia Alshanetsky a1f0e80436 Back to dev 2008-04-10 22:31:09 +00:00
Ilia Alshanetsky 1e29c1716d 5.2.6RC5 2008-04-10 22:24:05 +00:00
Christopher Jones 7788b67557 Bump OCI8 version to 1.2.5 (This change is for 5.2 branch only) 2008-04-10 21:53:46 +00:00
Nuno Lopes 5baa766b21 MFB53 2008-04-10 19:16:00 +00:00
Nuno Lopes 60d622bdb0 MFB5.3: fix SKIPIF 2008-04-10 19:09:49 +00:00
Philip Olson 63ca897356 MFH: Updated the documentation credits 2008-04-10 05:32:26 +00:00
Scott MacVicar b584600e1d Fix heredoc handling. (Patch by Matt Wilmas) 2008-04-09 21:40:13 +00:00
Felipe Pena 52127174e2 Fixed bug #44678 (spliti error message includes wrong function name) 2008-04-09 13:47:35 +00:00
Dmitry Stogov a548d2f19b Fixed bug #44673 (With CGI argv/argc starts from arguments, not from script) 2008-04-09 09:16:40 +00:00
Ilia Alshanetsky edf54b5468 MFB: Bug #44650 escaepshellscmd() does not check arg count (port from 5.3) 2008-04-08 17:17:07 +00:00
Joe Orton 8611785073 MFH: Fixed bug #32979 (OpenSSL stream->fd casts broken in 64-bit build)
(stotty at tvnet dot hu)
MFH: Fix another case of a broken stream->fd cast in 64-bit builds.
2008-04-08 14:11:49 +00:00
Jani Taskinen 8f6f281866 MFH: Fixed test on systems where order is not guaranteed 2008-04-08 10:35:36 +00:00
Jani Taskinen a9f2587716 MFH: - Fixed bug #44667 (proc_open() does not handle pipes with the mode "wb" correctly) 2008-04-08 08:45:52 +00:00
Jani Taskinen 5f7df8099a MF53: Fix tests 2008-04-08 08:45:04 +00:00
Ilia Alshanetsky b615180021 MFB: various bug fixes 2008-04-08 00:03:34 +00:00
Antony Dovgal 7a4f2f9a00 fix test 2008-04-07 12:14:46 +00:00
Antony Dovgal 339414deea initialize variable 2008-04-07 10:44:03 +00:00
Marcus Boerger 98f4d8c5f6 - MFH add new tests 2008-04-06 17:53:35 +00:00
Felipe Pena e8795126ea Fixed bug #44591 (imagegif's filename parameter) 2008-04-04 17:39:52 +00:00
Derick Rethans d80a51181a - Fixed typo. 2008-04-04 07:26:41 +00:00
Ilia Alshanetsky cb9be83c31 Back to dev 2008-04-04 00:16:53 +00:00
Ilia Alshanetsky 62c865e21f 5.2.6RC4 2008-04-04 00:12:22 +00:00
Felipe Pena 1054bfbb0b - Fixed tests 2008-04-03 22:01:59 +00:00
Dmitry Stogov 889ba3c824 fixed name 2008-04-03 14:44:19 +00:00
Dmitry Stogov 1dd17ad54a - Fixed possible stack buffer overflow in FastCGI SAPI. (Andrey Nigmatulin)
- Fixed sending of uninitialized paddings which may contain some information.
  (Andrey Nigmatulin)
2008-04-03 10:24:44 +00:00
Ilia Alshanetsky 357cadb362 MFB: imap bug fixes 2008-04-02 16:31:51 +00:00
Antony Dovgal 8f16e0b75c MFH 2008-04-02 14:56:43 +00:00
Derick Rethans b0b7f4eed1 - MFH: Fixed a bug in formatting timestamps when DST is active in the default
timezone.
2008-03-31 09:12:15 +00:00
Felipe Pena 3e663ebfef Fixed bug #44564 (escapeshellarg removes UTF-8 multi-byte characters) 2008-03-30 12:17:39 +00:00
Felipe Pena fd6f77d569 Fixed bug #44557 (Crash in imap_setacl when supplied integer as username) (patch by Thomas Jarosch) 2008-03-28 16:43:49 +00:00
Ilia Alshanetsky dd040e75c3 Back to dev 2008-03-27 22:53:49 +00:00
Ilia Alshanetsky 1de0c2f27c 5.2.6RC3 2008-03-27 22:44:02 +00:00
Andrey Hristov 64af7df7d0 Recreate 2008-03-27 14:48:00 +00:00
Jani Taskinen 40655e4104 MF53:- Fix test (readdir() does not sort the results..) 2008-03-27 10:45:06 +00:00
Steve Seear 8cc6227b45 Adding tests for gethostbyaddr() and gethostbynamel() 2008-03-26 18:18:07 +00:00
Marcus Boerger 13a67db7f5 MFH:
- Fix memory leak found by Osman
- Merge strlen to sizof change from CLI
2008-03-26 13:21:57 +00:00
Antony Dovgal b103a34cda MFH: check if return value of write() is -1 and abort upload, setting the correct error status 2008-03-26 12:59:42 +00:00
Dmitry Stogov c6aef571dd Fixed test (removed leaks becaue of cyrcular references) 2008-03-25 07:01:22 +00:00
Antony Dovgal 00779cc424 MFH: disabled mmap() when copying files to memory 2008-03-24 16:28:56 +00:00
Derick Rethans 94cfbb5448 - Updated to version 2008.2 (2008b) 2008-03-24 13:01:10 +00:00
Dmitry Stogov 193801fbda Fixed tests (file order is undefined, so we need to sort() them) 2008-03-24 09:00:18 +00:00
Marcus Boerger 7e071024d3 - MFH Add .cvsignore 2008-03-23 16:53:57 +00:00
Marcus Boerger 03c3cfbde3 - MFH Add tests 2008-03-23 13:39:27 +00:00
Marcus Boerger 978886a3a8 - Make multibyte a tad bit less crappy 2008-03-22 18:53:08 +00:00
Antony Dovgal 708cbe15d1 add missing .cvsignore 2008-03-21 08:30:02 +00:00
Antony Dovgal 28331f99e2 fix ZTS build 2008-03-21 08:28:36 +00:00
Ilia Alshanetsky 8c4653fbb6 MFB: Refine fix for multibyte char hanling inside command names and args 2008-03-20 23:25:42 +00:00
Rob Richards 5a94926037 BFN
re-order
2008-03-20 16:49:41 +00:00
Rob Richards 4a4711eb36 MFH: fix bug #44478 (Inconsistent behaviour when assigning new nodes)
add test
2008-03-20 16:48:45 +00:00
Antony Dovgal 3baf31907a MFH 2008-03-20 12:14:15 +00:00
Antony Dovgal 83a3d76e37 fix tests 2008-03-20 11:34:50 +00:00
David Soria Parra bb4e8b10e3 MFH: Fix bug #44487 (call_user_method_array issues a warning when throwing an exception). 2008-03-20 00:55:26 +00:00
Steve Seear bc8c649878 Adding language tests. 2008-03-19 18:06:26 +00:00
Steve Seear 9e8d58e54b Added some class tests; Replaced some hardcoded instance ids with %d. 2008-03-19 17:56:12 +00:00
Steve Seear c441dafbf4 Adding tokenizer test 2008-03-19 17:43:52 +00:00
Steve Seear 6744f65d51 Adding streams tests 2008-03-19 17:38:25 +00:00
Steve Seear 946190d453 Adding filesystem tests 2008-03-19 17:23:29 +00:00
Antony Dovgal 236b0c1bde fix test 2008-03-19 12:36:17 +00:00
Dmitry Stogov 9b8fdcf63f Fixed test 2008-03-19 09:17:21 +00:00
Felipe Pena b781627d85 Fixed bug #43614 (incorrect processing of numerical string keys of array in arbitrary serialized data) 2008-03-19 03:00:40 +00:00
Ilia Alshanetsky 34f0981808 MFB: Bug #44445 (email validator does not handle domains starting/ending
with a -)
2008-03-18 23:32:42 +00:00
Robin Fernandes dc2a59a970 Adding more tests for serialize() and unserialize(). 2008-03-18 15:11:12 +00:00
Felipe Pena d202354263 Fix build 2008-03-18 00:25:24 +00:00
Stanislav Malyshev 7be2f35865 report printf fix 2008-03-17 23:09:06 +00:00
Ilia Alshanetsky 233c3ade12 MFB: Properly address incomplete multibyte chars inside escapeshellcmd() 2008-03-17 23:02:26 +00:00
Stanislav Malyshev 5273e2163b fix integer overflow in length calculation 2008-03-17 23:00:41 +00:00
Josie Messa 9a859a31ab - new tests for ctype functions 2008-03-17 09:50:42 +00:00
Derick Rethans d1e3634d13 - Updated to version 2008.1 (2008a) 2008-03-16 07:22:10 +00:00
Felipe Pena 681859cdc4 BFN: #41828, #44440 2008-03-15 10:46:48 +00:00
Felipe Pena 27f2d54784 Fixed bug #44440 (st_blocks undefined under BeOS) 2008-03-15 10:28:53 +00:00
Felipe Pena 655610a5bb Add SKIPIF (32bit platform only) 2008-03-14 23:13:07 +00:00
Ilia Alshanetsky 62b1449e47 Fixed bug #43677 (Inconsistent behaviour of include_path set with
php_value).
2008-03-13 15:56:21 +00:00
Felipe Pena a8fc46afa7 Fix valgrind version validation (accepting "valgrind-3.2.1-Debian") 2008-03-13 13:51:40 +00:00
Felipe Pena 3958a09990 Sync with fix for #44394 2008-03-12 19:33:46 +00:00
Felipe Pena 69663666c1 Fixed bug #42177 (Warning "array_merge_recursive(): recursion detected" comes again...) 2008-03-12 19:13:00 +00:00
Christopher Jones 0befe23833 MFH: New test for existing behavior 2008-03-12 17:52:48 +00:00
Ilia Alshanetsky 0f1e56bc3a MFB: Fixed bug #44388 (Crash inside exif_read_data() on invalid images) 2008-03-12 17:33:14 +00:00
Etienne Kneuss f2c14fd8b0 Fix bug #41828 (Fix crash on wrong instantiation) 2008-03-12 13:24:24 +00:00
Felipe Pena a000cbd955 Fixed bug #44394 (Last two bytes missing from output) 2008-03-12 11:27:42 +00:00
Antony Dovgal 40f85eb585 MFH: fix segfault - error_string may be NULL, in this case we have to follow the old behavior 2008-03-11 10:27:23 +00:00
Josie Messa c857ec6c98 - Replace with previous commit 2008-03-11 10:15:18 +00:00
Josie Messa 02be1a8d19 - Fix test 2008-03-11 10:01:31 +00:00
Josie Messa 052670121b - Modified tests 2008-03-11 09:55:26 +00:00
Josie Messa 2a93e109e1 - Added extra whitespace around error messages in expected output 2008-03-11 09:45:30 +00:00
Andrey Hristov 031e443b44 char **error_string was passed but not used. This causes problems in cases
of getaddrinfo() failure, because the upper layers don't get the error.
initialize a variable because we were reading initialized in case of error.
2008-03-10 20:09:22 +00:00
Josie Messa 977f7b6716 - New tests for getcwd() function 2008-03-10 15:21:17 +00:00
Josie Messa 63c1185096 - Modified expected output to allow tests to work on all platforms 2008-03-10 15:07:20 +00:00
Felipe Pena d4888d7410 Fixed compilation warnings 2008-03-10 14:54:47 +00:00
Josie Messa 14a393d6a2 - New tests for scandir() function 2008-03-10 14:09:05 +00:00
Felipe Pena d39fbb1548 Fix typo (#44381) 2008-03-09 16:06:33 +00:00
David Coallier ff962d9de1 - MFH . Libxml version < 2.6.21 it fails. Patch from scoates 2008-03-08 19:14:38 +00:00
Zoe Slattery 4ec1845b52 Countable requires SPL 2008-03-08 17:13:06 +00:00
Andrey Hristov ecf84f8b6b Fix introduced in 5.0.46, not in 5.0.42 2008-03-08 14:59:37 +00:00
Felipe Pena 1c9c9daa78 BFN: #44373 2008-03-08 14:10:34 +00:00
Felipe Pena e1cf7f0ca6 Fixed bug #44373 (PDO_OCI extension compile failed) 2008-03-08 14:01:49 +00:00
Nuno Lopes 2e161037fa MFB53 skipif patch as asked by gentoo guys 2008-03-08 12:12:22 +00:00
Pierre Joye 6d3101b8f4 - #44355, compilation breaks due illegal const usage (Guenter Knauf)
I suppose it must break on other platform, it is not used anywhere else
  but here, and it was introduced after 5.2.5 (why no news)
2008-03-07 18:41:02 +00:00
Josie Messa 1b07a0988b - Tests awaiting fix of bug #44246 2008-03-07 16:19:40 +00:00
Josie Messa 46db94819f - New tests for rewinddir() function 2008-03-07 16:08:59 +00:00
Josie Messa f9f818959a - New tests for closedir() function 2008-03-07 15:58:39 +00:00
Scott MacVicar 216e57bf23 Typo, bundled version is really 3.3.7 2008-03-07 10:38:33 +00:00
Antony Dovgal 77f40d6d5b fix build 2008-03-07 08:56:45 +00:00
Stanislav Malyshev 0d6cdac9ff improve seed calculation
# better solution would be to port mt's multi-value seed procedure
2008-03-07 03:34:47 +00:00
Ilia Alshanetsky 3e51cc7a8c Back to dev 2008-03-07 00:36:12 +00:00
Ilia Alshanetsky d4689143e1 5.2.6RC2 2008-03-07 00:27:39 +00:00
Antony Dovgal ba9ad966c3 MFH: fix segfault when trying to clone uncloneable object 2008-03-06 17:28:47 +00:00
Robin Fernandes 1af0116cf0 Add new tests for class/object functions and features. 2008-03-06 10:56:07 +00:00
Ilia Alshanetsky abc6363462 MFB: Revert patch for bug #44325 2008-03-05 23:53:23 +00:00
Pierre Joye 77fee69a7e - #40013, php_uname() does not return nodename on Netware (Guenter Knauf) 2008-03-05 21:09:29 +00:00
Pierre Joye 38b94446a4 - #42505, new sendmail default path breaks on Novell (Guenter Knauf) 2008-03-05 20:58:08 +00:00
Jani Taskinen 2a4a4fbcaf MF53: Fix tests 2008-03-05 15:37:53 +00:00
Jani Taskinen 90f420baa5 - fix test (MF53) 2008-03-05 15:12:27 +00:00
Antony Dovgal 6eee168067 add missing .cvsignore 2008-03-05 12:13:00 +00:00
Jani Taskinen 26116d7285 - Fix tests 2008-03-05 12:10:38 +00:00
Antony Dovgal eb81041b0a MFH: apply better fix 2008-03-05 12:10:18 +00:00
Antony Dovgal 1a65748249 cosmetic fixes 2008-03-05 10:46:46 +00:00
Antony Dovgal 31683f4bfa MFH: fix memory corruption due to double destruction of default dir handle 2008-03-05 09:29:37 +00:00
Felipe Pena b47aea1094 Fixed bug #44333 (SEGFAULT when using mysql_pconnect() with client_flags) 2008-03-04 22:25:35 +00:00
Ilia Alshanetsky c36af9e2b5 MFB: Fixed bug #44325 (mssql_bind not correctly bind empty strings as
parameter value)
2008-03-04 19:39:08 +00:00
Josie Messa 6d48ddaf8f - new tests for readdir() function 2008-03-04 17:06:47 +00:00
Zoe Slattery 77a1339755 re-fixing to skip on 64 bit 2008-03-04 13:25:30 +00:00
Dmitry Stogov f4068e65ba Fixed SIGSEGV because of acess to uninitialized data 2008-03-04 12:23:10 +00:00
Dmitry Stogov 0d7d139700 Fixed wrong result of cascading assignment to string offset 2008-03-04 11:49:31 +00:00
Dmitry Stogov 43a9fd4c4a Fixed wrong result of cascading assignment to string offset
Fixed memory corruption on cascading assignment of IS_TMP_VAR into string offset
Fixed opcode caches shared memory corruption on cascading assignment of IS_CONST into string offset
2008-03-04 11:48:53 +00:00
Dmitry Stogov 7089db25e0 Fixed shared memory corruption of opcode caches 2008-03-04 11:46:09 +00:00
Antony Dovgal f3213ecacd MFH 2008-03-04 11:16:39 +00:00
Josie Messa 94565fb450 - new tests for opendir() function 2008-03-04 10:39:32 +00:00
Ilia Alshanetsky 0418676cc6 MFB: Fixed bug #44166 (Parameter handling flaw in
PDO::getAvailableDrivers())
2008-03-03 21:14:33 +00:00
Ilia Alshanetsky 5d66c33385 MFB: Fixed bug #44166 (Parameter handling flaw in
PDO::getAvailableDrivers())
2008-03-03 21:14:19 +00:00
Ilia Alshanetsky c4d4183f96 MFB: Fixed bug #44306 (Better detection of MIPS processors on Windows) 2008-03-02 15:36:09 +00:00
Ilia Alshanetsky 73550dd6b5 Set proper RC version (Thanks Hannes) 2008-02-28 15:36:07 +00:00
Ilia Alshanetsky 0dd068331a Back to dev 2008-02-28 00:35:26 +00:00
Ilia Alshanetsky 743bb87a57 5.2.6RC1 2008-02-28 00:30:35 +00:00
Ilia Alshanetsky 9c3f699ed8 Fixed security issue detailed in CVE-2008-0599 2008-02-28 00:29:29 +00:00
Antony Dovgal 0c0fb4be83 MFH 2008-02-27 09:35:10 +00:00
Felipe Pena 5db9cbbc40 MFB: Fixed bug #43559 (array_merge_recursive() doesn't behave as expected with duplicate NULL values) 2008-02-27 02:04:09 +00:00
Felipe Pena 45e379b49d Improved fix for #44242 2008-02-27 01:10:56 +00:00
Ilia Alshanetsky 45c443576e MFB: Fixed bug #44233 (MSG_PEEK undefined under BeOS R5) 2008-02-27 00:32:39 +00:00
Josie Messa 7c28ec2e54 - New tests for chdir() function 2008-02-26 09:31:16 +00:00
Christopher Jones 8b43d4de96 Fix test noise 2008-02-26 01:06:37 +00:00
Ilia Alshanetsky 86647d648f MFB: Better fix for bug #44189 2008-02-26 00:14:04 +00:00
Christopher Jones 8bdaeafc23 Add recent OCI8 bug fixes 2008-02-26 00:04:18 +00:00
Christopher Jones 2ce86f5e5a OCI8: fix bug #44008 (OCI-Lob->close) & bug #44206 (ref cursor leak) 2008-02-25 23:52:10 +00:00
Felipe Pena 9b730870a1 Fixed bug #44242 (metaphone(CMXFXM) crashes PHP) 2008-02-25 22:40:45 +00:00
Derick Rethans a58f8d2a9b - MFH: Fixed tests on 64bit platform. 2008-02-25 22:34:11 +00:00
Derick Rethans 08e237cc6d - MFH: Fixed a problem with parsing timezones as part of a format.
#- It doesn't actually fix anything, but atleast it's consistent with HEAD.
2008-02-25 18:28:18 +00:00
Steve Seear d4e61a3042 Replace hardcoded resource ids with %d in fgetc() tests. 2008-02-25 10:28:43 +00:00
Felipe Pena 7af1de82e3 New test 2008-02-24 18:49:40 +00:00
Felipe Pena f75a2de1c1 Fixed segfault in filter extension when using callbacks. (reported & patched by Arnar Mar Sig) 2008-02-24 18:34:30 +00:00
Ilia Alshanetsky c2805b88e5 MFB: Fixed bug #44200 (A crash in PDO when no bound targets exists and yet
bound parameters are present)
2008-02-24 16:09:05 +00:00
Derick Rethans 8241ee2226 - MFH: Fixed bug #44216 (strftime segfaults on large negative value). 2008-02-22 17:49:30 +00:00
Derick Rethans dfd8f3f735 - MFH: Fixed bug #44209: strtotime doesn't support 64 bit timestamps. 2008-02-22 09:48:18 +00:00
Josie Messa 6dc4795a66 - New tests for reset() function 2008-02-22 09:18:25 +00:00
Dmitry Stogov 6c7fe8df9f Fixed test 2008-02-22 08:16:32 +00:00
Felipe Pena fcffdf2285 Fix test 2008-02-22 02:45:37 +00:00
Josie Messa d8794230ed - New tests for end() and next() function 2008-02-21 16:38:12 +00:00
Dmitry Stogov 7eb1befffe Fixed bug #43483 (get_class_methods() does not list all visible methods) 2008-02-21 15:14:13 +00:00
Josie Messa ffa42113ff - New tests for key() function 2008-02-21 14:34:02 +00:00
Felipe Pena 3ed933811b Fix test 2008-02-21 14:22:04 +00:00
Dmitry Stogov 28306e3439 Fixed bug #44141 (private parent constructor callable through static function) 2008-02-21 13:55:22 +00:00
Ilia Alshanetsky 744d8992b3 MFB: Fixed bug #44189 (PDO setAttribute() does not properly validate values
for native numeric options)
2008-02-21 13:37:52 +00:00
Felipe Pena 4421fc2204 Cosmetics change 2008-02-21 13:32:03 +00:00
Antony Dovgal 00315b1d42 MF53 2008-02-21 11:53:51 +00:00
Dmitry Stogov 7c40e93b69 Fixed test 2008-02-21 08:17:00 +00:00
Felipe Pena 48952c1b1d Fix typo 2008-02-21 02:39:43 +00:00
Felipe Pena e0379278af Fixed Bug #44197 (socket array keys lost on socket_select) 2008-02-21 02:34:50 +00:00
Felipe Pena 50bdcc203b Fixed Bug #44191 (preg_grep messes up array index) 2008-02-20 22:08:18 +00:00
Felipe Pena 2778d2ad59 New test 2008-02-20 21:56:45 +00:00
Ilia Alshanetsky de270b4d6e MFB: Fixed bug #44152 (Possible crash with syslog logging on ZTS builds). 2008-02-20 15:28:37 +00:00
Josie Messa 18dc5aaed6 - New tests for current() function 2008-02-20 14:19:44 +00:00
Dmitry Stogov 39c4c3971d Fixed bug #44184 (Double free of loop-variable on exception) 2008-02-20 12:04:50 +00:00
Ilia Alshanetsky 766b688c8e MFB: Fixed bug #44171 (Invalid FETCH_COLUMN index does not raise an error) 2008-02-20 03:12:16 +00:00
Josie Messa 5c394578de - New tests for each() function 2008-02-19 17:00:58 +00:00
Dmitry Stogov 981603b55c Reverted wrong commit (debug code) 2008-02-19 16:44:43 +00:00
Dmitry Stogov 12e8e280c7 Fixed memory leaks 2008-02-19 16:39:02 +00:00
Dmitry Stogov 59f4a9381f Fixed test 2008-02-19 16:33:17 +00:00
Felipe Pena 5ccd0528fe New test 2008-02-19 14:53:44 +00:00
Felipe Pena d0fea14428 Fixed Bug #44159 (Crash: $pdo->setAttribute(PDO::STATEMENT_ATTR_CLASS, NULL)) 2008-02-19 12:09:47 +00:00
Dmitry Stogov ee82eac68a Fixed memory leak 2008-02-19 12:00:36 +00:00
Josie Messa ae105adfd9 - New tests for natcasesort() function 2008-02-19 10:51:44 +00:00
Sebastian Bergmann 87784c32b3 MFH: Fugbix typo. 2008-02-19 06:52:58 +00:00
Dmitry Stogov 8187dbfa4d Made code opcode-cache friendly. (It is disallowed to change code during execution) 2008-02-18 14:30:25 +00:00
Rui Hirokawa f17936083a fixed some failures on test scripts caused by bug fix. 2008-02-18 14:28:13 +00:00
Ilia Alshanetsky 304923d187 MFB:Fixed a possible crash 2008-02-18 13:29:00 +00:00
Dmitry Stogov 4a3df17f43 Removed redundant refcount manipulations 2008-02-18 12:11:34 +00:00
Dmitry Stogov 63fbdfb3e1 Fixed test 2008-02-18 09:02:16 +00:00
Ilia Alshanetsky f506f6254a Mbstring bug fixing news 2008-02-17 17:20:40 +00:00
Rui Hirokawa 65ef397b3c MF PHP5_3 (fixed #43841) 2008-02-17 02:06:56 +00:00
Rui Hirokawa 419b7283d3 MF PHP5_3 (fixed #43994) 2008-02-17 02:04:12 +00:00
Rui Hirokawa e2fa604b0a MF PHP5_3 (fixed #43998) 2008-02-17 02:01:41 +00:00
Rui Hirokawa bd98b8a3e0 MF PHP5_3 (fixed #43840) 2008-02-17 01:59:03 +00:00
Rui Hirokawa ba670d01b5 MF PHP5_3 2008-02-16 08:32:57 +00:00
Rui Hirokawa ee71417ef0 MF PHP5_3 2008-02-16 08:25:11 +00:00
Christopher Jones 7ac84b8607 Test existing LOB error messages 2008-02-16 03:01:17 +00:00
Christopher Jones 6c0abfe077 Bug #44113 (New collection creation can fail with OCI-22303) 2008-02-15 23:05:19 +00:00
Josie Messa 9da1ec78c0 - New tests for rsort() function 2008-02-15 16:05:28 +00:00
Antony Dovgal e3189410c4 MFH: recursion protection in count() 2008-02-15 09:33:26 +00:00
Dmitry Stogov f29c6b45a8 MFH: Fixed bug #43128 (Very long class name causes segfault) 2008-02-15 07:44:46 +00:00
Dmitry Stogov 5ef434d175 Fixed bug #43507 (SOAPFault HTTP Status 500 - would like to be able to set the HTTP Status) 2008-02-15 06:50:39 +00:00
Dmitry Stogov 0be31f3f3c Fixed test 2008-02-15 06:38:37 +00:00
Josie Messa 5ae0fb0628 - New tests for count() function 2008-02-14 16:49:17 +00:00
Josie Messa 5ce503459d - removing .project file 2008-02-14 16:20:19 +00:00
Josie Messa 87e2a75f70 - New variation test for array_values() 2008-02-14 16:15:16 +00:00
Dmitry Stogov af3aecb688 Fixed bug #44069 (Huge memory usage with concatenation using . instead of .=) 2008-02-14 14:47:25 +00:00
Josie Messa 592f5f384e - New tests for array_values() function 2008-02-14 14:21:48 +00:00
Felipe Pena a69ea8773d Fixed Bug #42838 (Wrong results in array_diff_uassoc) 2008-02-14 14:02:02 +00:00
Felipe Pena cf2c1c59aa New test 2008-02-14 13:49:55 +00:00
Josie Messa f56d34a230 - New tests for array_slice() function 2008-02-14 11:15:54 +00:00
Dmitry Stogov 8448591096 Fixed memory leak 2008-02-14 08:46:08 +00:00
Josie Messa 079c7f0cd6 - New tests for array_shift() function 2008-02-13 16:41:27 +00:00
Josie Messa b289acb3af - New tests for array_push() function 2008-02-13 16:10:43 +00:00
Josie Messa 2554f5ca00 - committing tests for array_merge() function 2008-02-13 14:20:22 +00:00
Josie Messa 064bbbb04e - committing tests for array_key_exists() function 2008-02-13 13:15:11 +00:00
Marcus Boerger 697b79f6a3 - MFH Make this behave like in <= 5.2.5 and test for it 2008-02-13 12:23:26 +00:00
Greg Beaver 26f6c26c8c MFH: fix potential memleak due to destruction of filterparams zval 2008-02-12 23:29:18 +00:00
Johannes Schlüter 201a2ec1f0 - MFH: Make clear what's going on and avoid overwriting parameters 2008-02-12 20:43:50 +00:00
Hannes Magnusson 8fbb789d04 Fix test 2008-02-12 20:06:10 +00:00
Josie Messa fa7ab79523 - committing array_change_key_case variation tests 2008-02-12 17:43:54 +00:00
Felipe Pena d1f536595e MFB: array_slice() - Fixed behavior when NULL is given in third parameter (BC) 2008-02-12 12:47:30 +00:00
Felipe Pena 13e939679b MFB: Fixed Bug #44094 (SEGFAULT when using mysql_connect()) 2008-02-12 10:24:35 +00:00
Zoe Slattery a628bc8856 Fixing 44092 2008-02-12 07:27:49 +00:00
Ilia Alshanetsky 2e6320425b MFB: Fixed test on 64bit machines 2008-02-11 16:23:12 +00:00
Johannes Schlüter eaa1662a75 MFH: The exact message differs on different systems 2008-02-11 00:03:30 +00:00
Johannes Schlüter c04ac43efa - Fix typo (see #44095) 2008-02-11 00:01:29 +00:00
Jani Taskinen 839abfabcc MFH 2008-02-06 19:14:07 +00:00
Jani Taskinen c717b41784 MFH:- Fixed bug in handling arrays which caused the original array being modified too. 2008-02-06 19:07:36 +00:00
Marcus Boerger 745fe9004f - BFN 2008-02-06 11:10:07 +00:00
Marcus Boerger dd570d65ce - WS 2008-02-06 11:09:48 +00:00
Zoe Slattery 44b091a30d Tests for assorted Maths functions 2008-02-06 09:51:19 +00:00
Ilia Alshanetsky 5b0fbbefe1 MFB: Fixed bug #44046 (crash inside array_slice() function with an invalid
by-ref offset).
2008-02-05 16:01:21 +00:00
Robert Nicholson 95121ed073 - fix arsort_variation3.phpt which was missing its EXPECT section 2008-02-05 11:18:00 +00:00
Marcus Boerger f26c177b2d - Damnit you flags (wrong commit) 2008-02-04 21:49:44 +00:00
Marcus Boerger 9a90cfc99c - MFH Really last flag change (got confused with code) 2008-02-04 21:37:55 +00:00
Ilia Alshanetsky 2c92d82a02 Revert fix for bug #43981, not yet ready for 5.2 2008-02-04 21:31:52 +00:00
Marcus Boerger 80907e4a91 - MFH Flag handling and documentation 2008-02-04 20:43:50 +00:00
Sebastian Bergmann 0d516bf7ec Add NEWS entry for ext/dom arginfo changes. 2008-02-04 19:43:34 +00:00
Sebastian Bergmann cc0b2dd120 MFH: Add missing Reflection API metadata for DOM classes. 2008-02-04 15:23:11 +00:00
Robert Nicholson 622504d7a3 - added some new tests for arsort 2008-02-04 00:04:26 +00:00
Ilia Alshanetsky e002e2ec1c MFB: Fixed bug #44028 (crash inside stream_socket_enable_crypto() when
enabling encryption without crypto type)
2008-02-03 16:15:30 +00:00
Derick Rethans 3bcef3b39d - Fixed invalid read errors as found by GCOV. 2008-02-03 14:22:55 +00:00
Antony Dovgal 20b39a9806 fix test, add 64bit version 2008-02-02 23:44:39 +00:00
Derick Rethans d7ae91bea7 - MFH: Make timezone_open() work again. 2008-02-02 17:26:23 +00:00
Zoe Slattery cc0b147a2f A few new tests for math functions - Note the "constants" test will fail on Windows - Bug 42143. 2008-02-01 17:27:43 +00:00
Robert Nicholson 801ce5ee03 - a few more gd tests (committed on behalf of andy wharmby) 2008-02-01 16:33:37 +00:00
Josie Messa bb5f5da561 - Committing new tests for MBString extension.
More details can be found here: http://news.php.net/php.qa/62382
2008-02-01 15:27:57 +00:00
Rob Richards 390b033755 BFN 2008-01-31 22:00:22 +00:00
Rob Richards 1dc8e72874 MFH: fix bug #42369 (Implicit conversion to string leaks memory)
add test
2008-01-31 21:59:41 +00:00
Antony Dovgal caf57b0532 BFN 2008-01-31 20:23:33 +00:00
Christopher Jones dece018a41 Fixed bug #42841 (REF CURSOR and oci_new_cursor PHP crash) 2008-01-31 00:26:44 +00:00
Ilia Alshanetsky 6f1c2f04a0 MFB: Fixed bug #43981 (gmp_div_r() does not preserve the sign of 1st
argument)
2008-01-30 18:27:03 +00:00
Zoe Slattery 51f63718cf Removing superfluous --INI-- section 2008-01-30 17:44:54 +00:00
Rob Richards 82a3271eda BFN 2008-01-30 15:30:44 +00:00
Rob Richards 005ece078a MFH: fix bug #41562 (SimpleXML memory issue) 2008-01-30 15:29:51 +00:00
Robin Fernandes 5912128780 Adding tests for class features, including __autoload(), property inheritance rules and class constants. 2008-01-30 14:24:47 +00:00
Rasmus Lerdorf 529092df9b Copy-paste typo 2008-01-30 08:50:02 +00:00
Sebastian Bergmann 410fb2b6d4 MFH: Fix arginfo. 2008-01-30 06:48:20 +00:00
Rasmus Lerdorf b8af6b08db This one depends on the precision setting 2008-01-30 05:37:23 +00:00
Rasmus Lerdorf 7b624a37bc Fixed bug #43957 (utf8_decode() bogus conversion of partial multibyte UTF8 char) 2008-01-29 23:21:20 +00:00
Sebastian Bergmann 088d2d98b8 MFH: Fix arginfo and prototype. 2008-01-29 21:21:28 +00:00
Nuno Lopes 8cb33d2c04 upgrade to pcre 7.6 2008-01-29 20:25:47 +00:00
Dmitry Stogov 7c51430b37 Fixed bug #43968 (Extending internal class causes a crash)
The fix is a workaround for GCC optizer bug.
2008-01-29 20:01:14 +00:00
Sebastian Bergmann fef277ab76 MFH: Add Reflection API metadata for DOMXPath. 2008-01-29 15:55:29 +00:00
Sebastian Bergmann 0c685dc3c0 MFH: Add Reflection API metadata for DOMNode. 2008-01-29 15:23:25 +00:00
Dmitry Stogov f8d7d6fc90 Fixed bug #43491 (Under certain conditions, file_exists() never returns) 2008-01-29 14:23:19 +00:00
Antony Dovgal 1a4c15d5e1 MFH: fix #43927 (koi8r is missing from html_entity_decode())
patch by andy at demos dot su
2008-01-29 13:39:03 +00:00
Dmitry Stogov e4782cddf4 Fixed bug #43505 (Assign by reference bug) 2008-01-29 10:44:53 +00:00
Dmitry Stogov c9fd5b3010 Fixed test 2008-01-29 10:43:42 +00:00
Antony Dovgal c86f396edf BFN 2008-01-29 09:30:08 +00:00
Sebastian Bergmann 984b2c84a5 MFH: Add Reflection API metadata for XSLTProcessor. 2008-01-29 07:51:46 +00:00
Antony Dovgal 65d0aca95c MFH: fix type and bug #43646 2008-01-29 00:08:08 +00:00
Scott MacVicar 20809972dc MFH: Fixed bug #43954 (Memory leak when sending the same HTTP status code more than once.) 2008-01-28 16:12:55 +00:00
Hannes Magnusson 1e0125e9a4 Remove bogus test (should be in HEAD) 2008-01-27 18:20:27 +00:00
Marcus Boerger f2e8119bf5 - Add second parameter to SplObjectStorage::attach()
- Add SplObjectStorage::setInfo()
- Add SplObjectStorage::getInfo()
2008-01-27 18:04:56 +00:00
Rob Richards 86ae2781fb MFH: add missing export 2008-01-27 16:33:22 +00:00
Derick Rethans da11bc2b32 - MFH Bugfixes:
- Fixed bug #43808 (date_create never fails (even when it should)).
	- Fixed bug #43527 (DateTime created from a timestamp reports environment
	  timezone).
	- Fixed bug #43003 (Invalid timezone reported for DateTime objects
	  constructed using a timestamp).
	- Fixed bug #42190 (Constructing DateTime with TimeZone Indicator
	  invalidates DateTimeZone).
	- Fixed bug #41599 (setTime() fails after modify() is used).
2008-01-26 16:26:47 +00:00
Robert Nicholson 905f0d086b - Add a basic test for array_shuffle() 2008-01-25 00:30:52 +00:00
Robert Nicholson db0c290db4 - add some basic tests for array diff and intersection functions 2008-01-25 00:16:14 +00:00
Antony Dovgal ab8436fc87 MFH 2008-01-24 23:11:15 +00:00
Robert Nicholson 6b7d50ead4 - New tests for compact() 2008-01-24 14:52:38 +00:00
Rob Richards e660e038a4 MFH: fix zts build 2008-01-24 14:10:21 +00:00
Dmitry Stogov bab919b91b Fixed error message 2008-01-24 08:51:04 +00:00
Ilia Alshanetsky cfcb262dfb MFB:Fixed bug #43912 (Interbase column names are truncated to 31 characters) 2008-01-23 01:22:57 +00:00
Antony Dovgal 5331163715 add new test 2008-01-22 15:43:09 +00:00
Hannes Magnusson 66d39db51e MFH: Fixed bug #43875 (Two error messages returned for $new and $flag argument in mysql_connect()) 2008-01-20 14:13:11 +00:00
Christopher Jones a4c915c855 MFH: Add ifdef 2008-01-18 16:03:35 +00:00
Antony Dovgal 45353a5c39 fix test 2008-01-18 12:41:24 +00:00
Antony Dovgal f66f94b4b0 fix test 2008-01-18 12:12:19 +00:00
Antony Dovgal ff7be14077 BFN 2008-01-18 07:10:21 +00:00
Pierre Joye c1fa811b5c - reflect the correct version 2008-01-18 00:51:38 +00:00
Greg Beaver 736e23a4c5 MF5.3: install headers, use correct zip version 2008-01-18 00:31:23 +00:00
Greg Beaver 42b320bca1 MFH: add errors when missing dependencies (Steph) 2008-01-17 21:17:29 +00:00
Ilia Alshanetsky 23994f9150 MFB: Fixed bug #42779 (Incorrect forcing from HTTP/1.0 request to HTTP/1.1
response)
2008-01-16 15:50:37 +00:00
Antony Dovgal b42398f850 MFH: fix #43863 (str_word_count() breaks on cyrillic "ya" in locale cp1251)
patch by phprus at gmail dot com
2008-01-16 08:35:59 +00:00
Dmitry Stogov bb084caec1 Fixed wrong type cast 2008-01-16 06:14:45 +00:00
Christopher Jones 65bec2edc8 MFH: fix #41941 (oci8 extension not lib64 savvy) 2008-01-16 00:42:02 +00:00
Christopher Jones ea2d2d6bb6 MFH: Testcase for #43492 (nested cursors) 2008-01-15 20:54:22 +00:00
Christopher Jones f4a29d5432 fix #43497 (OCI8 XML/getClobVal aka temporary LOBs leak UGA memory) 2008-01-15 20:42:13 +00:00
Rob Richards 844d6ee35b MFH: fix memleak in sign and verify functions 2008-01-15 15:13:37 +00:00
Brian Shire 751b0807b1 MFH: Fix bug #42850 array_walk_recursive() leaves references, refix bug #34982 2008-01-14 22:10:09 +00:00
Ilia Alshanetsky a2581f81d1 MFB: Missing patch bit from the FETCH_GROUP fix 2008-01-14 18:41:41 +00:00
Nuno Lopes 0f9729404f MFH: fix bug #42945, as asked by Ilia 2008-01-14 09:46:55 +00:00
Nuno Lopes 255a7b9cf0 upgrade PCRE to version 7.5 (as asked by Ilia 2008-01-14 09:39:41 +00:00
Greg Beaver c98f8dc302 merge in cgi fixes from PHP_5_3 2008-01-14 04:34:17 +00:00
Greg Beaver b24c96616a add missing alias .h files 2008-01-14 03:58:03 +00:00
Greg Beaver 1d3604c1b1 MFH: export libzip symbols 2008-01-14 03:19:41 +00:00
Greg Beaver 1d28516b79 MFH: far better fix for bug #40189 2008-01-12 22:04:03 +00:00
Greg Beaver ee16647cfd MFH: fix faulty fix for Bug #40189, and provide real fix for the bug 2008-01-12 21:35:44 +00:00
Greg Beaver 5d96f54cf9 revert last commit, was to wrong branch 2008-01-12 03:46:47 +00:00
Greg Beaver 9ce5990880 MFH: export symbols for use by other extensions like phar 2008-01-12 03:43:06 +00:00
Rob Richards 0d1fe9c73b MFH: starting with 2.6.30, standard libxml2 build can be used 2008-01-11 13:37:24 +00:00
Ilia Alshanetsky aa51dce93a MFB: Fixed a bug with PDO::FETCH_COLUMN|PDO::FETCH_GROUP mode when a column
# by which to group by data is specified.
2008-01-11 01:47:55 +00:00
Brian Shire 0c855571c3 - MFH fix truncation of large values on 64-bit systems in http_build_query 2008-01-10 20:32:41 +00:00
Antony Dovgal c2f8930033 correct number of symbols 2008-01-10 08:45:39 +00:00
Antony Dovgal 2fe13db7ac fix test 2008-01-10 08:45:06 +00:00
Dmitry Stogov d5bd104d9d Fixed broken soap.wsdl_cache_enabled 2008-01-09 16:45:30 +00:00
Greg Beaver 8a1cd11e0b apply proper fix of bug #43793 to zlib.deflate (window+16 = gzip) 2008-01-09 08:12:26 +00:00
Dmitry Stogov b58a5db130 Fixed bug #43703 (Signature compatibility check broken) 2008-01-09 07:57:23 +00:00
Greg Beaver a603c8d71b apply same fix of bug #43793 to zlib.deflate 2008-01-09 07:03:41 +00:00
Greg Beaver ad7f030c6d fix Bug #43793: zlib filter is unable to auto-detect gzip/zlib file headers 2008-01-09 06:45:15 +00:00
Pierre Joye 3dd5e7854c - #43790, fix crash when no family name has been found 2008-01-09 01:50:59 +00:00
Ilia Alshanetsky c73247fe2c MFB: Fixed bug #43498 (file_exists() on a proftpd server got SIZE not
allowed in ASCII mode).
2008-01-08 19:10:16 +00:00
Ilia Alshanetsky 0b25a9fb8c Fixed a safe_mode bypass in cURL identified by Maksymilian Arciemowicz. 2008-01-06 17:12:29 +00:00
Greg Beaver 4490673e0e remove potential preg warnings if --EXPECTHEADERS-- is combined with --EXPECTF-- or --EXPECTRE-- 2008-01-05 21:39:47 +00:00
Greg Beaver 32f4ff69b5 implement --FILE_EXTERNAL-- section for using an external file as --FILE--, use CGI for --EXPECTHEADERS--, fix --POST_RAW-- 2008-01-05 21:05:14 +00:00
Raghubansh Kumar d380d052af New testcases for array_diff() function 2008-01-04 14:04:26 +00:00
Raghubansh Kumar 5fe2521143 New testcases for array_diff_assoc() function 2008-01-04 14:03:57 +00:00
Ulf Wendel 8e0bb2d72c MFH: Fix for bug #43036 2008-01-04 09:19:49 +00:00
Ilia Alshanetsky 0c882b2645 MFB: Skip test for PostgreSQL driver since error is too dissimilar to other
drivers
2008-01-03 16:47:08 +00:00
Raghubansh Kumar b054ae8716 this testcase has been split into many smaller testcases and committed. 2008-01-03 09:50:05 +00:00
Raghubansh Kumar 5a6c4393cb new smaller testcases for array_map() function 2008-01-03 09:48:42 +00:00
Steve Seear 425646f98b Adding PHPT tests for the ReflectionMethod class. 2008-01-03 09:06:08 +00:00
Ilia Alshanetsky 02967f7040 MFB: Fixed bug #43647 (Make FindFile use PATH_SEPARATOR instead of ";") 2008-01-02 19:20:15 +00:00
Ilia Alshanetsky 660fac9dc0 MFB: Update copyright 2008-01-01 18:30:41 +00:00
Hartmut Holzgraefe 3e34e202d5 MFH: Fix for bug #42548 "PROCEDURE xxx can't return a result set" 2008-01-01 16:51:09 +00:00
Derick Rethans aaeded2ac7 - Updated to version 2007.11 2008-01-01 15:32:28 +00:00
Hannes Magnusson 30ff9a85cf MFH: Fix test 2008-01-01 14:36:08 +00:00
Sebastian Bergmann 58fea2b990 MFB: Leftover: Bump copyright year. 2008-01-01 06:15:48 +00:00
Sebastian Bergmann dfa693b392 Leftover: Bump copyright year. 2007-12-31 07:25:08 +00:00
Sebastian Bergmann d9f3a1305f MFH: Bump copyright year, 2 of 2. 2007-12-31 07:20:42 +00:00
Sebastian Bergmann e78105b103 MFH: Bump copyright year, 1 of 2. 2007-12-31 07:17:40 +00:00
David Soria Parra e81a660bae - Fixed bug #43663 (Extending PDO class with a __call() function doesn't work). 2007-12-30 17:59:31 +00:00
Jani Taskinen 3b2ca90699 MFH:- This makes no sense with non-ipv6 builds. (and fixes lot of issues with misconfigured servers) 2007-12-29 18:46:37 +00:00
Hannes Magnusson 5a5f3e6dff Fix test when additional ini files are used (patch by <confins_de_l_univers at yahoo dot fr>) 2007-12-29 11:38:06 +00:00
Antony Dovgal 6db1f40e32 correct fix for bug #43522 2007-12-29 10:52:51 +00:00
Hannes Magnusson dbbd4bf1b8 MFH: Update the class method documentation links 2007-12-29 02:22:23 +00:00
Dmitry Stogov df9e324f35 Fixed test related to bug #38469 2007-12-28 13:38:30 +00:00
Dmitry Stogov 2705adc4b9 Fixed bug #38469 (Unexpected creation of cycle). 2007-12-28 13:38:20 +00:00
Hannes Magnusson 97c1cc8925 BFN 2007-12-27 02:12:48 +00:00
Hannes Magnusson 7c9ab52ca4 MFB5.3: Fixed bug#43105 (PHP seems to fail to close open files.) 2007-12-27 02:10:26 +00:00
Hannes Magnusson 6bcf63c567 MFH: Fix typo (TAKAGI Masahiro) 2007-12-26 21:03:12 +00:00
Raghubansh Kumar 8774eb1ae9 fix test : do not run when run as root 2007-12-25 16:16:32 +00:00
Dmitry Stogov 24957a15e0 Fixed %f regex 2007-12-25 12:06:22 +00:00
Raghubansh Kumar cb165e184d new testcases for dir() function 2007-12-24 05:21:08 +00:00
Raghubansh Kumar 63ff78e2f3 fix tests 2007-12-24 04:26:41 +00:00
Raghubansh Kumar 77245e4907 Changing the regex for %f so the it will match e-, e+ and e. 2007-12-24 04:24:20 +00:00
Johannes Schlüter bb52c198ce -Fix name (arg, new keyboard is coming...) 2007-12-21 21:18:01 +00:00
Johannes Schlüter 0bc875c9ca -Fix name 2007-12-21 21:17:31 +00:00
Johannes Schlüter 42add0f2e1 - MFH: Fix #43450 (Memory leak on some functions with implicit object
__toString() call) (Davic C.)
2007-12-21 20:58:11 +00:00
Dmitry Stogov ab6121f686 Fixed test 2007-12-21 09:44:13 +00:00
Raghubansh Kumar 59ddc3b287 fix tests 2007-12-20 17:28:36 +00:00
Dmitry Stogov 6789574da2 x86_64 assembler optimization (Brain Shire) 2007-12-20 13:22:22 +00:00
Robert Nicholson 6194af1343 New test - Indexing - various special cases 2007-12-20 11:41:40 +00:00
Robert Nicholson 847f462905 new tests for array_map usage variations - string keys and references 2007-12-20 11:18:55 +00:00
Ilia Alshanetsky c21ef044a7 MFB: Fixed bug #43635 (mysql extension ingores INI settings on NULL values
passed to mysql_connect())
2007-12-20 00:31:49 +00:00
Raghubansh Kumar a81fccc47d fix test 2007-12-19 10:40:18 +00:00
Derick Rethans dc30b0035d - MFH: Fixed var_export() for array keys
- MFH: Fixed broken explode() test
2007-12-19 08:45:16 +00:00
Steve Seear fd81f61e0d Adding PHPT tests for the ReflectionProperty class. 2007-12-18 17:20:05 +00:00
Ilia Alshanetsky a68454f659 MFB: Fixed bug #43620 (Workaround for a bug inside libcurl 7.16.2 that can
result in a crash)
2007-12-18 13:47:37 +00:00
Jani Taskinen b9fabc8ae6 MFH:- Fix indent of macros 2007-12-17 08:52:30 +00:00
Johannes Schlüter bbfe422bd1 - MFH: Fix #43611 SplObjectStorage is available since 5.1.2 2007-12-16 22:19:58 +00:00
Hannes Magnusson 327109fab1 MFB5.3: Fix test 2007-12-16 19:18:44 +00:00
Ilia Alshanetsky 1643c14e5f MFB: Fixed bug #43589 (a possible infinite loop in bz2_filter.c) 2007-12-16 17:22:31 +00:00
Ilia Alshanetsky 6dc859da75 MFB: Fixed bug #43606 (define missing depencies of the exif extension) 2007-12-16 17:14:54 +00:00
Hannes Magnusson 25a7740600 Fix protos 2007-12-15 12:52:11 +00:00
Raghubansh Kumar ee8d2395e1 New testcases for token_get_all() function 2007-12-14 16:23:12 +00:00
Antony Dovgal eb324c4cce MFH 2007-12-13 22:30:28 +00:00
Douglas Goldstein 45dba3ecc7 add tests for ldap_dn2ufn() 2007-12-13 17:59:52 +00:00
Douglas Goldstein 2013cd57cd expand ldap_explode_dn() tests. 2007-12-13 17:46:46 +00:00
Dmitry Stogov 853adf67f9 Fixed test 2007-12-13 07:57:24 +00:00
Ilia Alshanetsky c35249d45e MFB Fixed bug #43580 (removed bogus declaration of a non-existent php_is_url()
function)
2007-12-13 00:33:26 +00:00
Antony Dovgal 0e70b8fea0 MFH: add valgrind 3.3.0 support 2007-12-12 20:21:57 +00:00
Douglas Goldstein 8f8e19dc7b add skipif case if the ldap extension is not loaded 2007-12-11 17:35:11 +00:00
Douglas Goldstein 57dbd0837a put ldap_explode_dn.phpt in proper directory 2007-12-11 17:33:51 +00:00
Douglas Goldstein becf94003a Adding initial tests for LDAP module. Adding tests for ldap_explode_dn() function 2007-12-11 17:20:58 +00:00
Jani Taskinen 0644aff586 MFH:- Revert previous patch, it was correct to do this, error is logged if logging is enabled 2007-12-11 12:26:16 +00:00
Jani Taskinen 882bd652df MFH: fix error displaying 2007-12-11 11:29:37 +00:00
Raghubansh Kumar b1c09efa90 New testcases for array_walk() function 2007-12-11 10:50:17 +00:00
Raghubansh Kumar 1ed9911cfa New testcases for array_merge_recursive() function 2007-12-11 09:09:12 +00:00
Christopher Jones e2c7f9c485 Fix #42496. Cursor leak fetching LOBs 2007-12-11 06:07:13 +00:00
Ilia Alshanetsky 8a9ad0081d MFB: Fixed bug #43522 (stream_get_line() eats additional characters) 2007-12-10 14:18:02 +00:00
Derick Rethans 63dcbb73f0 - MFH: Fixed Bug #42272 (var_export() incorrectly escapes char(0)). 2007-12-09 16:55:46 +00:00
Ilia Alshanetsky 2caccf3136 Fixed bug #43533 (escapeshellarg('') returns null).
# Backport of code from 5.3
2007-12-09 16:37:02 +00:00
Raghubansh Kumar e31fd8027f new testcases for array_unique() function 2007-12-09 14:44:18 +00:00
Marcus Boerger f012dee00c -MFH: db 4.6 detection 2007-12-06 14:17:43 +00:00
Ilia Alshanetsky f6829cf90f MFB: Fixed bug #43495 (array_merge_recursive() crashes with recursive
arrays)
2007-12-05 20:04:13 +00:00
Ilia Alshanetsky e3ec29a3f1 MFB: fixed test 2007-12-04 13:05:24 +00:00
Ilia Alshanetsky bb9384cb8a MFB: Fixed bug #43493 (pdo_pgsql does not send username on connect when
password is not available)
2007-12-04 13:05:03 +00:00
Antony Dovgal 33885b64a4 MFH 2007-12-04 08:56:14 +00:00
Antony Dovgal fe8771ec81 fix typos
use the earliest bug report in the description
2007-12-03 16:33:37 +00:00
Dmitry Stogov aeae1ce48a bug numbers 2007-12-03 16:20:55 +00:00
Dmitry Stogov 0c2edc588d Fixed crash because of uninitialized SG(sapi_headers).mimetype 2007-12-03 16:04:26 +00:00
Derick Rethans 3f9a50c5bf - Updated to version 2007.10 2007-12-03 15:16:40 +00:00
Dmitry Stogov b68b2e029c Fixed weired behavior in CGI parameter parsing 2007-12-03 15:08:01 +00:00
Ilia Alshanetsky 32463e7af9 Fixed bug #43482 (array_pad() does not warn on very small pad numbers). 2007-12-03 14:11:09 +00:00
Raghubansh Kumar f0570bce0b fix tests : better float values 2007-12-03 13:04:45 +00:00
Raghubansh Kumar 0bf84145b2 fix tests: better float values 2007-12-03 11:59:55 +00:00
Raghubansh Kumar e12bef98c6 New testcases for array_pad() function 2007-12-03 11:53:04 +00:00
Raghubansh Kumar d47d025881 New testcases for array_chunk() function 2007-12-03 03:55:55 +00:00
Ilia Alshanetsky e2ed7b551f MFB: Fixed bug #43457 (Prepared statement with incorrect parms doens't
throw exception with pdo_pgsql driver)
2007-12-02 21:00:06 +00:00
Ilia Alshanetsky 83156cf04d Fixed a typo 2007-11-30 00:12:18 +00:00
Ilia Alshanetsky 056197037d MFB: Fixed tests 2007-11-28 14:50:24 +00:00
Rob Richards ff8e1a32f9 BFN 2007-11-28 10:47:36 +00:00
Rob Richards d5afff5286 MFH: Fix bug #43364 (recursive xincludes don't remove internal nodes properly)
add test
2007-11-28 10:45:16 +00:00
Raghubansh Kumar 1a8b3e0923 Marked with defect 2007-11-28 03:42:43 +00:00
Ilia Alshanetsky b1407d3709 MFB: Fixed bug #43373 (pcntl_fork() should not raise E_ERROR on error) 2007-11-27 17:14:27 +00:00
Raghubansh Kumar ea4f3ac8a3 New testcases for array_combine() function 2007-11-27 15:18:11 +00:00
Raghubansh Kumar 9de95af3db New testcases for array_sum() function 2007-11-27 15:00:55 +00:00
Antony Dovgal d3aff8310c fix test 2007-11-27 11:14:17 +00:00
Antony Dovgal 14902c89cc fix test 2007-11-27 06:44:32 +00:00
Ilia Alshanetsky 8330f31750 MFB: Revert addition of - char support for bound param names 2007-11-26 21:10:41 +00:00
Jani Taskinen a109ecaacf MFH:- Fixed bug #43365 (Several enums have trailing commas) 2007-11-26 10:59:18 +00:00
Ilia Alshanetsky 947cebee3c MFB: Fixed bug #43386 (array_globals not reset to 0 properly on init) 2007-11-25 15:56:47 +00:00
Robert Nicholson dc75c7c2a1 Fix incorrect use of assignment in where equality was intended - class tests. 2007-11-23 15:41:05 +00:00
Ilia Alshanetsky 3acbcf448f MFB: Fixed bug #43377 (PHP crashes with invalid argument for DateTimeZone) 2007-11-23 00:16:48 +00:00
Robert Nicholson 202e7f5b28 Add some more pcre tests 2007-11-21 18:21:19 +00:00
Jani Taskinen 14d5ba8aec MFH:- Fixed bug #43035: ignore_repeated_errors=On causes lot of tests to fail 2007-11-21 08:20:45 +00:00
Ilia Alshanetsky fdc2dab50b MFB: Adjusted fix for bug #42978 2007-11-20 23:12:30 +00:00
Ilia Alshanetsky a4bc590ec1 MFB: Fixed bug #42978 (mismatch between number of bound params and values
causes a crash in pdo_pgsql)
2007-11-20 14:23:47 +00:00
Antony Dovgal c39a2f7143 fix test 2007-11-19 11:12:36 +00:00
Dmitry Stogov 06a116cd53 Fixed tests 2007-11-19 08:01:56 +00:00
Derick Rethans 62fb0402db - MFH: Initialize the reserved resource bits so that they can be reliably used. 2007-11-18 21:30:30 +00:00
Ilia Alshanetsky 99a1f9e0b2 MFB: Fixed bug #42261 (Incorrect lengths for date and boolean data types) 2007-11-18 14:20:17 +00:00
Sara Golemon d92f11b9d6 MFH(r-1.192) Remove extraneous space in error/notice messages (felipe) 2007-11-17 21:52:06 +00:00
Raghubansh Kumar b99048d5c7 New testcases for sizeof() function 2007-11-16 17:55:55 +00:00
Raghubansh Kumar 9b85655327 fix tests: removed values that generate diff. output on Linux64 2007-11-16 17:04:19 +00:00
Jani Taskinen 369a97713c MFH: - Fixed bug #43092 (curl_copy_handle() crashes with > 32 chars long URL) 2007-11-16 14:19:35 +00:00
Jani Taskinen aaa295fa35 MFH:- Fixed bug #43301 (mb_ereg*_replace() crashes when replacement string is
invalid PHP expression and 'e' option is used)
2007-11-16 12:28:34 +00:00
Antony Dovgal 332e1b8482 MFH: fix test 2007-11-15 22:14:29 +00:00
Ilia Alshanetsky 81676a4b6e MFB: Fixed bug #43276 (Incomplete fix for bug #42739, mkdir() under
safe_mode).
2007-11-15 18:58:43 +00:00
Hannes Magnusson 177ed895d3 MFH test 2007-11-15 13:14:19 +00:00
Ilia Alshanetsky dbdbfe37f2 MFB: Don't show file names being examined 2007-11-14 23:45:39 +00:00
Elizabeth Marie Smith b9580cd54e MFB 2007-11-14 19:48:57 +00:00
Raghubansh Kumar b298641605 New testcases for uasort() function 2007-11-14 17:17:51 +00:00
Raghubansh Kumar bfe5708953 fix test for linux64 - choosing smaller float values 2007-11-14 16:30:09 +00:00
Hannes Magnusson d3fd30265a MFB5.3: Fixed bug#43293 (Multiple segfaults in getopt()) 2007-11-14 15:19:29 +00:00
Hannes Magnusson 1dd3064045 Fix test 2007-11-14 13:07:07 +00:00
Ilia Alshanetsky 916ad03b84 MFB: Fixed bug #43279 (pg_send_query_params() converts all elements in
'params' to strings)
2007-11-13 20:08:04 +00:00
Dmitry Stogov 5c6a2679c8 Fixed bug #42692 (Procedure 'int1' not present with doc/lit SoapServer) 2007-11-13 15:10:05 +00:00
Antony Dovgal 3258e0cef2 fix typo 2007-11-13 10:31:34 +00:00
Dmitry Stogov 6c7761c807 Fixed Bug #43248 (backward compatibility break in realpath()) 2007-11-13 09:46:39 +00:00
Zoe Slattery 332c87b12a MFH: Changing the regex for %f so the it will match E-, E+ and E. 2007-11-12 21:16:27 +00:00
Rob Richards fe13ae813d BFN 2007-11-12 19:00:04 +00:00
Rob Richards 376d5f828d MFH: fix bug #43221 (SimpleXML adding default namespace in addAttribute)
add test
2007-11-12 18:59:26 +00:00
Ilia Alshanetsky 5d09ce66a3 Fixed bug #43182 (file_put_contents() LOCK_EX does not work properly on
file
2007-11-12 18:47:46 +00:00
Antony Dovgal 144419b3a1 MFH: fix error message (reported by Felipe Nascimento) 2007-11-12 16:56:39 +00:00
Raghubansh Kumar 7a39cd0117 New testcases for ksort() function 2007-11-12 15:55:10 +00:00
Raghubansh Kumar 09e35a5107 New testcases for krsort() function 2007-11-12 15:54:35 +00:00
Antony Dovgal 7a369dc593 MFH: fix #42736 (xmlrpc_server_call_method() crashes) 2007-11-12 11:24:13 +00:00
Dmitry Stogov 2ea3105939 Fixed bug #42937 (__call() method not invoked when methods are called on parent from child class). 2007-11-12 09:11:49 +00:00
Ilia Alshanetsky 9ed8465d1b MFB: Fixed parse error described in bug #43228 2007-11-11 13:38:28 +00:00
Johannes Schlüter 6ff45cf55e - Use #if instead of #ifdef there (by Mikko Koppanen) 2007-11-10 19:52:08 +00:00
Raghubansh Kumar ad732b6140 fix tests 2007-11-09 12:00:57 +00:00
Dmitry Stogov 1ea2e504e3 Fixed bug #43216 (stream_is_local() returns false on "file://") 2007-11-09 09:37:42 +00:00
Dmitry Stogov 84c1ac4385 Fixed bug #43201 (Crash on using unitialized vals and __get/__set) 2007-11-09 09:28:18 +00:00
Dmitry Stogov 85a2d87bae Fixed bug #43175 (__destruct() throwing an exception with __call() causes segfault) 2007-11-09 09:16:45 +00:00
Raghubansh Kumar a91fe5ca49 fix test: better float values 2007-11-09 08:57:18 +00:00
Raghubansh Kumar 6ca1fdbc25 fix tests: better float values 2007-11-09 07:09:52 +00:00
Ilia Alshanetsky 9623aa59eb Fixed win32 build 2007-11-09 03:51:12 +00:00
Ilia Alshanetsky 0125436439 Back to dev 2007-11-08 13:53:14 +00:00
Ilia Alshanetsky af81b9d973 5.2.5 2007-11-08 13:44:12 +00:00
Antony Dovgal e9e1ba64e9 MFH 2007-11-08 11:39:59 +00:00
Antony Dovgal 2bb2bcdcce fix tests 2007-11-08 11:19:46 +00:00
Antony Dovgal f237b06942 fix test 2007-11-08 10:30:08 +00:00
Antony Dovgal 9958658fc3 MFH: fix test 2007-11-08 10:13:47 +00:00
Antony Dovgal 527f581a6b MFH 2007-11-08 08:12:01 +00:00
Dmitry Stogov 76a5faaf8f Fixed tests 2007-11-08 07:06:55 +00:00
Antony Dovgal 0e6b470417 fix tests 2007-11-07 12:07:59 +00:00
Antony Dovgal 295c1cc04e MFH 2007-11-07 08:31:04 +00:00
Jani Taskinen df35a307cc MFH: - Fixed bug #43196 (array_intersect_assoc() crashes with non-array input) 2007-11-06 13:28:21 +00:00
Raghubansh Kumar c6779ec584 New testcases for asort() function 2007-11-05 16:37:45 +00:00
Raghubansh Kumar f87b27a84e better test title 2007-11-05 16:24:37 +00:00
Raghubansh Kumar bbc87a14eb New testcases for sort() function 2007-11-05 15:38:03 +00:00
Raghubansh Kumar c1ee9eeecf New testcases for array_intersect_assoc() function 2007-11-05 14:39:42 +00:00
Derick Rethans db4b1f7f46 - Updated to version 2007.9 2007-11-05 10:36:50 +00:00
Mattias Bengtsson 5697c1a9ac - Right filename 2007-11-05 01:14:18 +00:00
Mattias Bengtsson 7f57a366dc - Fixed Bug #43121 (gdImageFill with IMG_COLOR_TILED crashes httpd) 2007-11-04 23:56:00 +00:00
Raghubansh Kumar 72c994d464 fix tests: proper temp file names 2007-11-02 03:54:05 +00:00
Raghubansh Kumar 5302a164b1 fix tests: proper temp file names 2007-11-02 03:16:22 +00:00
Raghubansh Kumar 72a009a2f2 Fix test: better float values 2007-11-02 03:00:18 +00:00
Ilia Alshanetsky 79cd4dc1c3 back to dev 2007-11-01 22:37:35 +00:00
Ilia Alshanetsky e3eb1b9bed 5.2.5RC2 2007-11-01 22:33:31 +00:00
Antony Dovgal f6966f28d0 MFH: initialize correct variable 2007-11-01 19:13:49 +00:00
Jani Taskinen e207cc58ac MFH: nuke unused variables 2007-11-01 17:32:26 +00:00
Dmitry Stogov 67f6979df2 Another fix for bug #42773 2007-11-01 15:41:13 +00:00
Dmitry Stogov e468aa44a2 Fixed bug #42848 (Status: header incorrect under FastCGI) 2007-11-01 15:23:14 +00:00
Dmitry Stogov fc6d3652f9 Fixed bug #41635 (SoapServer and zlib.output_compression with FastCGI result in major slowdown) 2007-11-01 14:11:47 +00:00
Dmitry Stogov 375bf36e42 Fixed bug #42773 (WSDL error causes HTTP 500 Response) 2007-11-01 14:10:19 +00:00
Robert Nicholson 997925db9f delete .project file 2007-11-01 10:34:38 +00:00
Robert Nicholson fa0e4863a2 update min_error and max_error testcases to take into account bug fix for bug#43125 2007-11-01 08:42:32 +00:00
Dmitry Stogov 2e869a00ac Added CGI SAPI -T option, to measure execution time of script repeated several times. 2007-10-31 18:24:42 +00:00
Jani Taskinen 171184b64d MFH: fix typo 2007-10-31 13:39:14 +00:00
Jani Taskinen bdbcc4b6d3 MFH: - Fixed Bug #43137 (rmdir() and rename() do not clear statcache) 2007-10-31 13:23:07 +00:00
Ilia Alshanetsky f4cd343b6c MFB: Fixed bug #43139 PDO ignores ATTR_DEFAULT_FETCH_MODE in some cases with
fetchAll()
2007-10-31 12:58:24 +00:00
Ilia Alshanetsky e5db0d8077 MFB: Test not relavent for sqlite that uses built-in bound syntax 2007-10-30 23:03:54 +00:00
Ilia Alshanetsky 68893b0cb4 MFB: Fixed bug #43130 (Bound parameters cannot have - in their name) 2007-10-29 22:37:25 +00:00
Jani Taskinen caa0de9205 MFH 2007-10-29 09:05:55 +00:00
Ilia Alshanetsky 39f1f2fcd3 MFB: Fixed bug #42976 (Crash when constructor for newInstance() or
newInstanceArgs() fails)
2007-10-28 13:47:14 +00:00
Raghubansh Kumar b89ab4a4d5 New testcases for shuffle() function 2007-10-27 12:29:25 +00:00
Raghubansh Kumar 6d9165b332 New testcases for array_intersect() function 2007-10-27 12:16:57 +00:00
Stanislav Malyshev b196fbece9 add attribution 2007-10-26 17:45:26 +00:00
Robert Nicholson 85122b5ae6 Remove unneeded INI sections 2007-10-26 16:08:34 +00:00
Raghubansh Kumar 8ba0f7f275 more testcases for array_unshift() function 2007-10-26 11:47:50 +00:00
Robert Nicholson 8ae4fa2810 new testcases for array_splice 2007-10-26 11:07:31 +00:00
Robert Nicholson b6900cb61d new testcases for max and min 2007-10-26 11:02:04 +00:00
Jani Taskinen 9a6012ff21 fix news 2007-10-26 08:13:15 +00:00
Antony Dovgal ef0652c7f3 MFH 2007-10-25 13:01:16 +00:00
Antony Dovgal 54e44a4707 MFH 2007-10-25 11:54:23 +00:00
Dmitry Stogov 602f26dc08 Added ability to control memory consumption between request using ZEND_MM_COMPACT environment variable 2007-10-25 07:30:29 +00:00
Ilia Alshanetsky 68f328560d MFB: Fixed bug #43099 (XMLWriter::endElement() does not check # of params) 2007-10-24 22:50:19 +00:00
Dmitry Stogov 1155200b02 Fixed realpath cache for existent file with CWD_FILEPATH flag on win32 2007-10-23 05:57:35 +00:00
Mattias Bengtsson a04472df2e - Be paranoid and dont allow multiplication with zero 2007-10-23 01:58:08 +00:00
Ilia Alshanetsky 521048a9ae MFB: Fixed bug #4294 (Move *timeout initialization from RINIT to connect
time)
2007-10-22 22:43:44 +00:00
Raghubansh Kumar 4846f7e349 more testcase for array_filter() function 2007-10-22 11:13:51 +00:00
Andrey Hristov 7c21b37a2f Make it compile with libmysql 3.23 2007-10-22 10:35:33 +00:00
Dmitry Stogov f8e5189286 forgotten description 2007-10-22 07:52:03 +00:00
Dmitry Stogov 9926736605 Fixed move_uploaded_file() to always set file permissions of resulting file according to UMASK (Andrew Sitnikov) 2007-10-22 07:37:20 +00:00
Ilia Alshanetsky 0139100668 MFB: Fixed bug #42944 (test failing due to expectation that /etc/passwd has
0644 permissions).
2007-10-21 15:41:45 +00:00
Raghubansh Kumar 083c7f05ca New tetscases for array_rand() function 2007-10-19 18:39:52 +00:00
Raghubansh Kumar ff9f6404dd New testcases for array_fill() function 2007-10-19 18:34:16 +00:00
Raghubansh Kumar ee0c90556e New testcases for array_filter() function 2007-10-19 18:18:17 +00:00
Raghubansh Kumar 5516f0a247 New testcases for array_unshift() function 2007-10-19 09:12:22 +00:00
Robert Thompson 586ceb9d40 formatting 2007-10-19 05:35:05 +00:00
Robert Thompson 08433295c4 News for getcwd() failure fix. 2007-10-19 01:22:24 +00:00
Ilia Alshanetsky c6ec417654 Back to dev 2007-10-18 23:09:54 +00:00
Ilia Alshanetsky 63f4dc835e 5.2.5RC1 2007-10-18 22:59:43 +00:00
Scott MacVicar 3e47b3cb7b MFB53: Fixed bug #43020 (Warning message is missing with shuffle() and more than one argument) 2007-10-18 14:39:08 +00:00
Dmitry Stogov 168f127abb Fixed bug #42722 (display_errors setting ignored for E_PARSE and HTTP 500 page) 2007-10-18 13:11:30 +00:00
Marcus Boerger 2e2a566c15 - BFN 2007-10-18 05:32:50 +00:00
Marcus Boerger 9f6936fc0c - MF53 Fix for #41692, #42703
# Now in correct branch with fixed checkout and so on
2007-10-18 05:26:55 +00:00
Marcus Boerger efc78b635b - Fix test expectation 2007-10-18 04:51:53 +00:00
Marcus Boerger 017fa36d3f - MFB #42654, #42704 2007-10-18 04:49:55 +00:00
Dmitry Stogov c43fe1c6cf Fixed possible crash because of uninitialized value (Zdash Urf) 2007-10-17 12:08:46 +00:00
Dmitry Stogov 82264b0b45 Fixed bug #42637 (SoapFault : Only http and https are allowed) 2007-10-17 11:17:46 +00:00
Antony Dovgal 7a9cd0a4fd MFH 2007-10-17 08:19:50 +00:00
Antony Dovgal 36e950eb5f avoid double free and use zval_dtor() where neccessary 2007-10-16 13:20:29 +00:00
Andrey Hristov c8f8766461 MFB5_3 : Shadowing of params bring undefined results. 2007-10-16 13:00:32 +00:00
Raghubansh Kumar 7a97b74637 New testcases for array_flip() function 2007-10-15 06:29:37 +00:00
Raghubansh Kumar 92642d0189 New testcases for array_reverse() function 2007-10-15 06:09:27 +00:00
Hannes Magnusson a029117eb5 MFH: fix typo and remove dots in error message 2007-10-13 11:35:35 +00:00
Ilia Alshanetsky accfde57ca MFB: Fixed bug #42917 (PDO::FETCH_KEY_PAIR doesn't work with setFetchMode) 2007-10-11 20:56:22 +00:00
Derick Rethans 94a3bb327e - Updated to version 2007.8 2007-10-11 18:54:37 +00:00
Raghubansh Kumar d7e424acbe fix test (temp. file name) 2007-10-11 11:53:16 +00:00
Jani Taskinen 979e8b5896 MFB53 2007-10-11 09:33:53 +00:00
Jani Taskinen 3c9eb61d04 MF53 2007-10-11 08:28:02 +00:00
Robert Thompson 98505945f2 Fix for bug 41899, safe mode and relative paths with Solaris's broken getcwd(). 2007-10-10 23:54:39 +00:00
Jani Taskinen 6f128d2dd7 - Generated with more recent re2c version 2007-10-10 09:28:51 +00:00
Ilia Alshanetsky 00f18d764a MFB: Fixed bug #42869 (automatic session id insertion adds sessions id to
non-local forms)
2007-10-10 00:35:52 +00:00
Scott MacVicar 6928bdc6bf MFH: Add constant to allow setting of character set with mysqli_options prior to connection. 2007-10-09 16:56:38 +00:00
Raghubansh Kumar 2a078d14c9 New testcases for strip_tags() function 2007-10-09 12:47:00 +00:00
Raghubansh Kumar 1993c9a384 fix test 2007-10-09 12:19:27 +00:00
Raghubansh Kumar ecf81d1529 fix tests 2007-10-09 12:12:19 +00:00
Raghubansh Kumar bf428e90a5 fix tests 2007-10-09 10:56:45 +00:00
Scott MacVicar 7deeb54fe1 MFH: Fix expand_filepath when including relative files, ideally you should test your code... 2007-10-09 10:06:34 +00:00
Jani Taskinen 6d078cea10 MFH: ws + cs 2007-10-09 08:40:47 +00:00
Raghubansh Kumar fdf4c22696 fix tests 2007-10-09 06:18:47 +00:00
Raghubansh Kumar be49c27d17 more tests for fseek(), ftell() & rewind() for win32 2007-10-09 04:55:14 +00:00
Raghubansh Kumar 0c9f9f8ef9 fix tests 2007-10-09 04:07:24 +00:00
Andrey Hristov 8cc2f5d576 News entry 2007-10-08 18:27:18 +00:00
Andrey Hristov 3f6b49a340 Fix for bug #42890 Constant "LIST" defined by mysqlclient and c-client 2007-10-08 18:25:52 +00:00
Raghubansh Kumar 393a686507 fix test 2007-10-08 16:02:55 +00:00
Raghubansh Kumar b8e0f7e78a fix test 2007-10-08 15:44:26 +00:00
Raghubansh Kumar 40098256fb fix tests 2007-10-08 15:36:01 +00:00
Raghubansh Kumar 50a4e50d03 New testcases for strtr() function 2007-10-08 15:19:56 +00:00
Raghubansh Kumar 99d99a0ba0 New testcases for get_html_translation_table() function 2007-10-08 15:19:27 +00:00
Raghubansh Kumar f075e78ac1 fix test 2007-10-08 06:19:11 +00:00
Robert Thompson 477e2b315b Fix for bug 41822 and 41899. expand_filepath() will now return a relative path under the specific situation where getcwd() returns NULL and the file is
still readable.  As far as I have been able to tell, this fix only applies to the Solaris OS where files in directories with (--x) cannot getcwd().
2007-10-08 02:49:26 +00:00
Antony Dovgal 98599a1c23 MFH: fix ws & folding 2007-10-06 21:35:53 +00:00
Raghubansh Kumar ea8fc31bf3 New testcases for setlocale() function 2007-10-05 19:30:51 +00:00
Raghubansh Kumar b84873aa96 New testcases for nl2br() function 2007-10-05 18:44:35 +00:00
Raghubansh Kumar 7cf81e0fe0 New testcases for strrpos() function 2007-10-05 18:31:51 +00:00
Raghubansh Kumar 620b1c63d0 New testcases for str_split() function 2007-10-05 18:16:34 +00:00
Raghubansh Kumar 2a05dfadb2 New testcases for vsprintf() function 2007-10-05 18:07:28 +00:00
Jani Taskinen 5a8c9a7d1c MFH: fix test 2007-10-05 14:57:51 +00:00
Nuno Lopes e1a402b6da allow lcov 1.6 2007-10-05 14:51:36 +00:00
Ilia Alshanetsky f9137cddf6 BFN 2007-10-04 23:26:04 +00:00
Ilia Alshanetsky 07710a5fb9 MFB: Fixed bug #42817 (clone() on a non-object does not result in a fatal
error)
2007-10-04 23:23:43 +00:00
Jani Taskinen 1be447eb95 MFH: Removed ending dots from error messages 2007-10-04 13:31:11 +00:00
Ilia Alshanetsky 91e99495af MFB: Fixed bug #42783 (pg_insert() does not accept an empty list for
insertion)
2007-10-03 23:31:58 +00:00
Michael Wallner b260f03830 MFH: fix CURLOPT_TIMEOUT_MS support 2007-10-03 20:34:48 +00:00
Dmitry Stogov 0cd4039af2 Fixed bug #42818 ($foo = clone(array()); leaks memory) 2007-10-03 09:47:25 +00:00
Dmitry Stogov c7047381f5 Fixed bug #42772 (Storing $this in a static var fails while handling a cast to string) 2007-10-03 08:02:19 +00:00
Stanislav Malyshev f422acca26 add html* utf fix 2007-10-03 05:03:12 +00:00
Stanislav Malyshev ecc9d28fed add test with invalid sequences 2007-10-03 04:58:41 +00:00
Stanislav Malyshev 5e82a38f0a do not accept partial multibyte sequences in html* functions 2007-10-03 04:53:05 +00:00
Antony Dovgal 63b3528cb1 improved recursion detection in array_walk()
fixes #42752, though the leaks are still there
2007-10-02 10:04:13 +00:00
Ilia Alshanetsky 139996e1ac MFB: Added test for bug #42785 2007-10-01 15:33:21 +00:00
Ilia Alshanetsky f89aae49a7 MFB: Fixed bug #42785 (json_encode() formats doubles according to locale
rather then following standard syntax).
2007-10-01 15:23:15 +00:00
Ilia Alshanetsky 94eb3ed91b MFB: Fixed typo in previous patch 2007-10-01 15:00:15 +00:00
Ilia Alshanetsky 191bf235ed MFB: Refactor code to make fixes for coverity issues #385 and #386 a bit
more obvious
2007-10-01 14:53:01 +00:00
Antony Dovgal 7d889d818a fix test 2007-10-01 10:41:36 +00:00
Antony Dovgal d70e63458f fix tests 2007-10-01 10:25:50 +00:00
Antony Dovgal 23d9af29d7 these dots exist since PHP3
even though Jani removed them in 5_3, I can't see how they can cause any BUGS
2007-10-01 10:22:43 +00:00
Pierre Joye 73219c9cb0 - add notice about glob regression (Lukas) 2007-10-01 08:14:03 +00:00
Raghubansh Kumar e538e493d7 smaller tests already exist 2007-09-29 17:21:41 +00:00
Raghubansh Kumar 2770262bad New testcases for sprintf() function 2007-09-29 14:13:53 +00:00
Raghubansh Kumar 69158b5e18 New testcases for chunk_split() function 2007-09-29 12:55:34 +00:00
Raghubansh Kumar f0435592a0 New testcases for stripos() function 2007-09-29 09:19:43 +00:00
Raghubansh Kumar 6eaef0712e New testcases for strrchr() function 2007-09-29 09:18:07 +00:00
Raghubansh Kumar 64f7dafa74 New testcases for join() function 2007-09-29 09:10:18 +00:00
Raghubansh Kumar 16242cd2df New testcases for htmlspecialchars_decode() function 2007-09-29 09:00:48 +00:00
Johannes Schlüter 11d5f9c7c4 - MFH: Fix type in example 2007-09-28 22:04:47 +00:00
Ilia Alshanetsky 3447b26334 MFB: Fixed coverity issue #470 Unitialized integer value used inside
zend_ini_boolean_displayer_cb
2007-09-27 17:27:15 +00:00
Jani Taskinen 12760053c1 missing folding tag 2007-09-27 16:42:11 +00:00
Jani Taskinen 52095f58a5 MFH: use Z_STR* macros 2007-09-27 16:29:27 +00:00
Jani Taskinen b024bedbdb MFH: ws 2007-09-27 16:00:20 +00:00
Jani Taskinen 5cb0b7609a MFH: ws + cs (to keep in sync with HEAD/PHP_5_3 only!) 2007-09-27 15:54:49 +00:00
Jani Taskinen 2c841333ee ws + cs fixes 2007-09-27 13:15:09 +00:00
Antony Dovgal 474f6eef5e MFH: fix coverity issue #412 2007-09-27 09:19:06 +00:00
Antony Dovgal eb2659c7b2 MFH: fix coverity issue #411 2007-09-27 09:15:20 +00:00
2872 changed files with 201592 additions and 7514 deletions

No files matched your search

+1 -1
View File
@@ -159,7 +159,7 @@ STATUS: Working
SINCE: 5.0
-------------------------------------------------------------------------------
EXTENSION: oci8
PRIMARY MAINTAINER: Antony Dovgal <tony2001@php.net>
PRIMARY MAINTAINER: Christopher Jones <sixd@php.net>, Antony Dovgal <tony2001@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
+617 -427
View File
File diff suppressed because it is too large. Load diff
+1 -1
View File
@@ -70,7 +70,7 @@ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lsz",
/* Gets an object of class specified by my_ce, and an optional double. */
zval *obj;
double d = 0.5;
zend_class_entry my_ce;
zend_class_entry *my_ce;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O|d",
&obj, my_ce, &d) == FAILURE) {
return;
+15
View File
@@ -172,6 +172,21 @@ Items from the NEWS file explained
from your error handler in order to populate $php_errormsg. This allows
you to fine-grain the levels of the messages stored.
==============================
Regressions introduced/fixed
==============================
- In version 5.2.4 a security fix caused a regression for patterns of
the form "/foo/*/bar/*". Since version 5.2.5 instead of raising a warning the
glob() function will return false when openbase_dir restrictions are violated.
#See http://bugs.php.net/bug.php?id=41655
The warning that used to be raised looked like something as follows:
Warning: glob() [function.glob]: Unable to access /foo/*/bar/* in /foo.php on line xxx
#See http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dir.c?r1=1.169&r2=1.170
The patch can safely be applied to PHP 5.2.4 as well.
==============================
Backwards incompatible changes
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Thread Safe Resource Manager |
+----------------------------------------------------------------------+
| Copyright (c) 1999-2007, Andi Gutmans, Sascha Schumann, Zeev Suraski |
| Copyright (c) 1999-2008, Andi Gutmans, Sascha Schumann, Zeev Suraski |
| This source file is subject to the TSRM license, that is bundled |
| with this package in the file LICENSE |
+----------------------------------------------------------------------+
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Thread Safe Resource Manager |
+----------------------------------------------------------------------+
| Copyright (c) 1999-2007, Andi Gutmans, Sascha Schumann, Zeev Suraski |
| Copyright (c) 1999-2008, Andi Gutmans, Sascha Schumann, Zeev Suraski |
| This source file is subject to the TSRM license, that is bundled |
| with this package in the file LICENSE |
+----------------------------------------------------------------------+
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2007 The PHP Group |
| Copyright (c) 1997-2008 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2007 The PHP Group |
| Copyright (c) 1997-2008 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+25 -18
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2007 The PHP Group |
| Copyright (c) 1997-2008 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
@@ -489,6 +489,9 @@ CWD_API int virtual_file_ex(cwd_state *state, const char *path, verify_path_func
int ret;
int use_cache;
int use_relative_path = 0;
#ifdef TSRM_WIN32
int is_unc;
#endif
TSRMLS_FETCH();
use_cache = ((use_realpath != CWD_EXPAND) && CWDG(realpath_cache_size_limit));
@@ -573,9 +576,6 @@ CWD_API int virtual_file_ex(cwd_state *state, const char *path, verify_path_func
char *ptr, *path_copy, *free_path;
char *tok;
int ptr_length;
#ifdef TSRM_WIN32
int is_unc;
#endif
no_realpath:
#ifdef TSRM_WIN32
@@ -712,22 +712,24 @@ no_realpath:
}
ptr = tsrm_strtok_r(NULL, TOKENIZER_STRING, &tok);
}
#if defined(TSRM_WIN32) || defined(NETWARE)
if (path[path_length-1] == '\\' || path[path_length-1] == '/') {
#else
if (path[path_length-1] == '/') {
#endif
state->cwd = (char*)realloc(state->cwd, state->cwd_length + 2);
state->cwd[state->cwd_length++] = DEFAULT_SLASH;
state->cwd[state->cwd_length] = 0;
}
free(free_path);
if ((use_realpath == CWD_REALPATH) && ret) {
CWD_STATE_FREE(state);
*state = old_state;
return 1;
if (use_realpath == CWD_REALPATH) {
if (ret) {
CWD_STATE_FREE(state);
*state = old_state;
return 1;
}
} else {
#if defined(TSRM_WIN32) || defined(NETWARE)
if (path[path_length-1] == '\\' || path[path_length-1] == '/') {
#else
if (path[path_length-1] == '/') {
#endif
state->cwd = (char*)realloc(state->cwd, state->cwd_length + 2);
state->cwd[state->cwd_length++] = DEFAULT_SLASH;
state->cwd[state->cwd_length] = 0;
}
}
if (state->cwd_length == COPY_WHEN_ABSOLUTE(state->cwd)) {
@@ -738,7 +740,12 @@ no_realpath:
}
}
/* Store existent file in realpath cache. */
#ifdef TSRM_WIN32
if (use_cache && !is_unc) {
#else
if (use_cache && (use_realpath == CWD_REALPATH)) {
#endif
realpath_cache_add(path, path_length, state->cwd, state->cwd_length, t TSRMLS_CC);
}
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2007 The PHP Group |
| Copyright (c) 1997-2008 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2007 The PHP Group |
| Copyright (c) 1997-2008 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2007 The PHP Group |
| Copyright (c) 1997-2008 The PHP Group |
+----------------------------------------------------------------------+
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -33,7 +33,7 @@ $obj->printVars();
===BASE===
string(4) "Base"
Notice: Undefined property: BaseClass::$private_child in %sbug29674.php on line %d
Notice: Undefined property: BaseClass::$private_child in %sbug29674.php on line %d
NULL
===CHILD===
string(4) "Base"
+1 -1
View File
@@ -52,7 +52,7 @@ $baz->printFoo();
--EXPECTF--
foo: foo foo2
bar: bar
Notice: Undefined property: bar::$foo2 in %s on line %d
Notice: Undefined property: bar::$foo2 in %s on line %d
---baz--
foo: foo foo2
+1 -1
View File
@@ -10,4 +10,4 @@ var_dump($a instanceOf A);
echo "ok\n";
?>
--EXPECTF--
Fatal error: Interface RecurisiveFooFar cannot not implement itself in %sbug30922.php on line %d
Fatal error: Interface RecurisiveFooFar cannot implement itself in %sbug30922.php on line %d
+1 -3
View File
@@ -6,8 +6,6 @@ error_reporting=4095
<?php
$a = clone 0;
$a[0]->b = 0;
echo "ok\n";
?>
--EXPECTF--
Warning: __clone method called on non-object in %sbug36071.php on line 2
ok
Fatal error: __clone method called on non-object in %sbug36071.php on line 2
+28
View File
@@ -0,0 +1,28 @@
--TEST--
Bug #38469 Unexpected creation of cycle
--FILE--
<?php
$a = array();
$a[0] = $a;
var_dump($a);
$b = array(array());
$b[0][0] = $b;
var_dump($b);
?>
--EXPECT--
array(1) {
[0]=>
array(0) {
}
}
array(1) {
[0]=>
array(1) {
[0]=>
array(1) {
[0]=>
array(0) {
}
}
}
}
+1 -2
View File
@@ -8,5 +8,4 @@ $foo[3]->bar[1] = "bang";
echo "ok\n";
?>
--EXPECTF--
Warning: Cannot use string offset as an array in %s/bug41919.php on line %d
ok
Fatal error: Cannot use string offset as an object in %s/bug41919.php on line %d
+18
View File
@@ -0,0 +1,18 @@
--TEST--
Bug #42772 (Storing $this in a static var fails while handling a cast to string)
--FILE--
<?php
class Foo {
static public $foo;
function __toString() {
self::$foo = $this;
return 'foo';
}
}
$foo = (string)new Foo();
var_dump(Foo::$foo);
?>
--EXPECT--
object(Foo)#1 (0) {
}
+9
View File
@@ -0,0 +1,9 @@
--TEST--
Bug #42817 (clone() on a non-object does not result in a fatal error)
--FILE--
<?php
$a = clone(null);
array_push($a->b, $c);
?>
--EXPECTF--
Fatal error: __clone method called on non-object in %sbug42817.php on line 2
+9
View File
@@ -0,0 +1,9 @@
--TEST--
Bug #42818 ($foo = clone(array()); leaks memory)
--FILE--
<?php
$foo = clone(array());
?>
--EXPECTF--
Fatal error: __clone method called on non-object in %sbug42818.php on line 2
+40
View File
@@ -0,0 +1,40 @@
--TEST--
Bug #42937 (__call() method not invoked when methods are called on parent from child class)
--FILE--
<?php
class A {
function __call($strMethod, $arrArgs) {
echo "$strMethod\n";
}
}
class C {
function __call($strMethod, $arrArgs) {
echo "$strMethod\n";
}
}
class B extends A {
function test() {
self::test1();
parent::test2();
A::test3();
B::test4();
C::test5();
}
}
$a = new A();
$a->test();
$b = new B();
$b->test();
?>
--EXPECTF--
test
test1
test2
test3
test4
Fatal error: Call to undefined method C::test5() in %sbug42937.php on line 20
+17
View File
@@ -0,0 +1,17 @@
--TEST--
Bug #43128 Very long class name causes segfault
--FILE--
<?php
$a = str_repeat("a", 10 * 1024 * 1024);
eval("class $a {}");
# call_user_func($a); // Warning
# $a->$a(); // Fatal error
if ($a instanceof $a); // Segmentation fault
new $a; // Segmentation fault
echo "ok\n";
--EXPECT--
ok
+24
View File
@@ -0,0 +1,24 @@
--TEST--
Bug #43175 (__destruct() throwing an exception with __call() causes segfault)
--FILE--
<?php
class foobar {
public function __destruct() {
throw new Exception();
}
public function __call($m, $a) {
return $this;
}
}
function foobar() {
return new foobar();
}
try {
foobar()->unknown();
} catch (Exception $e) {
echo "__call via traditional factory should be caught\n";
}
?>
--EXPECT--
__call via traditional factory should be caught
+54
View File
@@ -0,0 +1,54 @@
--TEST--
Bug #43201 (Crash on using unitialized vals and __get/__set)
--FILE--
<?php
class Foo {
function __get($k) {
return null;
}
function __set($k, $v) {
$this->$k = $v;
}
}
$c = new Foo();
$c->arr[0]["k"] = 1;
$c->arr[0]["k2"] = $ref;
for($cnt=0;$cnt<6;$cnt++) {
$ref = chop($undef);
$c->arr[$cnt]["k2"] = $ref;
}
echo "ok\n";
?>
--EXPECTF--
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 13
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 14
Notice: Undefined variable: ref in %sbug43201.php on line 14
Notice: Undefined variable: undef in %sbug43201.php on line 16
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 17
Notice: Undefined variable: undef in %sbug43201.php on line 16
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 17
Notice: Undefined variable: undef in %sbug43201.php on line 16
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 17
Notice: Undefined variable: undef in %sbug43201.php on line 16
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 17
Notice: Undefined variable: undef in %sbug43201.php on line 16
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 17
Notice: Undefined variable: undef in %sbug43201.php on line 16
Notice: Indirect modification of overloaded property Foo::$arr has no effect in %sbug43201.php on line 17
ok
+35
View File
@@ -0,0 +1,35 @@
--TEST--
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'); ?>
--FILE--
<?php
error_reporting(E_ALL|E_STRICT);
class Foo
{
public function __toString()
{
return __CLASS__;
}
}
$num_repeats = 100000;
$start = (memory_get_usage() / 1024) + 16;
for ($i=1;$i<$num_repeats;$i++)
{
$foo = new Foo();
md5($foo);
}
$end = memory_get_peak_usage() / 1024;
if ($start < $end) {
echo 'FAIL';
} else {
echo 'PASS';
}
?>
--EXPECT--
PASS
+24
View File
@@ -0,0 +1,24 @@
--TEST--
Bug #43483 (get_class_methods() does not list all visible methods)
--FILE--
<?php
class C {
public static function test() {
D::prot();
print_r(get_class_methods("D"));
}
}
class D extends C {
protected static function prot() {
echo "Successfully called D::prot().\n";
}
}
D::test();
?>
--EXPECT--
Successfully called D::prot().
Array
(
[0] => prot
[1] => test
)
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #43703 (Signature compatibility check broken)
--FILE--
<?php
class JoinPoint
{
}
abstract class Pointcut
{
abstract public function evaluate(JoinPoint $joinPoint);
}
class Read extends Pointcut
{
public function evaluate(Joinpoint $joinPoint)
{
}
}
?>
DONE
--EXPECT--
DONE
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #44069 (Huge memory usage with concatenation using . instead of .=)
--FILE--
<?php
$array = array();
$newstring = "";
$string = str_repeat('This is a teststring.', 50);
for($i = 1; $i <= 2000; $i++)
{
// $newstring .= $string; //This uses an expected amount of mem.
$newstring = $newstring . $string; //This uses very much mem.
for($j = 1; $j <= 10; $j++)
{
$array[] = 'test';
}
}
echo "ok\n";
?>
--EXPECT--
ok
+25
View File
@@ -0,0 +1,25 @@
--TEST--
Bug #44141 (private parent constructor callable through static function)
--FILE--
<?php
class X
{
public $x;
private function __construct($x)
{
$this->x = $x;
}
}
class Y extends X
{
static public function cheat($x)
{
return new Y($x);
}
}
$y = Y::cheat(5);
echo $y->x, PHP_EOL;
--EXPECTF--
Fatal error: Call to private X::__construct() from context 'Y' in %sbug44141.php on line 15
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Bug #44184 (Double free of loop-variable on exception)
--FILE--
<?php
function foo() {
$x = array(1,2,3);
foreach ($x as $a) {
while (1) {
throw new Exception();
}
return;
}
}
try {
foo();
} catch (Exception $ex) {
echo "ok\n";
}
?>
--EXPECT--
ok
+20
View File
@@ -0,0 +1,20 @@
--TEST--
cloning uncloneable object
--SKIPIF--
<?php if (!extension_loaded("xsl")) die("skip xsl extension is missing");?>
--INI--
zend.ze1_compatibility_mode=1
--FILE--
<?php
$new = &new XSLTProcessor();
var_dump($new);
echo "Done\n";
?>
--EXPECTF--
Strict Standards: Assigning the return value of new by reference is deprecated in %s on line %d
Strict Standards: Implicit cloning object of class 'XSLTProcessor' because of 'zend.ze1_compatibility_mode' in %s on line %d
Fatal error: Trying to clone uncloneable object of class XSLTProcessor in Unknown on line 0
+1 -1
View File
@@ -10,4 +10,4 @@ class test {
echo "Done\n";
?>
--EXPECTF--
Fatal error: Cannot declare property test::$var final, the final modifier is allowed only for methods in %s on line %d
Fatal error: Cannot declare property test::$var final, the final modifier is allowed only for methods and classes in %s on line %d
+212
View File
@@ -0,0 +1,212 @@
--TEST--
Indexing - various special cases.
--FILE--
<?php
echo "*** Indexing - Testing value assignment with key ***\n";
$array=array(1);
$testvalues=array(null, 0, 1, true, false,'',' ',0.1,array());
foreach ($testvalues as $testvalue) {
$testvalue['foo']=$array;
var_dump ($testvalue);
}
echo "\n*** Indexing - Testing reference assignment with key ***\n";
$testvalues=array(null, 0, 1, true, false,'',0.1,array());
foreach ($testvalues as $testvalue) {
$testvalue['foo']=&$array;
var_dump ($testvalue);
}
echo "*** Indexing - Testing value assignment no key ***\n";
$array=array(1);
$testvalues=array(null, 0, 1, true, false,'',0.1,array());
foreach ($testvalues as $testvalue) {
$testvalue[]=$array;
var_dump ($testvalue);
}
echo "\n*** Indexing - Testing reference assignment no key ***\n";
$testvalues=array(null, 0, 1, true, false,'',0.1,array());
foreach ($testvalues as $testvalue) {
$testvalue[]=&$array;
var_dump ($testvalue);
}
echo "\nDone";
?>
--EXPECTF--
*** Indexing - Testing value assignment with key ***
array(1) {
["foo"]=>
array(1) {
[0]=>
int(1)
}
}
Warning: Cannot use a scalar value as an array in %s on line %d
int(0)
Warning: Cannot use a scalar value as an array in %s on line %d
int(1)
Warning: Cannot use a scalar value as an array in %s on line %d
bool(true)
array(1) {
["foo"]=>
array(1) {
[0]=>
int(1)
}
}
array(1) {
["foo"]=>
array(1) {
[0]=>
int(1)
}
}
Notice: Array to string conversion in %s on line %d
string(1) "A"
Warning: Cannot use a scalar value as an array in %s on line %d
float(0.1)
array(1) {
["foo"]=>
array(1) {
[0]=>
int(1)
}
}
*** Indexing - Testing reference assignment with key ***
array(1) {
["foo"]=>
&array(1) {
[0]=>
int(1)
}
}
Warning: Cannot use a scalar value as an array in %s on line %d
int(0)
Warning: Cannot use a scalar value as an array in %s on line %d
int(1)
Warning: Cannot use a scalar value as an array in %s on line %d
bool(true)
array(1) {
["foo"]=>
&array(1) {
[0]=>
int(1)
}
}
array(1) {
["foo"]=>
&array(1) {
[0]=>
int(1)
}
}
Warning: Cannot use a scalar value as an array in %s on line %d
float(0.1)
array(1) {
["foo"]=>
&array(1) {
[0]=>
int(1)
}
}
*** Indexing - Testing value assignment no key ***
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
Warning: Cannot use a scalar value as an array in %s on line %d
int(0)
Warning: Cannot use a scalar value as an array in %s on line %d
int(1)
Warning: Cannot use a scalar value as an array in %s on line %d
bool(true)
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
Warning: Cannot use a scalar value as an array in %s on line %d
float(0.1)
array(1) {
[0]=>
array(1) {
[0]=>
int(1)
}
}
*** Indexing - Testing reference assignment no key ***
array(1) {
[0]=>
&array(1) {
[0]=>
int(1)
}
}
Warning: Cannot use a scalar value as an array in %s on line %d
int(0)
Warning: Cannot use a scalar value as an array in %s on line %d
int(1)
Warning: Cannot use a scalar value as an array in %s on line %d
bool(true)
array(1) {
[0]=>
&array(1) {
[0]=>
int(1)
}
}
array(1) {
[0]=>
&array(1) {
[0]=>
int(1)
}
}
Warning: Cannot use a scalar value as an array in %s on line %d
float(0.1)
array(1) {
[0]=>
&array(1) {
[0]=>
int(1)
}
}
Done
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Zend Multibyte and ShiftJIS
--SKIPIF--
<?php
if (!in_array("detect_unicode", array_keys(ini_get_all()))) {
die("skip Requires configure --enable-zend-multibyte option");
}
if (!extension_loaded("mbstring")) {
die("skip Requires mbstring extension");
}
?>
--INI--
mbstring.internal_encoding=SJIS
--FILE--
<?php
declare(encoding='Shift_JIS');
$s = "•\"; // 0x95+0x5c in script, not somewhere else "
printf("%x:%x\n", ord($s[0]), ord($s[1]));
?>
===DONE===
--EXPECT--
95:5c
===DONE===
+21
View File
@@ -0,0 +1,21 @@
--TEST--
Zend Multibyte and UTF-8 BOM
--SKIPIF--
<?php
if (!in_array("detect_unicode", array_keys(ini_get_all()))) {
die("skip Requires configure --enable-zend-multibyte option");
}
if (!extension_loaded("mbstring")) {
die("skip Requires mbstring extension");
}
?>
--INI--
mbstring.internal_encoding=iso-8859-1
--FILE--
<?php
print "Hello World\n";
?>
===DONE===
--EXPECT--
Hello World
===DONE===
Binary file not shown.
+2 -2
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -101,7 +101,7 @@ ZEND_API zval zval_used_for_init; /* True global variable */
/* version information */
static char *zend_version_info;
static uint zend_version_info_length;
#define ZEND_CORE_VERSION_INFO "Zend Engine v" ZEND_VERSION ", Copyright (c) 1998-2007 Zend Technologies\n"
#define ZEND_CORE_VERSION_INFO "Zend Engine v" ZEND_VERSION ", Copyright (c) 1998-2008 Zend Technologies\n"
#define PRINT_ZVAL_INDENT 4
+13 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -181,9 +181,21 @@ char *alloca ();
#if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) && defined(ZEND_WIN32)) && !(defined(ZTS) && defined(NETWARE)) && !(defined(ZTS) && defined(HPUX)) && !defined(DARWIN)
# define do_alloca(p) alloca(p)
# define free_alloca(p)
# define ZEND_ALLOCA_MAX_SIZE (32 * 1024)
# define ALLOCA_FLAG(name) \
zend_bool name;
# define do_alloca_with_limit_ex(size, limit, use_heap) \
((use_heap = ((size) > (limit))) ? emalloc(size) : alloca(size))
# define do_alloca_with_limit(size, use_heap) \
do_alloca_with_limit_ex(size, ZEND_ALLOCA_MAX_SIZE, use_heap)
# define free_alloca_with_limit(p, use_heap) \
do { if (use_heap) efree(p); } while (0)
#else
# define do_alloca(p) emalloc(p)
# define free_alloca(p) efree(p)
# define ALLOCA_FLAG(name)
# define do_alloca_with_limit(p, use_heap) emalloc(p)
# define free_alloca_with_limit(p, use_heap) efree(p)
#endif
#if ZEND_DEBUG
+11 -6
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -168,9 +168,15 @@ ZEND_API int _zend_get_parameters_array_ex(int param_count, zval ***argument_arr
*value_ptr = **value;
INIT_PZVAL(value_ptr);
zend_error(E_STRICT, "Implicit cloning object of class '%s' because of 'zend.ze1_compatibility_mode'", class_name);
if (Z_OBJ_HANDLER_PP(value, clone_obj) == NULL) {
zend_error(E_CORE_ERROR, "Trying to clone uncloneable object of class %s", class_name);
}
if(!dup) {
efree(class_name);
}
value_ptr->value.obj = Z_OBJ_HANDLER_PP(value, clone_obj)(*value TSRMLS_CC);
zval_ptr_dtor(value);
*value = value_ptr;
@@ -1700,7 +1706,7 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, zend_function_entr
if (!(scope->ce_flags & ZEND_ACC_INTERFACE)) {
/* Since the class is not an interface it needs to be declared as a abstract class. */
/* Since here we are handling internal functions only we can add the keyword flag. */
/* This time we set the flag for the keyword 'abstratc'. */
/* This time we set the flag for the keyword 'abstract'. */
scope->ce_flags |= ZEND_ACC_EXPLICIT_ABSTRACT_CLASS;
}
}
@@ -1723,11 +1729,10 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, zend_function_entr
}
}
fname_len = strlen(ptr->fname);
lowercase_name = do_alloca(fname_len+1);
zend_str_tolower_copy(lowercase_name, ptr->fname, fname_len);
lowercase_name = zend_str_tolower_dup(ptr->fname, fname_len);
if (zend_hash_add(target_function_table, lowercase_name, fname_len+1, &function, sizeof(zend_function), (void**)&reg_function) == FAILURE) {
unload=1;
free_alloca(lowercase_name);
efree(lowercase_name);
break;
}
if (scope) {
@@ -1767,7 +1772,7 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, zend_function_entr
}
ptr++;
count++;
free_alloca(lowercase_name);
efree(lowercase_name);
}
if (unload) { /* before unloading, display all remaining bad function in the module */
if (scope) {
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+59 -9
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -396,6 +396,7 @@ struct _zend_mm_heap {
size_t free_bitmap;
size_t large_free_bitmap;
size_t block_size;
size_t compact_size;
zend_mm_segment *segments_list;
zend_mm_storage *storage;
size_t real_size;
@@ -648,10 +649,15 @@ static void *_zend_mm_realloc_int(zend_mm_heap *heap, void *p, size_t size ZEND_
static inline unsigned int zend_mm_high_bit(size_t _size)
{
#if defined(__GNUC__) && defined(i386)
unsigned int n;
unsigned int n;
__asm__("bsrl %1,%0\n\t" : "=r" (n) : "rm" (_size));
return n;
#elif defined(__GNUC__) && defined(__x86_64__)
unsigned long n;
__asm__("bsrq %1,%0\n\t" : "=r" (n) : "rm" (_size));
return (unsigned int)n;
#elif defined(_MSC_VER) && defined(_M_IX86)
__asm {
bsr eax, _size
@@ -669,10 +675,15 @@ static inline unsigned int zend_mm_high_bit(size_t _size)
static inline unsigned int zend_mm_low_bit(size_t _size)
{
#if defined(__GNUC__) && defined(i386)
unsigned int n;
unsigned int n;
__asm__("bsfl %1,%0\n\t" : "=r" (n) : "rm" (_size));
return n;
#elif defined(__GNUC__) && defined(__x86_64__)
unsigned long n;
__asm__("bsfq %1,%0\n\t" : "=r" (n) : "rm" (_size));
return (unsigned int)n;
#elif defined(_MSC_VER) && defined(_M_IX86)
__asm {
bsf eax, _size
@@ -1028,6 +1039,7 @@ ZEND_API zend_mm_heap *zend_mm_startup_ex(const zend_mm_mem_handlers *handlers,
heap->storage = storage;
heap->block_size = block_size;
heap->compact_size = 0;
heap->segments_list = NULL;
zend_mm_init(heap);
# if ZEND_MM_CACHE_STAT
@@ -1078,6 +1090,7 @@ ZEND_API zend_mm_heap *zend_mm_startup(void)
char *mem_type = getenv("ZEND_MM_MEM_TYPE");
char *tmp;
const zend_mm_mem_handlers *handlers;
zend_mm_heap *heap;
if (mem_type == NULL) {
i = 0;
@@ -1109,7 +1122,16 @@ ZEND_API zend_mm_heap *zend_mm_startup(void)
seg_size = ZEND_MM_SEG_SIZE;
}
return zend_mm_startup_ex(handlers, seg_size, ZEND_MM_RESERVE_SIZE, 0, NULL);
heap = zend_mm_startup_ex(handlers, seg_size, ZEND_MM_RESERVE_SIZE, 0, NULL);
if (heap) {
tmp = getenv("ZEND_MM_COMPACT");
if (tmp) {
heap->compact_size = zend_atoi(tmp, 0);
} else {
heap->compact_size = 2 * 1024 * 1024;
}
}
return heap;
}
#if ZEND_DEBUG
@@ -1563,7 +1585,9 @@ ZEND_API void zend_mm_shutdown(zend_mm_heap *heap, int full_shutdown, int silent
#ifdef HAVE_MEM_WIN32
/* FIX for bug #41713 */
/* TODO: add new "compact" handler */
if (storage->handlers->dtor == zend_mm_mem_win32_dtor &&
if (heap->compact_size &&
heap->real_peak > heap->compact_size &&
storage->handlers->dtor == zend_mm_mem_win32_dtor &&
storage->handlers->init == zend_mm_mem_win32_init) {
HeapDestroy((HANDLE)storage->data);
storage->data = (void*)HeapCreate(HEAP_NO_SERIALIZE, 0, 0);
@@ -1723,6 +1747,7 @@ static void *_zend_mm_alloc_int(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_D
size_t remaining_size;
size_t segment_size;
zend_mm_segment *segment;
int keep_rest = 0;
if (EXPECTED(ZEND_MM_SMALL_SIZE(true_size))) {
size_t index = ZEND_MM_BUCKET_INDEX(true_size);
@@ -1791,6 +1816,7 @@ static void *_zend_mm_alloc_int(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_D
segment must have header "size" and trailer "guard" block */
segment_size = true_size + ZEND_MM_ALIGNED_SEGMENT_SIZE + ZEND_MM_ALIGNED_HEADER_SIZE;
segment_size = (segment_size + (heap->block_size-1)) & ~(heap->block_size-1);
keep_rest = 1;
} else {
segment_size = heap->block_size;
}
@@ -1870,7 +1896,11 @@ zend_mm_finished_searching_for_block:
ZEND_MM_BLOCK(new_free_block, ZEND_MM_FREE_BLOCK, remaining_size);
/* add the new free block to the free list */
zend_mm_add_to_free_list(heap, new_free_block);
if (EXPECTED(!keep_rest)) {
zend_mm_add_to_free_list(heap, new_free_block);
} else {
zend_mm_add_to_rest_list(heap, new_free_block);
}
}
ZEND_MM_SET_DEBUG_INFO(best_fit, size, 1, 1);
@@ -2286,10 +2316,10 @@ ZEND_API size_t _zend_mem_block_size(void *ptr TSRMLS_DC ZEND_FILE_LINE_DC ZEND_
static inline size_t safe_address(size_t nmemb, size_t size, size_t offset)
{
size_t res = nmemb;
unsigned long overflow ;
unsigned long overflow = 0;
__asm__ ("mull %3\n\taddl %4,%0\n\tadcl $0,%1"
: "=a"(res), "=d" (overflow)
__asm__ ("mull %3\n\taddl %4,%0\n\tadcl %1,%1"
: "=&a"(res), "=&d" (overflow)
: "%0"(res),
"rm"(size),
"rm"(offset));
@@ -2301,6 +2331,26 @@ static inline size_t safe_address(size_t nmemb, size_t size, size_t offset)
return res;
}
#elif defined(__GNUC__) && defined(__x86_64__)
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"
: "=&a"(res), "=&d" (overflow)
: "%0"(res),
"rm"(size),
"rm"(offset));
if (UNEXPECTED(overflow)) {
zend_error_noreturn(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset);
return 0;
}
return res;
}
#else
static inline size_t safe_address(size_t nmemb, size_t size, size_t offset)
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+12 -8
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -867,7 +867,7 @@ ZEND_FUNCTION(get_class_methods)
if ((mptr->common.fn_flags & ZEND_ACC_PUBLIC)
|| (EG(scope) &&
(((mptr->common.fn_flags & ZEND_ACC_PROTECTED) &&
instanceof_function(EG(scope), mptr->common.scope TSRMLS_CC))
zend_check_protected(mptr->common.scope, EG(scope)))
|| ((mptr->common.fn_flags & ZEND_ACC_PRIVATE) &&
EG(scope) == mptr->common.scope)))) {
char *key;
@@ -1013,19 +1013,20 @@ ZEND_FUNCTION(class_exists)
char *class_name, *lc_name;
zend_class_entry **ce;
int class_name_len;
zend_bool autoload = 1;
int found;
zend_bool autoload = 1;
ALLOCA_FLAG(use_heap)
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|b", &class_name, &class_name_len, &autoload) == FAILURE) {
return;
}
if (!autoload) {
lc_name = do_alloca(class_name_len + 1);
lc_name = do_alloca_with_limit(class_name_len + 1, use_heap);
zend_str_tolower_copy(lc_name, class_name, class_name_len);
found = zend_hash_find(EG(class_table), lc_name, class_name_len+1, (void **) &ce);
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
RETURN_BOOL(found == SUCCESS && !((*ce)->ce_flags & ZEND_ACC_INTERFACE));
}
@@ -1044,19 +1045,20 @@ ZEND_FUNCTION(interface_exists)
char *iface_name, *lc_name;
zend_class_entry **ce;
int iface_name_len;
zend_bool autoload = 1;
int found;
zend_bool autoload = 1;
ALLOCA_FLAG(use_heap)
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|b", &iface_name, &iface_name_len, &autoload) == FAILURE) {
return;
}
if (!autoload) {
lc_name = do_alloca(iface_name_len + 1);
lc_name = do_alloca_with_limit(iface_name_len + 1, use_heap);
zend_str_tolower_copy(lc_name, iface_name, iface_name_len);
found = zend_hash_find(EG(class_table), lc_name, iface_name_len+1, (void **) &ce);
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
RETURN_BOOL(found == SUCCESS && (*ce)->ce_flags & ZEND_ACC_INTERFACE);
}
@@ -1216,6 +1218,7 @@ ZEND_FUNCTION(set_error_handler)
had_orig_error_handler = 1;
*return_value = *EG(user_error_handler);
zval_copy_ctor(return_value);
INIT_PZVAL(return_value);
zend_stack_push(&EG(user_error_handlers_error_reporting), &EG(user_error_handler_error_reporting), sizeof(EG(user_error_handler_error_reporting)));
zend_ptr_stack_push(&EG(user_error_handlers), EG(user_error_handler));
}
@@ -1230,6 +1233,7 @@ ZEND_FUNCTION(set_error_handler)
EG(user_error_handler_error_reporting) = (int)error_type;
*EG(user_error_handler) = *error_handler;
zval_copy_ctor(EG(user_error_handler));
INIT_PZVAL(EG(user_error_handler));
if (!had_orig_error_handler) {
RETURN_NULL();
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+52 -20
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -541,8 +541,39 @@ static zend_bool opline_is_fetch_this(zend_op *opline TSRMLS_DC)
void zend_do_assign(znode *result, znode *variable, znode *value TSRMLS_DC)
{
int last_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
int last_op_number;
zend_op *opline;
if (value->op_type == IS_CV) {
zend_llist *fetch_list_ptr;
zend_stack_top(&CG(bp_stack), (void **) &fetch_list_ptr);
if (fetch_list_ptr && fetch_list_ptr->head) {
opline = (zend_op *)fetch_list_ptr->head->data;
if (opline->opcode == ZEND_FETCH_DIM_W &&
opline->op1.op_type == IS_CV &&
opline->op1.u.var == value->u.var) {
opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->opcode = ZEND_FETCH_R;
opline->result.op_type = IS_VAR;
opline->result.u.EA.type = 0;
opline->result.u.var = get_temporary_variable(CG(active_op_array));
opline->op1.op_type = IS_CONST;
ZVAL_STRINGL(&opline->op1.u.constant,
CG(active_op_array)->vars[value->u.var].name,
CG(active_op_array)->vars[value->u.var].name_len, 1);
SET_UNUSED(opline->op2);
value = &opline->result;
}
}
}
zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC);
last_op_number = get_next_op_number(CG(active_op_array));
opline = get_next_op(CG(active_op_array) TSRMLS_CC);
if (variable->op_type == IS_VAR) {
int n = 0;
@@ -654,8 +685,14 @@ static inline void do_begin_loop(TSRMLS_D)
}
static inline void do_end_loop(int cont_addr TSRMLS_DC)
static inline void do_end_loop(int cont_addr, int has_loop_var TSRMLS_DC)
{
if (!has_loop_var) {
/* The start fileld is used to free temporary variables in case of exceptions.
* We won't try to free something of we don't have loop variable.
*/
CG(active_op_array)->brk_cont_array[CG(active_op_array)->current_brk_cont].start = -1;
}
CG(active_op_array)->brk_cont_array[CG(active_op_array)->current_brk_cont].cont = cont_addr;
CG(active_op_array)->brk_cont_array[CG(active_op_array)->current_brk_cont].brk = get_next_op_number(CG(active_op_array));
CG(active_op_array)->current_brk_cont = CG(active_op_array)->brk_cont_array[CG(active_op_array)->current_brk_cont].parent;
@@ -690,7 +727,7 @@ void zend_do_while_end(znode *while_token, znode *close_bracket_token TSRMLS_DC)
/* update while's conditional jmp */
CG(active_op_array)->opcodes[close_bracket_token->u.opline_num].op2.u.opline_num = get_next_op_number(CG(active_op_array));
do_end_loop(while_token->u.opline_num TSRMLS_CC);
do_end_loop(while_token->u.opline_num, 0 TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
@@ -734,7 +771,7 @@ void zend_do_for_end(znode *second_semicolon_token TSRMLS_DC)
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
do_end_loop(second_semicolon_token->u.opline_num+1 TSRMLS_CC);
do_end_loop(second_semicolon_token->u.opline_num+1, 0 TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
@@ -1069,6 +1106,7 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
zend_uint fn_flags;
char *lcname;
zend_bool orig_interactive;
ALLOCA_FLAG(use_heap)
if (is_method) {
if (CG(active_class_entry)->ce_flags & ZEND_ACC_INTERFACE) {
@@ -1129,7 +1167,7 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
}
if (!(CG(active_class_entry)->ce_flags & ZEND_ACC_INTERFACE)) {
short_class_name = do_alloca(short_class_name_length + 1);
short_class_name = do_alloca_with_limit(short_class_name_length + 1, use_heap);
zend_str_tolower_copy(short_class_name, CG(active_class_entry)->name, short_class_name_length);
/* Improve after RC: cache the lowercase class name */
@@ -1163,7 +1201,7 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
} else if (!(fn_flags & ZEND_ACC_STATIC)) {
CG(active_op_array)->fn_flags |= ZEND_ACC_ALLOW_STATIC;
}
free_alloca(short_class_name);
free_alloca_with_limit(short_class_name, use_heap);
}
efree(lcname);
@@ -1990,7 +2028,7 @@ static zend_bool zend_do_perform_implementation_check(zend_function *fe, zend_fu
return 0;
}
if (fe->common.arg_info[i].class_name
&& strcmp(fe->common.arg_info[i].class_name, proto->common.arg_info[i].class_name)!=0) {
&& strcasecmp(fe->common.arg_info[i].class_name, proto->common.arg_info[i].class_name)!=0) {
return 0;
}
if (fe->common.arg_info[i].array_type_hint != proto->common.arg_info[i].array_type_hint) {
@@ -2191,7 +2229,7 @@ static inline void do_implement_interface(zend_class_entry *ce, zend_class_entry
zend_error(E_CORE_ERROR, "Class %s could not implement interface %s", ce->name, iface->name);
}
if (ce == iface) {
zend_error(E_ERROR, "Interface %s cannot not implement itself", ce->name);
zend_error(E_ERROR, "Interface %s cannot implement itself", ce->name);
}
}
@@ -2614,7 +2652,7 @@ void zend_do_do_while_end(znode *do_token, znode *expr_open_bracket, znode *expr
opline->op2.u.opline_num = do_token->u.opline_num;
SET_UNUSED(opline->op2);
do_end_loop(expr_open_bracket->u.opline_num TSRMLS_CC);
do_end_loop(expr_open_bracket->u.opline_num, 0 TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
@@ -3005,7 +3043,7 @@ void zend_do_declare_property(znode *var_name, znode *value, zend_uint access_ty
}
if (access_type & ZEND_ACC_FINAL) {
zend_error(E_COMPILE_ERROR, "Cannot declare property %s::$%s final, the final modifier is allowed only for methods",
zend_error(E_COMPILE_ERROR, "Cannot declare property %s::$%s final, the final modifier is allowed only for methods and classes",
CG(active_class_entry)->name, var_name->u.constant.value.str.val);
}
@@ -3420,8 +3458,6 @@ void zend_do_list_end(znode *result, znode *expr TSRMLS_DC)
zend_llist_element *dimension;
zend_op *opline;
znode last_container;
int last_op_number;
zend_op *last_op;
le = CG(list_llist).head;
while (le) {
@@ -3461,9 +3497,6 @@ void zend_do_list_end(znode *result, znode *expr TSRMLS_DC)
}
((list_llist_element *) le->data)->value = last_container;
zend_llist_destroy(&((list_llist_element *) le->data)->dimensions);
zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC);
last_op_number = get_next_op_number(CG(active_op_array))-1;
last_op = &CG(active_op_array)->opcodes[last_op_number];
zend_do_assign(result, &((list_llist_element *) le->data)->var, &((list_llist_element *) le->data)->value TSRMLS_CC);
zend_do_free(result TSRMLS_CC);
le = le->next;
@@ -3824,9 +3857,9 @@ void zend_do_foreach_cont(znode *foreach_token, znode *open_brackets_token, znod
value_node = opline->result;
zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC);
if (assign_by_ref) {
/* Mark FE_FETCH as IS_VAR as it holds the data directly as a value */
zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC);
zend_do_assign_ref(NULL, value, &value_node TSRMLS_CC);
} else {
zend_do_assign(&dummy, value, &value_node TSRMLS_CC);
@@ -3836,7 +3869,6 @@ void zend_do_foreach_cont(znode *foreach_token, znode *open_brackets_token, znod
if (key->op_type != IS_UNUSED) {
znode key_node;
zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC);
opline = &CG(active_op_array)->opcodes[as_token->u.opline_num+1];
opline->result.op_type = IS_TMP_VAR;
opline->result.u.EA.type = 0;
@@ -3865,7 +3897,7 @@ void zend_do_foreach_end(znode *foreach_token, znode *as_token TSRMLS_DC)
CG(active_op_array)->opcodes[foreach_token->u.opline_num].op2.u.opline_num = get_next_op_number(CG(active_op_array)); /* FE_RESET */
CG(active_op_array)->opcodes[as_token->u.opline_num].op2.u.opline_num = get_next_op_number(CG(active_op_array)); /* FE_FETCH */
do_end_loop(as_token->u.opline_num TSRMLS_CC);
do_end_loop(as_token->u.opline_num, 1 TSRMLS_CC);
zend_stack_top(&CG(foreach_copy_stack), (void **) &container_ptr);
generate_free_foreach_copy(container_ptr TSRMLS_CC);
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+2 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -274,6 +274,7 @@ ZEND_API int zend_get_constant_ex(char *name, uint name_len, zval *result, zend_
zval_update_constant_ex(ret_constant, (void*)1, *ce TSRMLS_CC);
*result = **ret_constant;
zval_copy_ctor(result);
INIT_PZVAL(result);
}
return retval;
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+19 -31
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -645,7 +645,13 @@ static inline void zend_assign_to_variable(znode *result, znode *op1, znode *op2
if (((int)T->str_offset.offset < 0)) {
zend_error(E_WARNING, "Illegal string offset: %d", T->str_offset.offset);
break;
if (!RETURN_VALUE_UNUSED(result)) {
T(result->u.var).var.ptr_ptr = &EG(uninitialized_zval_ptr);
PZVAL_LOCK(*T(result->u.var).var.ptr_ptr);
AI_USE_PTR(T(result->u.var).var);
}
FREE_OP_VAR_PTR(free_op1);
return;
}
if (T->str_offset.offset >= Z_STRLEN_P(T->str_offset.str)) {
zend_uint i;
@@ -665,7 +671,7 @@ static inline void zend_assign_to_variable(znode *result, znode *op1, znode *op2
if (Z_TYPE_P(value)!=IS_STRING) {
tmp = *value;
if (op2->op_type & (IS_VAR|IS_CV)) {
if (op2->op_type != IS_TMP_VAR) {
zval_copy_ctor(&tmp);
}
convert_to_string(&tmp);
@@ -674,16 +680,13 @@ static inline void zend_assign_to_variable(znode *result, znode *op1, znode *op2
Z_STRVAL_P(T->str_offset.str)[T->str_offset.offset] = Z_STRVAL_P(final_value)[0];
if (op2->op_type == IS_TMP_VAR) {
if (final_value == &T(op2->u.var).tmp_var) {
/* we can safely free final_value here
* because separation is done only
* in case op2->op_type == IS_VAR */
STR_FREE(Z_STRVAL_P(final_value));
}
}
if (final_value == &tmp) {
zval_dtor(final_value);
} else if (op2->op_type == IS_TMP_VAR) {
/* we can safely free final_value here
* because separation is done only
* in case op2->op_type == IS_VAR */
STR_FREE(Z_STRVAL_P(final_value));
}
/*
* the value of an assignment to a string offset is undefined
@@ -692,11 +695,11 @@ static inline void zend_assign_to_variable(znode *result, znode *op1, znode *op2
} while (0);
/* zval_ptr_dtor(&T->str_offset.str); Nuke this line if it doesn't cause a leak */
/* T(result->u.var).var.ptr_ptr = &EG(uninitialized_zval_ptr); */
if (!RETURN_VALUE_UNUSED(result)) {
T(result->u.var).var.ptr_ptr = &value;
PZVAL_LOCK(*T(result->u.var).var.ptr_ptr);
AI_USE_PTR(T(result->u.var).var);
T(result->u.var).var.ptr_ptr = &T(result->u.var).var.ptr;
ALLOC_ZVAL(T(result->u.var).var.ptr);
INIT_PZVAL(T(result->u.var).var.ptr);
ZVAL_STRINGL(T(result->u.var).var.ptr, Z_STRVAL_P(T->str_offset.str)+T->str_offset.offset, 1, 1);
}
FREE_OP_VAR_PTR(free_op1);
return;
@@ -736,18 +739,12 @@ static inline void zend_assign_to_variable(znode *result, znode *op1, znode *op2
zend_uint refcount = variable_ptr->refcount;
zval garbage;
if (type != IS_TMP_VAR) {
value->refcount++;
}
garbage = *variable_ptr;
*variable_ptr = *value;
variable_ptr->refcount = refcount;
variable_ptr->is_ref = 1;
zend_error(E_STRICT, "Implicit cloning object of class '%s' because of 'zend.ze1_compatibility_mode'", class_name);
variable_ptr->value.obj = Z_OBJ_HANDLER_P(value, clone_obj)(value TSRMLS_CC);
if (type != IS_TMP_VAR) {
value->refcount--;
}
zendi_zval_dtor(garbage);
}
} else {
@@ -775,16 +772,12 @@ static inline void zend_assign_to_variable(znode *result, znode *op1, znode *op2
zend_uint refcount = variable_ptr->refcount;
zval garbage;
if (type!=IS_TMP_VAR) {
value->refcount++;
}
garbage = *variable_ptr;
*variable_ptr = *value;
variable_ptr->refcount = refcount;
variable_ptr->is_ref = 1;
if (type!=IS_TMP_VAR) {
zendi_zval_copy_ctor(*variable_ptr);
value->refcount--;
}
zendi_zval_dtor(garbage);
}
@@ -1234,12 +1227,7 @@ static void zend_fetch_property_address(temp_variable *result, zval **container_
zval *container;
if (!container_ptr) {
zend_error(E_WARNING, "Cannot use string offset as an array");
if (result) {
result->var.ptr_ptr = &EG(error_zval_ptr);
PZVAL_LOCK(*result->var.ptr_ptr);
}
return;
zend_error_noreturn(E_ERROR, "Cannot use string offset as an object");
}
container = *container_ptr;
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+33 -9
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -452,6 +452,19 @@ ZEND_API int zend_is_true(zval *op)
#define IS_CONSTANT_VISITED(p) (Z_TYPE_P(p) & IS_VISITED_CONSTANT)
#define MARK_CONSTANT_VISITED(p) Z_TYPE_P(p) |= IS_VISITED_CONSTANT
static void zval_deep_copy(zval **p)
{
zval *value;
ALLOC_ZVAL(value);
*value = **p;
Z_TYPE_P(value) &= ~IS_CONSTANT_INDEX;
zval_copy_ctor(value);
Z_TYPE_P(value) = Z_TYPE_PP(p);
INIT_PZVAL(value);
*p = value;
}
ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *scope TSRMLS_DC)
{
zval *p = *pp;
@@ -503,6 +516,16 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
p = *pp;
Z_TYPE_P(p) = IS_ARRAY;
if (!inline_change) {
zval *tmp;
HashTable *tmp_ht = NULL;
ALLOC_HASHTABLE(tmp_ht);
zend_hash_init(tmp_ht, zend_hash_num_elements(Z_ARRVAL_P(p)), NULL, ZVAL_PTR_DTOR, 0);
zend_hash_copy(tmp_ht, Z_ARRVAL_P(p), (copy_ctor_func_t) zval_deep_copy, (void *) &tmp, sizeof(zval *));
Z_ARRVAL_P(p) = tmp_ht;
}
/* First go over the array and see if there are any constant indices */
zend_hash_internal_pointer_reset(Z_ARRVAL_P(p));
while (zend_hash_get_current_data(Z_ARRVAL_P(p), (void **) &element)==SUCCESS) {
@@ -1034,19 +1057,20 @@ ZEND_API int zend_lookup_class_ex(char *name, int name_length, int use_autoload,
int retval;
char *lc_name;
zval *exception;
char dummy = 1;
zend_fcall_info fcall_info;
zend_fcall_info_cache fcall_cache;
char dummy = 1;
ALLOCA_FLAG(use_heap)
if (name == NULL || !name_length) {
return FAILURE;
}
lc_name = do_alloca(name_length + 1);
lc_name = do_alloca_with_limit(name_length + 1, use_heap);
zend_str_tolower_copy(lc_name, name, name_length);
if (zend_hash_find(EG(class_table), lc_name, name_length+1, (void **) ce) == SUCCESS) {
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
return SUCCESS;
}
@@ -1054,7 +1078,7 @@ ZEND_API int zend_lookup_class_ex(char *name, int name_length, int use_autoload,
* (doesn't impact fuctionality of __autoload()
*/
if (!use_autoload || zend_is_compiling(TSRMLS_C)) {
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
return FAILURE;
}
@@ -1064,7 +1088,7 @@ ZEND_API int zend_lookup_class_ex(char *name, int name_length, int use_autoload,
}
if (zend_hash_add(EG(in_autoload), lc_name, name_length+1, (void**)&dummy, sizeof(char), NULL) == FAILURE) {
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
return FAILURE;
}
@@ -1102,12 +1126,12 @@ ZEND_API int zend_lookup_class_ex(char *name, int name_length, int use_autoload,
if (retval == FAILURE) {
EG(exception) = exception;
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
return FAILURE;
}
if (EG(exception) && exception) {
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
zend_error(E_ERROR, "Function %s(%s) threw an exception of type '%s'", ZEND_AUTOLOAD_FUNC_NAME, name, Z_OBJCE_P(EG(exception))->name);
return FAILURE;
}
@@ -1119,7 +1143,7 @@ ZEND_API int zend_lookup_class_ex(char *name, int name_length, int use_autoload,
}
retval = zend_hash_find(EG(class_table), lc_name, name_length + 1, (void **) ce);
free_alloca(lc_name);
free_alloca_with_limit(lc_name, use_heap);
return retval;
}
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+66 -55
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -26,7 +26,7 @@
#include "zend_operators.h"
#include "zend_strtod.h"
static HashTable *registered_zend_ini_directives;
static HashTable *registered_zend_ini_directives;
#define NO_VALUE_PLAINTEXT "no value"
#define NO_VALUE_HTML "<i>no value</i>"
@@ -51,7 +51,7 @@ static int zend_restore_ini_entry_cb(zend_ini_entry *ini_entry, int stage TSRMLS
zend_try {
/* even if on_modify bails out, we have to continue on with restoring,
since there can be allocated variables that would be freed on MM shutdown
and would lead to memory corruption later ini entry is modified again */
and would lead to memory corruption later ini entry is modified again */
ini_entry->on_modify(ini_entry, ini_entry->orig_value, ini_entry->orig_value_length, ini_entry->mh_arg1, ini_entry->mh_arg2, ini_entry->mh_arg3, stage TSRMLS_CC);
} zend_end_try();
}
@@ -63,6 +63,9 @@ static int zend_restore_ini_entry_cb(zend_ini_entry *ini_entry, int stage TSRMLS
ini_entry->modified = 0;
ini_entry->orig_value = NULL;
ini_entry->orig_value_length = 0;
if (ini_entry->modifiable >= (1 << 3)) {
ini_entry->modifiable >>= 3;
}
}
return 0;
}
@@ -84,7 +87,7 @@ ZEND_API int zend_ini_startup(TSRMLS_D) /* {{{ */
EG(ini_directives) = registered_zend_ini_directives;
EG(modified_ini_directives) = NULL;
if (zend_hash_init_ex(registered_zend_ini_directives, 100, NULL, NULL, 1, 0)==FAILURE) {
if (zend_hash_init_ex(registered_zend_ini_directives, 100, NULL, NULL, 1, 0) == FAILURE) {
return FAILURE;
}
return SUCCESS;
@@ -126,7 +129,7 @@ ZEND_API int zend_copy_ini_directives(TSRMLS_D) /* {{{ */
EG(modified_ini_directives) = NULL;
EG(ini_directives) = (HashTable *) malloc(sizeof(HashTable));
if (zend_hash_init_ex(EG(ini_directives), registered_zend_ini_directives->nNumOfElements, NULL, NULL, 1, 0)==FAILURE) {
if (zend_hash_init_ex(EG(ini_directives), registered_zend_ini_directives->nNumOfElements, NULL, NULL, 1, 0) == FAILURE) {
return FAILURE;
}
zend_hash_copy(EG(ini_directives), registered_zend_ini_directives, NULL, &ini_entry, sizeof(zend_ini_entry));
@@ -139,15 +142,15 @@ static int ini_key_compare(const void *a, const void *b TSRMLS_DC) /* {{{ */
{
Bucket *f;
Bucket *s;
f = *((Bucket **) a);
s = *((Bucket **) b);
if (f->nKeyLength==0 && s->nKeyLength==0) { /* both numeric */
if (f->nKeyLength == 0 && s->nKeyLength == 0) { /* both numeric */
return ZEND_NORMALIZE_BOOL(f->nKeyLength - s->nKeyLength);
} else if (f->nKeyLength==0) { /* f is numeric, s is not */
} else if (f->nKeyLength == 0) { /* f is numeric, s is not */
return -1;
} else if (s->nKeyLength==0) { /* s is numeric, f is not */
} else if (s->nKeyLength == 0) { /* s is numeric, f is not */
return 1;
} else { /* both strings */
return zend_binary_strcasecmp(f->arKey, f->nKeyLength, s->arKey, s->nKeyLength);
@@ -189,15 +192,15 @@ ZEND_API int zend_register_ini_entries(zend_ini_entry *ini_entry, int module_num
while (p->name) {
p->module_number = module_number;
config_directive_success = 0;
if (zend_hash_add(directives, p->name, p->name_length, p, sizeof(zend_ini_entry), (void **) &hashed_ini_entry)==FAILURE) {
if (zend_hash_add(directives, p->name, p->name_length, p, sizeof(zend_ini_entry), (void **) &hashed_ini_entry) == FAILURE) {
zend_unregister_ini_entries(module_number TSRMLS_CC);
return FAILURE;
}
if ((zend_get_configuration_directive(p->name, p->name_length, &default_value))==SUCCESS) {
if ((zend_get_configuration_directive(p->name, p->name_length, &default_value)) == SUCCESS) {
if (!hashed_ini_entry->on_modify
|| hashed_ini_entry->on_modify(hashed_ini_entry, default_value.value.str.val, default_value.value.str.len, hashed_ini_entry->mh_arg1, hashed_ini_entry->mh_arg2, hashed_ini_entry->mh_arg3, ZEND_INI_STAGE_STARTUP TSRMLS_CC)==SUCCESS) {
hashed_ini_entry->value = default_value.value.str.val;
hashed_ini_entry->value_length = default_value.value.str.len;
|| hashed_ini_entry->on_modify(hashed_ini_entry, Z_STRVAL(default_value), Z_STRLEN(default_value), hashed_ini_entry->mh_arg1, hashed_ini_entry->mh_arg2, hashed_ini_entry->mh_arg3, ZEND_INI_STAGE_STARTUP TSRMLS_CC) == SUCCESS) {
hashed_ini_entry->value = Z_STRVAL(default_value);
hashed_ini_entry->value_length = Z_STRLEN(default_value);
config_directive_success = 1;
}
}
@@ -244,15 +247,20 @@ ZEND_API int zend_alter_ini_entry_ex(char *name, uint name_length, char *new_val
{
zend_ini_entry *ini_entry;
char *duplicate;
zend_bool modifiable;
zend_bool modified;
TSRMLS_FETCH();
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry)==FAILURE) {
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry) == FAILURE) {
return FAILURE;
}
modifiable = ini_entry->modifiable;
modified = ini_entry->modified;
if (stage == ZEND_INI_STAGE_ACTIVATE && modify_type == ZEND_INI_SYSTEM) {
ini_entry->modifiable = ZEND_INI_SYSTEM;
/* only touch lower bits */
ini_entry->modifiable = (ini_entry->modifiable & (ZEND_INI_ALL << 3)) | ZEND_INI_SYSTEM;
}
if (!force_change) {
@@ -261,8 +269,6 @@ ZEND_API int zend_alter_ini_entry_ex(char *name, uint name_length, char *new_val
}
}
modified = ini_entry->modified;
if (!EG(modified_ini_directives)) {
ALLOC_HASHTABLE(EG(modified_ini_directives));
zend_hash_init(EG(modified_ini_directives), 8, NULL, NULL, 0);
@@ -270,6 +276,8 @@ ZEND_API int zend_alter_ini_entry_ex(char *name, uint name_length, char *new_val
if (!modified) {
ini_entry->orig_value = ini_entry->value;
ini_entry->orig_value_length = ini_entry->value_length;
/* store orginial value in the upper bits */
ini_entry->modifiable = (modifiable << 3) | ini_entry->modifiable;
ini_entry->modified = 1;
zend_hash_add(EG(modified_ini_directives), name, name_length, &ini_entry, sizeof(zend_ini_entry*), NULL);
}
@@ -277,7 +285,7 @@ ZEND_API int zend_alter_ini_entry_ex(char *name, uint name_length, char *new_val
duplicate = estrndup(new_value, new_value_length);
if (!ini_entry->on_modify
|| ini_entry->on_modify(ini_entry, duplicate, new_value_length, ini_entry->mh_arg1, ini_entry->mh_arg2, ini_entry->mh_arg3, stage TSRMLS_CC)==SUCCESS) {
|| ini_entry->on_modify(ini_entry, duplicate, new_value_length, ini_entry->mh_arg1, ini_entry->mh_arg2, ini_entry->mh_arg3, stage TSRMLS_CC) == SUCCESS) {
if (modified && ini_entry->orig_value != ini_entry->value) { /* we already changed the value, free the changed value */
efree(ini_entry->value);
}
@@ -296,8 +304,8 @@ ZEND_API int zend_restore_ini_entry(char *name, uint name_length, int stage) /*
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry)==FAILURE ||
(stage == ZEND_INI_STAGE_RUNTIME && (ini_entry->modifiable & ZEND_INI_USER) == 0)) {
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry) == FAILURE ||
(stage == ZEND_INI_STAGE_RUNTIME && (ini_entry->modifiable & ZEND_INI_USER) == 0)) {
return FAILURE;
}
@@ -305,7 +313,7 @@ ZEND_API int zend_restore_ini_entry(char *name, uint name_length, int stage) /*
zend_restore_ini_entry_cb(ini_entry, stage TSRMLS_CC);
zend_hash_del(EG(modified_ini_directives), name, name_length);
}
return SUCCESS;
}
/* }}} */
@@ -314,7 +322,7 @@ ZEND_API int zend_ini_register_displayer(char *name, uint name_length, void (*di
{
zend_ini_entry *ini_entry;
if (zend_hash_find(registered_zend_ini_directives, name, name_length, (void **) &ini_entry)==FAILURE) {
if (zend_hash_find(registered_zend_ini_directives, name, name_length, (void **) &ini_entry) == FAILURE) {
return FAILURE;
}
@@ -332,7 +340,7 @@ ZEND_API long zend_ini_long(char *name, uint name_length, int orig) /* {{{ */
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry)==SUCCESS) {
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry) == SUCCESS) {
if (orig && ini_entry->modified) {
return (ini_entry->orig_value ? strtol(ini_entry->orig_value, NULL, 0) : 0);
} else if (ini_entry->value) {
@@ -349,7 +357,7 @@ ZEND_API double zend_ini_double(char *name, uint name_length, int orig) /* {{{ *
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry)==SUCCESS) {
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry) == SUCCESS) {
if (orig && ini_entry->modified) {
return (double) (ini_entry->orig_value ? zend_strtod(ini_entry->orig_value, NULL) : 0.0);
} else if (ini_entry->value) {
@@ -366,7 +374,7 @@ ZEND_API char *zend_ini_string(char *name, uint name_length, int orig) /* {{{ */
zend_ini_entry *ini_entry;
TSRMLS_FETCH();
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry)==SUCCESS) {
if (zend_hash_find(EG(ini_directives), name, name_length, (void **) &ini_entry) == SUCCESS) {
if (orig && ini_entry->modified) {
return ini_entry->orig_value;
} else {
@@ -378,7 +386,7 @@ ZEND_API char *zend_ini_string(char *name, uint name_length, int orig) /* {{{ */
}
/* }}} */
#if TONY_20070307
#if TONY_20070307
static void zend_ini_displayer_cb(zend_ini_entry *ini_entry, int type) /* {{{ */
{
if (ini_entry->displayer) {
@@ -387,18 +395,18 @@ static void zend_ini_displayer_cb(zend_ini_entry *ini_entry, int type) /* {{{ */
char *display_string;
uint display_string_length;
if (type==ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
if (type == ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
if (ini_entry->orig_value) {
display_string = ini_entry->orig_value;
display_string_length = ini_entry->orig_value_length;
} else {
if (zend_uv.html_errors) {
display_string = NO_VALUE_HTML;
display_string_length = sizeof(NO_VALUE_HTML)-1;
display_string_length = sizeof(NO_VALUE_HTML) - 1;
} else {
display_string = NO_VALUE_PLAINTEXT;
display_string_length = sizeof(NO_VALUE_PLAINTEXT)-1;
}
display_string_length = sizeof(NO_VALUE_PLAINTEXT) - 1;
}
}
} else if (ini_entry->value && ini_entry->value[0]) {
display_string = ini_entry->value;
@@ -406,11 +414,11 @@ static void zend_ini_displayer_cb(zend_ini_entry *ini_entry, int type) /* {{{ */
} else {
if (zend_uv.html_errors) {
display_string = NO_VALUE_HTML;
display_string_length = sizeof(NO_VALUE_HTML)-1;
display_string_length = sizeof(NO_VALUE_HTML) - 1;
} else {
display_string = NO_VALUE_PLAINTEXT;
display_string_length = sizeof(NO_VALUE_PLAINTEXT)-1;
}
display_string_length = sizeof(NO_VALUE_PLAINTEXT) - 1;
}
}
ZEND_WRITE(display_string, display_string_length);
}
@@ -423,7 +431,7 @@ ZEND_INI_DISP(zend_ini_boolean_displayer_cb) /* {{{ */
int value, tmp_value_len;
char *tmp_value;
if (type==ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
if (type == ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
tmp_value = (ini_entry->orig_value ? ini_entry->orig_value : NULL );
tmp_value_len = ini_entry->orig_value_length;
} else if (ini_entry->value) {
@@ -434,18 +442,20 @@ ZEND_INI_DISP(zend_ini_boolean_displayer_cb) /* {{{ */
tmp_value_len = 0;
}
if (tmp_value_len == 4 && strcasecmp(tmp_value, "true") == 0) {
value = 1;
} else if (tmp_value_len == 3 && strcasecmp(tmp_value, "yes") == 0) {
value = 1;
} else if (tmp_value_len == 2 && strcasecmp(tmp_value, "on") == 0) {
value = 1;
} else if (value) {
value = atoi(tmp_value);
if (tmp_value) {
if (tmp_value_len == 4 && strcasecmp(tmp_value, "true") == 0) {
value = 1;
} else if (tmp_value_len == 3 && strcasecmp(tmp_value, "yes") == 0) {
value = 1;
} else if (tmp_value_len == 2 && strcasecmp(tmp_value, "on") == 0) {
value = 1;
} else {
value = atoi(tmp_value);
}
} else {
value = 0;
}
if (value) {
ZEND_PUTS("On");
} else {
@@ -458,7 +468,7 @@ ZEND_INI_DISP(zend_ini_color_displayer_cb) /* {{{ */
{
char *value;
if (type==ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
if (type == ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
value = ini_entry->orig_value;
} else if (ini_entry->value) {
value = ini_entry->value;
@@ -470,13 +480,13 @@ ZEND_INI_DISP(zend_ini_color_displayer_cb) /* {{{ */
zend_printf("<font style=\"color: %s\">%s</font>", value, value);
} else {
ZEND_PUTS(value);
}
}
} else {
if (zend_uv.html_errors) {
ZEND_PUTS(NO_VALUE_HTML);
} else {
ZEND_PUTS(NO_VALUE_PLAINTEXT);
}
}
}
}
/* }}} */
@@ -485,7 +495,7 @@ ZEND_INI_DISP(display_link_numbers) /* {{{ */
{
char *value;
if (type==ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
if (type == ZEND_INI_DISPLAY_ORIG && ini_entry->modified) {
value = ini_entry->orig_value;
} else if (ini_entry->value) {
value = ini_entry->value;
@@ -494,7 +504,7 @@ ZEND_INI_DISP(display_link_numbers) /* {{{ */
}
if (value) {
if (atoi(value)==-1) {
if (atoi(value) == -1) {
ZEND_PUTS("Unlimited");
} else {
zend_printf("%s", value);
@@ -517,15 +527,15 @@ ZEND_API ZEND_INI_MH(OnUpdateBool) /* {{{ */
p = (zend_bool *) (base+(size_t) mh_arg1);
if (new_value_length==2 && strcasecmp("on", new_value)==0) {
if (new_value_length == 2 && strcasecmp("on", new_value) == 0) {
*p = (zend_bool) 1;
}
else if (new_value_length==3 && strcasecmp("yes", new_value)==0) {
}
else if (new_value_length == 3 && strcasecmp("yes", new_value) == 0) {
*p = (zend_bool) 1;
}
else if (new_value_length==4 && strcasecmp("true", new_value)==0) {
}
else if (new_value_length == 4 && strcasecmp("true", new_value) == 0) {
*p = (zend_bool) 1;
}
}
else {
*p = (zend_bool) atoi(new_value);
}
@@ -549,6 +559,7 @@ ZEND_API ZEND_INI_MH(OnUpdateLong) /* {{{ */
*p = zend_atoi(new_value, new_value_length);
return SUCCESS;
}
/* }}} */
ZEND_API ZEND_INI_MH(OnUpdateLongGEZero)
{
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -3,7 +3,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+5 -5
View File
@@ -551,7 +551,7 @@ non_empty_for_expr:
expr_without_variable:
T_LIST '(' { zend_do_list_init(TSRMLS_C); } assignment_list ')' '=' expr { zend_do_list_end(&$$, &$7 TSRMLS_CC); }
| variable '=' expr { zend_check_writable_variable(&$1); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_assign(&$$, &$1, &$3 TSRMLS_CC); }
| variable '=' expr { zend_check_writable_variable(&$1); zend_do_assign(&$$, &$1, &$3 TSRMLS_CC); }
| variable '=' '&' variable { zend_check_writable_variable(&$1); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_assign_ref(&$$, &$1, &$4 TSRMLS_CC); }
| variable '=' '&' T_NEW class_name_reference { zend_error(E_STRICT, "Assigning the return value of new by reference is deprecated"); zend_check_writable_variable(&$1); zend_do_extended_fcall_begin(TSRMLS_C); zend_do_begin_new_object(&$4, &$5 TSRMLS_CC); } ctor_arguments { zend_do_end_new_object(&$3, &$4, &$7 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_assign_ref(&$$, &$1, &$3 TSRMLS_CC); }
| T_NEW class_name_reference { zend_do_extended_fcall_begin(TSRMLS_C); zend_do_begin_new_object(&$1, &$2 TSRMLS_CC); } ctor_arguments { zend_do_end_new_object(&$$, &$1, &$4 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
@@ -740,13 +740,13 @@ r_variable:
w_variable:
variable { zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); $$ = $1; }
{ zend_check_writable_variable(&$1); }
variable { zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); $$ = $1;
zend_check_writable_variable(&$1); }
;
rw_variable:
variable { zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); $$ = $1; }
{ zend_check_writable_variable(&$1); }
variable { zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); $$ = $1;
zend_check_writable_variable(&$1); }
;
variable:
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+16 -21
View File
@@ -723,7 +723,7 @@ ZEND_API int zend_multibyte_yyinput(zend_file_handle *file_handle, char *buf, si
/* TODO: support widechars */
for (n = 0; n < sizeof(buf) && (c = zend_stream_getc(yyin TSRMLS_CC)) != EOF && c != '\n'; ++n) {
for (n = 0; n < len && (c = zend_stream_getc(yyin TSRMLS_CC)) != EOF && c != '\n'; ++n) {
buf[n] = (char)c;
}
if (c == '\n') {
@@ -731,8 +731,8 @@ ZEND_API int zend_multibyte_yyinput(zend_file_handle *file_handle, char *buf, si
}
SCNG(script_org_size) = n;
SCNG(script_org) = (char*)emalloc(SCNG(script_org_size)+1);
memcpy(SCNG(script_org)+SCNG(script_org_size)-n, buf, n);
SCNG(script_org) = (char*)emalloc(SCNG(script_org_size) + 1);
memcpy(SCNG(script_org), buf, n);
return n;
}
@@ -749,29 +749,18 @@ ZEND_API int zend_multibyte_read_script(TSRMLS_D)
SCNG(script_org) = NULL;
SCNG(script_org_size) = 0;
for (;;) {
n = zend_stream_read(yyin, buf, sizeof(buf) TSRMLS_CC);
if (n <= 0) {
break;
}
for (; (n = zend_stream_read(yyin, buf, sizeof(buf) TSRMLS_CC)) > 0; ) {
SCNG(script_org_size) += n;
if (SCNG(script_org)) {
SCNG(script_org) = (char*)erealloc(SCNG(script_org), SCNG(script_org_size)+1);
} else {
SCNG(script_org) = (char*)emalloc(SCNG(script_org_size)+1);
}
memcpy(SCNG(script_org)+SCNG(script_org_size)-n, buf, n);
SCNG(script_org) = (char*)erealloc(SCNG(script_org), SCNG(script_org_size));
memcpy(SCNG(script_org) + SCNG(script_org_size) - n, buf, n);
}
if (n < 0) {
return -1;
}
if (!SCNG(script_org)) {
SCNG(script_org) = emalloc(SCNG(script_org_size)+1);
}
*(SCNG(script_org)+SCNG(script_org_size)) = (char)NULL;
SCNG(script_org) = (char*)erealloc(SCNG(script_org), SCNG(script_org_size) + 1);
*(SCNG(script_org)+SCNG(script_org_size)) = '\0';
return 0;
}
@@ -1930,8 +1919,13 @@ HEREDOC_CHARS ("{"*([^$\n\r\\{]|("\\"[^\n\r]))|{HEREDOC_LITERAL_DOLLAR}|({
if (yyleng > CG(heredoc_len) && !memcmp(end - CG(heredoc_len), CG(heredoc), CG(heredoc_len))) {
int len = yyleng - CG(heredoc_len) - 2; /* 2 for newline before and after label */
if (len > 0 && yytext[len - 1] == '\r' && yytext[len] == '\n') {
len--;
/* May have matched fooLABEL; make sure there's a newline before it */
if (yytext[len] != '\n') {
if (yytext[len] != '\r') {
goto wrong_label;
}
} else if (len > 0 && yytext[len - 1] == '\r') {
len--; /* Windows newline */
}
/* Go back before last label char, to match in ST_END_HEREDOC state */
@@ -1948,6 +1942,7 @@ HEREDOC_CHARS ("{"*([^$\n\r\\{]|("\\"[^\n\r]))|{HEREDOC_LITERAL_DOLLAR}|({
} else {
/* Go back to end of label, so the next match works correctly in case of
* a variable or another label at the beginning of the next line */
wrong_label:
yyless(yyleng - 1);
yymore();
}
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+46 -11
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -354,7 +354,7 @@ zval *zend_std_read_property(zval *object, zval *member, int type TSRMLS_DC)
}
} else {
if (!silent) {
zend_error(E_NOTICE,"Undefined property: %s::$%s", zobj->ce->name, Z_STRVAL_P(member));
zend_error(E_NOTICE,"Undefined property: %s::$%s", zobj->ce->name, Z_STRVAL_P(member));
}
retval = &EG(uninitialized_zval_ptr);
}
@@ -758,14 +758,15 @@ static union _zend_function *zend_std_get_method(zval **object_ptr, char *method
zend_function *fbc;
char *lc_method_name;
zval *object = *object_ptr;
ALLOCA_FLAG(use_heap)
lc_method_name = do_alloca(method_len+1);
lc_method_name = do_alloca_with_limit(method_len+1, use_heap);
/* Create a zend_copy_str_tolower(dest, src, src_length); */
zend_str_tolower_copy(lc_method_name, method_name, method_len);
zobj = Z_OBJ_P(object);
if (zend_hash_find(&zobj->ce->function_table, lc_method_name, method_len+1, (void **)&fbc) == FAILURE) {
free_alloca(lc_method_name);
free_alloca_with_limit(lc_method_name, use_heap);
if (zobj->ce->__call) {
zend_internal_function *call_user_call = emalloc(sizeof(zend_internal_function));
call_user_call->type = ZEND_INTERNAL_FUNCTION;
@@ -820,7 +821,7 @@ static union _zend_function *zend_std_get_method(zval **object_ptr, char *method
}
}
free_alloca(lc_method_name);
free_alloca_with_limit(lc_method_name, use_heap);
return fbc;
}
@@ -831,12 +832,32 @@ ZEND_API zend_function *zend_std_get_static_method(zend_class_entry *ce, char *f
zend_function *fbc;
if (zend_hash_find(&ce->function_table, function_name_strval, function_name_strlen+1, (void **) &fbc)==FAILURE) {
char *class_name = ce->name;
if (ce->__call &&
EG(This) &&
Z_OBJ_HT_P(EG(This))->get_class_entry &&
instanceof_function(Z_OBJCE_P(EG(This)), ce TSRMLS_CC)) {
zend_internal_function *call_user_call = emalloc(sizeof(zend_internal_function));
if (!class_name) {
class_name = "";
call_user_call->type = ZEND_INTERNAL_FUNCTION;
call_user_call->module = ce->module;
call_user_call->handler = zend_std_call_user_call;
call_user_call->arg_info = NULL;
call_user_call->num_args = 0;
call_user_call->scope = ce;
call_user_call->fn_flags = 0;
call_user_call->function_name = estrndup(function_name_strval, function_name_strlen);
call_user_call->pass_rest_by_reference = 0;
call_user_call->return_reference = ZEND_RETURN_VALUE;
return (union _zend_function *)call_user_call;
} else {
char *class_name = ce->name;
if (!class_name) {
class_name = "";
}
zend_error(E_ERROR, "Call to undefined method %s::%s()", class_name, function_name_strval);
}
zend_error(E_ERROR, "Call to undefined method %s::%s()", class_name, function_name_strval);
}
if (fbc->op_array.fn_flags & ZEND_ACC_PUBLIC) {
/* No further checks necessary, most common case */
@@ -897,7 +918,7 @@ ZEND_API zval **zend_std_get_static_property(zend_class_entry *ce, char *propert
if (silent) {
return NULL;
} else {
zend_error(E_ERROR, "Access to undeclared static property: %s::$%s", ce->name, property_name);
zend_error(E_ERROR, "Access to undeclared static property: %s::$%s", ce->name, property_name);
}
}
@@ -923,7 +944,7 @@ ZEND_API union _zend_function *zend_std_get_constructor(zval *object TSRMLS_DC)
} else if (constructor->op_array.fn_flags & ZEND_ACC_PRIVATE) {
/* Ensure that if we're calling a private function, we're allowed to do so.
*/
if (Z_OBJ_HANDLER_P(object, get_class_entry)(object TSRMLS_CC) != EG(scope)) {
if (constructor->common.scope != EG(scope)) {
if (EG(scope)) {
zend_error(E_ERROR, "Call to private %s::%s() from context '%s'", constructor->common.scope->name, constructor->common.function_name, EG(scope)->name);
} else {
@@ -1085,6 +1106,9 @@ ZEND_API int zend_std_cast_object_tostring(zval *readobj, zval *writeobj, int ty
}
if (Z_TYPE_P(retval) == IS_STRING) {
INIT_PZVAL(writeobj);
if (readobj == writeobj) {
zval_dtor(readobj);
}
ZVAL_ZVAL(writeobj, retval, 1, 1);
if (Z_TYPE_P(writeobj) != type) {
convert_to_explicit_type(writeobj, type);
@@ -1093,6 +1117,9 @@ ZEND_API int zend_std_cast_object_tostring(zval *readobj, zval *writeobj, int ty
} else {
zval_ptr_dtor(&retval);
INIT_PZVAL(writeobj);
if (readobj == writeobj) {
zval_dtor(readobj);
}
ZVAL_EMPTY_STRING(writeobj);
zend_error(E_RECOVERABLE_ERROR, "Method %s::__toString() must return a string value", ce->name);
return SUCCESS;
@@ -1107,15 +1134,23 @@ ZEND_API int zend_std_cast_object_tostring(zval *readobj, zval *writeobj, int ty
ce = Z_OBJCE_P(readobj);
zend_error(E_NOTICE, "Object of class %s could not be converted to int", ce->name);
INIT_PZVAL(writeobj);
if (readobj == writeobj) {
zval_dtor(readobj);
}
ZVAL_LONG(writeobj, 1);
return SUCCESS;
case IS_DOUBLE:
ce = Z_OBJCE_P(readobj);
zend_error(E_NOTICE, "Object of class %s could not be converted to double", ce->name);
INIT_PZVAL(writeobj);
if (readobj == writeobj) {
zval_dtor(readobj);
}
ZVAL_DOUBLE(writeobj, 1);
return SUCCESS;
default:
INIT_PZVAL(writeobj);
Z_TYPE_P(writeobj) = IS_NULL;
break;
}
return FAILURE;
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+1 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
+3 -1
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2007 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2008 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 |
@@ -101,6 +101,8 @@ void init_op_array(zend_op_array *op_array, zend_uchar type, int initial_ops_siz
op_array->fn_flags = CG(interactive)?ZEND_ACC_INTERACTIVE:0;
memset(op_array->reserved, 0, ZEND_MAX_RESERVED_RESOURCES * sizeof(void*));
zend_llist_apply_with_argument(&zend_extensions, (llist_apply_with_arg_func_t) zend_extension_op_array_ctor_handler, op_array TSRMLS_CC);
}
Loaded 100 of 2872 files, more files were not shown because too many files have changed in this diff. Show more