Compare commits

..
Author SHA1 Message Date
SVN Migration df70dd6b9c This commit was manufactured by cvs2svn to create tag 'php_5_1_2RC2'. 2006-01-05 22:03:08 +00:00
Ilia Alshanetsky 32dc6ee526 Go with 5.1.2RC2 2006-01-05 18:36:24 +00:00
Ilia Alshanetsky 8340e30313 Revert unrelated parts of the previous patch. 2006-01-05 18:07:55 +00:00
Ilia Alshanetsky e9c813af61 MFH4: Fixed bug #35908 (curl extension uses undefined GCRY_THREAD_OPTIONS_USER). 2006-01-05 18:05:37 +00:00
Antony Dovgal 8eb44c317e MFH: delete descriptor from the hash and avoid crashes on commit/rollback 2006-01-05 13:42:35 +00:00
Sebastian Bergmann b185e09245 MFH: Add astro.c. 2006-01-05 06:41:09 +00:00
Andi Gutmans 864a2897df - More -> 2006 changes 2006-01-05 02:34:02 +00:00
Ilia Alshanetsky fc4fb89cac Fixed bug #35669 (imap_mail_compose() crashes with
multipart-multiboundary-email).
2006-01-05 00:47:16 +00:00
Andi Gutmans 30cb5e36b8 - Update to 2006 2006-01-04 23:55:42 +00:00
Andi Gutmans 61e93ccfe8 - Update copyright notices to 2006 2006-01-04 23:53:05 +00:00
Derick Rethans 0d4965407e - Removed the files which are no longer necessary. 2006-01-04 21:35:17 +00:00
Derick Rethans 88268c6bcc - MFH: Fixed bug #35887 (wddx_deserialize not parsing dateTime fields properly).
- MFH: Fixed bug #35885 (strtotime("NOW") no longer works).
- MFH: Fixed bug #33789 (Many Problems with SunFuncs).
- MFH: Fixed bug #33671 (sun_rise and sun_set don't return a GMT timestamp if one
  passes an offset).
- MFH: Fixed bug #32820 (date_sunrise and date_sunset don't handle GMT offset
  well).
- MFH: Fixed bug #30937 (date_sunrise() & date_sunset() don't handle endless
  day/night at high latitudes).
2006-01-04 21:31:35 +00:00
Rob Richards 594139b1ea MFH: fix test 2006-01-04 20:55:58 +00:00
Rob Richards da692974ab MFH: fix tests 2006-01-04 19:44:46 +00:00
Marcus Boerger 47e6f644f7 - MFH Update examples 2006-01-04 15:34:39 +00:00
Marcus Boerger f9bfdc921a - MFH 2006-01-04 15:17:41 +00:00
Marcus Boerger 43fdbe99cd - MFH 2006-01-04 15:08:02 +00:00
Derick Rethans 0839cadef6 - Fixed broken test case. 2006-01-04 10:31:58 +00:00
Ilia Alshanetsky fb91408a17 Added param checks for ap2 fetch respose/request header functions. 2006-01-03 20:13:07 +00:00
foobar 22f4a05149 - prevent pontential failure with stupid compilers 2006-01-03 13:25:06 +00:00
foobar 58576f71c3 typofix 2006-01-03 13:24:46 +00:00
foobar bcc1654de3 - Fixed bug #35288 (iconv() function defined as libiconv()) 2006-01-03 13:21:07 +00:00
Ilia Alshanetsky a5e15f2e1c Fixed possible crash in apache_getenv()/apache_setenv() on invalid
parameters.
2006-01-02 22:19:37 +00:00
foobar 6d8c69e3cb MFH: fixed apache_setenv(): at least 2 parameters are required 2006-01-02 22:10:38 +00:00
Derick Rethans d4dd29194b - MFH: Fixed year dependent test. 2006-01-02 20:15:57 +00:00
Ilia Alshanetsky 488500acfb Added safety checks 2006-01-01 20:12:55 +00:00
Ilia Alshanetsky 64a7e46506 Fixed bug #35797 (segfault on PDOStatement::execute() with
zend.ze1_compatibility_mode = On).
2006-01-01 20:07:41 +00:00
Marcus Boerger 34f32d4dcd - Just another place where rewind() might not be set 2006-01-01 19:55:27 +00:00
Marcus Boerger e99fac3d01 - key() might be optional 2006-01-01 19:51:17 +00:00
Marcus Boerger d6ee7d1d9a - Fix SEGV when rewind() not set 2006-01-01 19:48:11 +00:00
foobar 9b01900321 MFH 2006-01-01 19:00:53 +00:00
Marcus Boerger e5ab119ad3 - dos2unix 2006-01-01 17:27:31 +00:00
Rasmus Lerdorf e2dd2d7e7a Fix the build 2006-01-01 17:24:32 +00:00
Andrey Hristov 3a75666285 WS 2006-01-01 16:55:01 +00:00
Andrey Hristov d03aea048f fetch more than one row at once 2006-01-01 16:52:05 +00:00
foobar 62b9a736bf MFH: oops 2006-01-01 13:27:13 +00:00
foobar 63e14480fc fix typo 2006-01-01 13:13:52 +00:00
foobar 12894cc1b6 update credits 2006-01-01 13:04:33 +00:00
foobar 5bd93221a8 bump year and license version 2006-01-01 12:51:34 +00:00
foobar 220490222a - Fix date 2006-01-01 12:47:32 +00:00
foobar 56567d31b3 Update license to 3.01 2006-01-01 12:30:06 +00:00
foobar e3fd31503b bump the year and license version 2006-01-01 12:26:08 +00:00
Marcus Boerger 9846878450 - MFH Fix environment handling 2005-12-31 17:48:26 +00:00
Marcus Boerger 8479546920 - MFH Fix tests 2005-12-31 17:42:39 +00:00
foobar 90c6bfd259 BFN 2005-12-31 00:57:29 +00:00
foobar 8d63360fc4 MFH:- Fixed bug #35377 (undefined reference to "fdatasync") 2005-12-31 00:56:06 +00:00
Rasmus Lerdorf c7d2d2a689 MFH - instantiated is correct 2005-12-30 17:15:55 +00:00
Marcus Boerger c2c7bc6a10 - WS 2005-12-30 15:05:17 +00:00
Marcus Boerger 2a140b8f40 - Allow to specify ini to use for test executeable 2005-12-30 13:39:54 +00:00
Marcus Boerger dc7ecd41ef - If user wnats help, don't complain about missing environment 2005-12-30 13:31:48 +00:00
Marcus Boerger bb29557060 - Need to set precision in ini 2005-12-30 12:49:46 +00:00
foobar b905bddda8 MFH 2005-12-30 12:21:48 +00:00
Marcus Boerger ad5af84a3c - Fix test 2005-12-30 11:44:21 +00:00
foobar c5b9552891 MFH: typofix 2005-12-30 05:40:43 +00:00
Rui Hirokawa b0ccd89450 MFH:added Turkish language definition (related to bug #29955) 2005-12-30 00:49:24 +00:00
Ilia Alshanetsky 5c32e974aa Not a fatal error. 2005-12-29 21:59:39 +00:00
Derick Rethans 25aeeb5e25 - Fixed bug #35751 (using date with a timestamp makes httpd segfault). 2005-12-29 10:54:07 +00:00
Georg Richter a5acdfc5f2 Fix for bug #35517:
added missing unsigned flag for result buffer
	fixed returncode in mysql_stmt_fetch for data truncation
2005-12-29 09:49:19 +00:00
Sara Golemon 3795f9d8bb MFH(r-1.7) Silence compiler warning: unused variable 2005-12-29 06:02:17 +00:00
Ilia Alshanetsky 0e396980a1 Fixed bug #35817 (unpack() does not decode odd number of hexadecimal values) 2005-12-28 20:55:14 +00:00
Antony Dovgal b5aeda4e65 tweak the fix 2005-12-27 23:26:55 +00:00
Antony Dovgal f046cdf3fa fix #35821 (array_map() segfaults when exception is throwed from the callback) 2005-12-27 22:32:01 +00:00
Derick Rethans 21e1f5da43 - MFH: Upgraded timezone db to 2005.18. 2005-12-27 19:50:13 +00:00
Ilia Alshanetsky f34a85bc58 Improve "skip" checks 2005-12-27 17:16:41 +00:00
Antony Dovgal d7c1980a21 typofix 2005-12-26 23:58:42 +00:00
foobar 73ab144544 MFH: fix test 2005-12-26 18:30:33 +00:00
foobar 74d3631062 reorder 2005-12-26 16:18:44 +00:00
foobar 64363f71f2 fix news 2005-12-26 16:17:56 +00:00
Antony Dovgal 537900c8e8 add new test for recently fixed bug 2005-12-26 15:05:38 +00:00
Marcus Boerger 8b35266a35 - BFN 2005-12-26 14:48:58 +00:00
Marcus Boerger 22ee7f8e3e - MFH Support full range of floats 2005-12-26 14:46:49 +00:00
Marcus Boerger ec1a7e02d4 - SWH (WS + memory corruption fix) 2005-12-26 13:41:58 +00:00
Zeev Suraski 7669169bd5 Whitespace fix (don't ask :) 2005-12-26 09:28:38 +00:00
Dmitry Stogov 56d78654a3 Reverted invalid fix for bug #35785 2005-12-26 08:18:38 +00:00
Pierre Joye 6bcb57fc2b - xslt/exslt versions constants entry 2005-12-26 00:59:32 +00:00
Pierre Joye 41284d17b0 - MFH: #35805 add LIBXSLT_VERSION, LIBXSLT_DOTTED_VERSION, LIBEXSLT_VERSION
and LIBEXSLT_DOTTED_VERSION
2005-12-26 00:56:41 +00:00
Antony Dovgal 386581b3f8 add missing skipif tag 2005-12-25 22:38:14 +00:00
Pierre Joye 7ebca7d3b7 - imagecolormatch fix and changes 2005-12-25 20:34:59 +00:00
Pierre Joye d07b094461 - MFH: raise warnings instead of errors in colormatch 2005-12-25 20:33:05 +00:00
Ilia Alshanetsky 077559d3e4 Make MySQL driver use ANSI complaint quoting style. 2005-12-25 20:30:40 +00:00
Pierre Joye f5a7694305 - MFH: fix segfault/leak in imagecolormatch
- MFH: test for imagecolormatch
2005-12-25 19:39:53 +00:00
foobar cfda375620 MFH 2005-12-25 16:04:15 +00:00
Rui Hirokawa ef0c0cc62b MFH: fixed #35711, added mbstring.strict_detection to detect the encoding striktly. 2005-12-25 15:23:55 +00:00
Ilia Alshanetsky 2e50763315 Fixed memory corruption that affected pdo_sqlite2. 2005-12-24 17:41:04 +00:00
Marcus Boerger 319dff73fb - Make this work with VPATH builds too 2005-12-24 12:23:09 +00:00
Marcus Boerger 6c2ebc6d76 - MFH Require re2c 0.9.11 and use correct version notation 2005-12-24 11:38:05 +00:00
Rui Hirokawa 11105b1eed MFH: fixed #35711 ISO-8859 charset not correctly detected. 2005-12-24 04:32:42 +00:00
Andrey Hristov caac5ef86d move the message to where it belongs 2005-12-23 22:27:23 +00:00
Andrey Hristov eea08af619 fix small memory leak which emerged two days ago 2005-12-23 22:22:42 +00:00
Marcus Boerger 1a36aaf874 - BFN 2005-12-23 20:40:52 +00:00
Marcus Boerger 9a6a266b16 - MFH Fixed Bug #35785 (SimpleXML memory read error) 2005-12-23 20:32:15 +00:00
Marcus Boerger ad61a18a2e - MFH Add new test 2005-12-23 20:26:41 +00:00
Marcus Boerger 42f8bef053 - MFH Fix test by splitting it 2005-12-23 20:04:30 +00:00
Marcus Boerger b1cb83f3c9 - MFH Fix handling of bork tests 2005-12-23 19:40:12 +00:00
Ilia Alshanetsky 7f75b5fbf4 RC2 not RC1 2005-12-23 19:12:28 +00:00
foobar d411d72053 MFH:fix mkdir() function properly (patch by nlopess) 2005-12-23 18:57:39 +00:00
Stefan Esser f7c77f0f33 Beware of format strings... 2005-12-23 18:23:43 +00:00
foobar fc6d0f3264 BFN 2005-12-23 18:00:03 +00:00
Rui Hirokawa 4628a41c00 MFH: fixed #29955 mb_strtoupper() / lower() broken with Turkish encoding.. 2005-12-23 15:18:52 +00:00
Ilia Alshanetsky 983263ce5d Bug fixing news 2005-12-23 14:43:57 +00:00
Ilia Alshanetsky e18a1d7c08 Back to dev 2005-12-23 14:42:49 +00:00
Antony Dovgal 248be6fcfc fix #35781 (stream_filter_append() can cause segfault) 2005-12-23 14:32:11 +00:00
Rui Hirokawa cf90abfc24 MFH: fixed #28899 mb_substr() and substr() work differently when mbstring.func_overload is enabled. 2005-12-23 11:15:16 +00:00
Marcus Boerger 35343ffaec - MFH Do not test output escaping here 2005-12-23 08:44:43 +00:00
Edin Kadribasic a151e632d5 MFH: Back out a portion of the previous patch which broke win32 file functions 2005-12-22 21:33:38 +00:00
Marcus Boerger 3515689363 \# Damn ! 2005-12-22 20:27:11 +00:00
Marcus Boerger 8c4d236546 - MFH Point to README.TESTING 2005-12-22 20:24:46 +00:00
Andrey Hristov a0872d6bed BFN
#if it is not clear from the previous commit that fixes the bug. the leaks
#does not come from the fix bug from some other bug.
2005-12-22 18:13:47 +00:00
Andrey Hristov 1c0971f3ce fix for bug# 35759
(mysqli_stmt_bind_result() makes huge allocation when column empty)
#this shows some leaks now, which has to be investigated but closes the
#bug report.
2005-12-22 18:11:39 +00:00
Dmitry Stogov 9c2ea13abc Fixed bug #35612 (iis6 Access Violation crash). (alacn dot uhahaa at gmail dot com) 2005-12-22 16:46:15 +00:00
Zeev Suraski a034972797 Fix prototype 2005-12-22 14:55:55 +00:00
Ilia Alshanetsky 7c17499079 5.1.2RC1 2005-12-22 14:17:56 +00:00
Dmitry Stogov ad90780930 Fixed memory leak 2005-12-22 09:16:11 +00:00
Marcus Boerger c5b4115fd6 - Find lib in default locations, too 2005-12-22 08:57:38 +00:00
Marcus Boerger 7f6018aa3a - WS 2005-12-22 00:37:07 +00:00
Marcus Boerger 53e37ac843 - Fix memleak 2005-12-22 00:35:37 +00:00
Antony Dovgal c01d79b2df merge two skipif entries 2005-12-22 00:19:28 +00:00
Marcus Boerger 0986f33d1e - Fix memleak 2005-12-22 00:06:38 +00:00
foobar 34ff54e4c7 Better be a bit more verbose 2005-12-21 22:48:50 +00:00
Frank M. Kromann a7d2ac4189 Fix #35730 Use correct character encoding with FreeTDS 2005-12-21 22:43:06 +00:00
Marcus Boerger 970298401b - MFH Add --[keep|show]-[all|skip|php] switches 2005-12-21 22:23:55 +00:00
Marcus Boerger fc0fe6472e - MFH Add missing skipif 2005-12-21 22:22:33 +00:00
foobar 59aecb1d88 MFH:- Fixed bug #35461 (Ming extension fails to compile with ming 0.3beta1) 2005-12-21 21:44:15 +00:00
Marcus Boerger fe3f66e188 - We need to store the length of the class name 2005-12-21 20:05:24 +00:00
Ilia Alshanetsky 8710b8c5f5 Don't lose track of exec() errors in pdo_sqlite2 2005-12-21 16:23:12 +00:00
foobar d09ad216a0 MFH: prevent compile failure with --disable-all 2005-12-21 14:22:26 +00:00
Antony Dovgal 604990d6a5 fix test, add test for 64bit platform 2005-12-21 12:16:20 +00:00
Antony Dovgal b7d5d7047b fix test 2005-12-21 11:46:26 +00:00
Antony Dovgal c92ae847c7 add missing skipif conditions
fix existing ones
2005-12-21 11:42:06 +00:00
Antony Dovgal 97200944d2 add skipif conditions 2005-12-21 10:49:51 +00:00
Antony Dovgal fb607b0327 BFN 2005-12-21 10:21:31 +00:00
Antony Dovgal 81a2bacdc4 fix #35760 (sybase_ct doesn't compile on Solaris) 2005-12-21 10:18:32 +00:00
Pierre Joye f90214347e - MFH: add tests, ~70% coverage 2005-12-21 03:58:59 +00:00
Pierre Joye d831a501f7 - MFH: typo in error msg 2005-12-21 02:59:50 +00:00
Pierre Joye ab056b02a1 - fix {{{ 2005-12-21 01:12:24 +00:00
Marcus Boerger 8e43f0085b - Apply workaround only when neccessary 2005-12-20 21:38:28 +00:00
Marcus Boerger eb99c74567 - MFH move zend_object_Value definition to zend_types.h 2005-12-20 21:37:52 +00:00
Marcus Boerger af264f6f0d - MFH add Z_OBJVAL*() macros 2005-12-20 21:37:19 +00:00
Marcus Boerger 81c25d8700 - Get rid of compiler warnings (both postgres an dphp use these defines) 2005-12-20 21:10:43 +00:00
Derick Rethans 48336bcd71 - This check is unnecessary, as it can only be set through the
date_default_timezone_set() function which checks the value already.
2005-12-20 19:58:44 +00:00
Derick Rethans f0a0f89a2c - MFH: Fixed bug #35660 (AIX TZ variable format not understood, yields UTC
timezone).
2005-12-20 19:54:10 +00:00
Antony Dovgal 3782a4acf2 fix test description 2005-12-20 17:00:24 +00:00
Antony Dovgal 670b075f87 fix notice 2005-12-20 16:17:30 +00:00
Derick Rethans 97ec0f3db5 - Fixed bug #35699 (date() can't handle leap years before 1970). 2005-12-20 15:58:01 +00:00
Ilia Alshanetsky 3450841dbe Updated libsqlite in ext/pdo_sqlite to 3.2.8. 2005-12-20 15:33:03 +00:00
Ilia Alshanetsky 61c9b22536 Updated libsqlite in ext/sqlite to 2.8.17.
Use in-memory database for tests.
2005-12-20 15:26:26 +00:00
Ilia Alshanetsky 5961160f95 Proper error handling for persistent connections. 2005-12-20 14:50:12 +00:00
Ilia Alshanetsky cd82349b9e Fixed bug #31347 (is_dir and is_file (incorrectly) return true for any
string greater then 255 characters).
2005-12-20 14:24:24 +00:00
Ilia Alshanetsky 5df2f5df42 Fixed bug #31347 (is_dir and is_file (incorrectly) return true for any string
greater then 255 characters).
2005-12-20 14:24:14 +00:00
Antony Dovgal efff8a45e2 more SPL leak fixes 2005-12-20 12:41:24 +00:00
Antony Dovgal 9255733c4f fix leak appearing when __autoload() throws an exception 2005-12-20 11:25:34 +00:00
Antony Dovgal 84326a9b72 add test for #35740 2005-12-20 09:51:53 +00:00
Antony Dovgal aec3b4e73c fix #35740 (memory leak when including a directory) 2005-12-20 09:47:57 +00:00
Ilia Alshanetsky 4e09db1dbf Fixed possible memory corruption. 2005-12-19 16:33:46 +00:00
Rob Richards 78244d64af BFN 2005-12-19 14:18:05 +00:00
Rob Richards fc4ebee3e3 MFH: Fixed bug #35447 (xml_parse_into_struct() chokes on the UTF-8 BOM)
add test
2005-12-19 14:17:30 +00:00
Antony Dovgal 2a130b19fc fix possible reads of uninitialized memory (reproducible only on 64bit platforms) 2005-12-19 13:53:06 +00:00
Derick Rethans e8a7e6a8cf - Upgraded timezone database to 2005.17. 2005-12-19 13:31:08 +00:00
Derick Rethans 7b581f6d19 - MFH: Merged new timelib, which is a bit more cleverer
- MFH: Support "UTC" in strtotime() properly.
- MFH: Added astro code, which is going to form the base for the new sunfuncs.
2005-12-19 13:00:37 +00:00
Marcus Boerger 32220d2e7e - Check for result of getIterator() call 2005-12-19 00:45:28 +00:00
Marcus Boerger e989e9f70f - Fix reference counting 2005-12-19 00:32:51 +00:00
foobar ae5204a02a MFH: - Fixed bug #35723 (xmlrpc_introspection.c fails compile per C99 std) 2005-12-18 22:59:57 +00:00
Antony Dovgal 9e8a1bfcbe fix leak in SPL iterators 2005-12-18 22:52:24 +00:00
Antony Dovgal 8aedeb8513 tix fypo 2005-12-18 21:17:07 +00:00
Antony Dovgal 0d38bc9f80 MFH: more spelling fixes 2005-12-18 21:01:27 +00:00
Antony Dovgal 5500dea5f1 MFH: fix spelling 2005-12-18 20:57:27 +00:00
foobar 93d339bede touch with re2c 0.9.11 2005-12-18 20:01:22 +00:00
Ilia Alshanetsky 2a29db4b2b Fixed UTC handling problem stemming from an earlier fix for bug #35422. 2005-12-18 16:15:45 +00:00
Derick Rethans 20b97141d4 - Those should be lower case only. 2005-12-18 16:06:57 +00:00
Zeev Suraski 5238fb0bee Fix prototypes 2005-12-18 15:58:51 +00:00
Marcus Boerger 86ecf121e5 - MFH Fix --version 2005-12-18 15:47:07 +00:00
Zeev Suraski b1264f7172 prototype fix 2005-12-18 15:46:46 +00:00
Zeev Suraski 99cd9ed713 Fix protos 2005-12-18 15:40:34 +00:00
Zeev Suraski 59dc41f761 Fix prototype 2005-12-18 15:38:08 +00:00
Marcus Boerger 2b413f7af2 - MFH End test script when detecting '===DONE===' that way showing memleaks 2005-12-18 14:50:33 +00:00
Ilia Alshanetsky 6654b31e26 fixed test for ZTS 2005-12-18 14:22:48 +00:00
Ilia Alshanetsky b6f856fbec Test fixes 2005-12-18 14:21:27 +00:00
Zeev Suraski 2f3678eb44 Fix prototype 2005-12-18 14:00:23 +00:00
Marcus Boerger 8d4080a6e1 - MFH Add missing prefixes 2005-12-18 13:01:20 +00:00
Marcus Boerger 29f5ce9af3 - MFH Speling 2005-12-18 12:54:41 +00:00
Antony Dovgal 46f922bdf7 MFH: fix possible usage of uninitialized variable 2005-12-18 12:50:28 +00:00
Marcus Boerger 6370ae56ed - MFH Increase timeut for -m testing 2005-12-18 12:08:18 +00:00
foobar a9ffac3eda it is easier to spot fixes when you know what and where something was fixed 2005-12-18 00:07:40 +00:00
foobar 5da39c99c6 fix news 2005-12-18 00:02:35 +00:00
Ilia Alshanetsky 58bd1ac860 bug fixing news 2005-12-17 20:09:08 +00:00
Ilia Alshanetsky ab55ed15d5 Fixed parameter parsing for setIndent() method. 2005-12-17 20:04:57 +00:00
Ilia Alshanetsky b83a0eb10c Fixed memory corruption when FETCH_LAZY mode is being used. 2005-12-17 20:00:00 +00:00
Ilia Alshanetsky 8370e1aca4 Fixed uninitialized variable in a test. 2005-12-17 19:57:37 +00:00
Ilia Alshanetsky f7276af1c6 Fixed compiler warning 2005-12-17 18:26:15 +00:00
Ilia Alshanetsky c2ed71a879 Retry on failed prepare resulting from duplicate statement name. 2005-12-17 17:59:05 +00:00
Pierre Joye 94518ca8e4 - add leaks fix in imagecreatefromstring 2005-12-17 17:52:44 +00:00
Pierre Joye 1024844a41 - MFH:
- fix leaks and wrong error when invalid/empty string are given to
  imagecreatefromstring
- add test for imagecreatefromstring
- add test for palettecopy
2005-12-17 17:46:59 +00:00
Ilia Alshanetsky 87db368a75 Added token for capturing arbitrary whitespace blocks inside text. 2005-12-17 16:33:38 +00:00
Antony Dovgal bfb72e0c08 change int to long and fix valgrind warnings 2005-12-17 16:07:47 +00:00
Marcus Boerger 905007669d - BFN 2005-12-17 15:53:40 +00:00
Marcus Boerger 18a99796ad - MFH Fix Bug #35720 A final constructor can be overwritten 2005-12-17 15:51:52 +00:00
Marcus Boerger adc26d2bca - Fix export 2005-12-17 15:41:56 +00:00
Marcus Boerger 8c991f6a49 - Add optional dependency to ext/dom 2005-12-17 15:40:37 +00:00
foobar 849a614275 - Fix test 2005-12-17 14:54:41 +00:00
Marcus Boerger 70a53e10c6 - Simplify (+fix memleak) 2005-12-16 23:58:38 +00:00
Andrei Zmievski e6ae0e99c3 MFH 2005-12-16 22:45:12 +00:00
Marcus Boerger e4210e3851 - Drop superflous param 2005-12-16 22:38:17 +00:00
Ilia Alshanetsky 579e00d489 Fixed bug #35705 (strtotime() fails to parse soap date format without TZ). 2005-12-16 22:36:46 +00:00
Antony Dovgal dfcc155c76 fix compile warning with Apache2 and Zend VM disabled
(someone forgot to do MFH)
2005-12-16 22:29:34 +00:00
Marcus Boerger 69fdadf1a0 - Add SplTempFileObject to output 2005-12-16 22:29:02 +00:00
Marcus Boerger 10f77a5d71 - Add/fix tests 2005-12-16 22:19:02 +00:00
Marcus Boerger 4bb39ad2a5 - Fix is_callable usage 2005-12-16 22:18:11 +00:00
Marcus Boerger 57492cc2d4 - Provide better error message when using illegal function 'pointers' 2005-12-16 22:17:32 +00:00
Marcus Boerger 0cd997d79c - Simplify and synch is_callable_ex() with actual execution code
. Allow array($this, 'parent::method') for function 'pointers'
  . Spit out E_STRICT in case of erroneous use of function 'pointers'
2005-12-16 22:15:41 +00:00
Antony Dovgal 418223e2f6 fix #35713 (getopt() returns array with numeric strings when passed options like '-1') 2005-12-16 20:09:16 +00:00
Antony Dovgal 17907a50cd fix test
add new one for 64bit only
2005-12-16 15:52:09 +00:00
Antony Dovgal 460a4fecef fix test 2005-12-16 14:57:29 +00:00
Antony Dovgal 8fee6ac1e2 fix test 2005-12-16 14:50:47 +00:00
Ilia Alshanetsky 84cd3c125c Cleanup code and prevent usage of uninitialized variable. 2005-12-15 22:54:15 +00:00
Antony Dovgal 33c87b395f MFH: fix #35692(iconv_mime_decode() segfault, with libiconv only) 2005-12-15 22:49:22 +00:00
Ilia Alshanetsky bdf9c4d15c Fixed bug #35694 (Improved error message for invalid fetch mode). 2005-12-15 22:33:02 +00:00
Antony Dovgal a91f9fb786 MFH: fix #35690 (pack() tries to allocate huge memory block when packing float values to strings) 2005-12-15 22:15:01 +00:00
Antony Dovgal 9417c070f6 MFH: fix C++ comments in C code 2005-12-15 13:58:10 +00:00
Ilia Alshanetsky cb3cca21b3 Fixed possible memory corruption inside mb_strcut(). 2005-12-15 03:36:53 +00:00
Frank M. Kromann 67313884c1 Export symbols needed by pecl/http 2005-12-15 02:25:58 +00:00
Marcus Boerger 5c8027584f - MFH Fix issue spotted by Wez using ms vc 2005 2005-12-14 09:55:11 +00:00
Wez Furlong 85a578e029 Possible fixes for #35552, #35592 and #35620. 2005-12-14 04:56:22 +00:00
Ilia Alshanetsky 00b9392bf5 Fixed bug #35571 (Fixed crash in Apache 2 SAPI when more then one php
script is loaded via SSI include).
2005-12-14 03:36:44 +00:00
Wez Furlong b041abbb4e Fixes for building with vs.net 2005. 2005-12-14 02:01:13 +00:00
Antony Dovgal 1b7e3fe2a5 MFH: fix spelling and #35665 2005-12-14 00:54:29 +00:00
Marcus Boerger 71c7cdb7d9 - Fix temp/memory stream modes 2005-12-14 00:06:09 +00:00
Antony Dovgal f7aec44aee MFH: use default colors to prevent any problems with existing php.ini 2005-12-13 22:32:30 +00:00
Antony Dovgal 6c65d6df59 add new test 2005-12-13 21:43:36 +00:00
Ilia Alshanetsky 3ce27140dc Fixed bug #35655 (whitespace following end of heredoc is lost). 2005-12-13 20:55:42 +00:00
Antony Dovgal 900d49a553 add missing .cvsignore files 2005-12-13 20:18:50 +00:00
Ilia Alshanetsky cdb699b497 Fixed bug #35630 (strtotime() crashes on certain relative identifiers). 2005-12-13 02:28:39 +00:00
Antony Dovgal bc22352c30 fix tests and their skip conditions 2005-12-12 21:21:11 +00:00
foobar f94b3012bd MFH 2005-12-12 19:45:01 +00:00
Marcus Boerger 882a9effe6 - Enforce termination to prevent possible SEGVs 2005-12-12 19:10:12 +00:00
foobar a8a4d7944d - Always use the builddir! 2005-12-12 12:39:50 +00:00
foobar a939717011 MFH: - added missing configure help line 2005-12-12 12:20:55 +00:00
foobar ec4fd02760 MFH 2005-12-12 11:51:45 +00:00
foobar d43833ecff MFH: cleanup test outputs 2005-12-12 11:49:45 +00:00
foobar 379cd5a6df MFH:- Include timestamp for the leaks. (to make possible matching leaks with access_log entries) 2005-12-12 11:00:57 +00:00
Dmitry Stogov db312cf18e Fixed bug #35570 (segfault when re-using soap client object) 2005-12-12 09:25:23 +00:00
Ilia Alshanetsky a74463e9bd Fixed bug #35629 (crash in http:// wrapper on multiple redirects). 2005-12-12 05:04:15 +00:00
foobar ddcc5257ac MFH: - Added missing fold tags 2005-12-11 22:38:38 +00:00
Ilia Alshanetsky f19c2e00ec Fixed bug #35624 (strtotime() does not handle 3 character weekdays).
Improved fix for bug #35414.
2005-12-11 22:35:40 +00:00
foobar 64f82f9c00 fix news 2005-12-11 22:08:43 +00:00
Edin Kadribasic f75efcb505 Bundle update news 2005-12-11 22:03:19 +00:00
Edin Kadribasic 60db0632dd Updated to libxml2 to 2.6.22, thanks to rrichards 2005-12-11 21:54:32 +00:00
Marcus Boerger bac905b982 MFH:
. Change to use sane default flags fro RecursiveDirectoryIterator
 . Drop 2nd parameter from DirectoryIterator::__construct()
2005-12-11 16:43:29 +00:00
Marcus Boerger 9bb52c750c - MFH 2005-12-11 15:29:14 +00:00
Marcus Boerger 85a261bb85 - MFH Fix tests 2005-12-11 14:50:29 +00:00
Marcus Boerger d05c2a40d8 - MFH Revert accidential 'drop in' from 1.227 2005-12-11 12:47:46 +00:00
Marcus Boerger af1d83d783 - Fix MFH (oversight problem) 2005-12-11 12:37:39 +00:00
Marcus Boerger c19fa0bbde - MFH Add method support to --rfunction 2005-12-11 02:41:04 +00:00
Marcus Boerger ba6c82eee9 - MFH --r* switches 2005-12-11 02:17:34 +00:00
foobar b3fc86b5f4 fix news 2005-12-10 18:29:29 +00:00
foobar 933d1d174c MFH 2005-12-10 18:26:52 +00:00
Ilia Alshanetsky 5e9c6555ad Fixed typo in gcov output filename 2005-12-09 21:40:24 +00:00
Rob Richards cc96967132 MFH: allow NULL prefix to create default namespace
fix tests
2005-12-09 20:52:15 +00:00
Antony Dovgal ca42324497 php_stream_get_line() is a macro and it already has TSRMLS_CC 2005-12-09 18:53:09 +00:00
Pierre Joye 7a6ac7ce16 - MFH: no need to test if jpeg support exists 2005-12-09 18:17:02 +00:00
Dmitry Stogov 599221036f Fixed bug #35612 (iis6 Access Violation crash) 2005-12-09 18:10:45 +00:00
Pierre Joye ce90a27a48 - MFH, PNG compression support exposed 2005-12-09 18:07:57 +00:00
Dmitry Stogov 5461b5a6b1 Fixed bug #34429 (Output buffering cannot be turned off with FastCGI) 2005-12-09 17:01:50 +00:00
Dmitry Stogov eef44c609b Fixed possible SIGSEGV (Rob Richards) 2005-12-09 15:29:15 +00:00
Antony Dovgal 4ccdc86561 fix C++ comment 2005-12-09 13:28:10 +00:00
Marcus Boerger b8572a0c9c - MFH Section FILE does not exist for redirection tests 2005-12-09 09:50:30 +00:00
Rob Richards c98ef984d8 MFH: enable a few additional functions
- add tests
2005-12-09 04:57:20 +00:00
Marcus Boerger 6b86285dd2 - MFH Add missing newline 2005-12-09 00:30:41 +00:00
Marcus Boerger fbeb8ae0d4 - Revert piece of MFH that shows an inconsistency - actually we should fix
this fread() issue.
2005-12-09 00:22:21 +00:00
Marcus Boerger a4d0a4c625 - MFH
. Add ability to create temp files in separate dir and keep them.
  . Add ability to create links in html results as table.
2005-12-08 22:51:01 +00:00
Antony Dovgal ccdeb10696 new tests 2005-12-08 22:30:23 +00:00
Antony Dovgal 84051ba42b MFH: improve error message 2005-12-08 22:07:30 +00:00
Antony Dovgal c287dec802 MFH: add 1 to the max_length to keep \0 at its place 2005-12-08 21:22:52 +00:00
Ilia Alshanetsky 185f085735 Include a legend in the gcov report (suggestion by Tony). 2005-12-08 21:12:03 +00:00
Antony Dovgal 0d1efb245b MFH: fix segfault in SplFileObject when file doesn't exist or cannot be read 2005-12-08 19:55:13 +00:00
Marcus Boerger 25de19a2fb - MFH Change dba/db4 to use its own locking 2005-12-08 19:35:05 +00:00
Ilia Alshanetsky 484de9c3a4 Added myself to a list of extensions/sapis I try to maintain. 2005-12-08 17:06:59 +00:00
Ilia Alshanetsky 25670c59d3 Final fix for gcov generation. 2005-12-08 16:00:28 +00:00
Ilia Alshanetsky b30602b78b Fixed bug #35594 (Multiple calls to getopt() may result in a crash). 2005-12-08 03:25:22 +00:00
Ilia Alshanetsky 3d4c1d6886 Improve fix for bug #35382 2005-12-08 03:09:14 +00:00
Ilia Alshanetsky 644cf05505 Fixed bug #34359 (Possible crash inside fopen http wrapper). 2005-12-08 02:53:08 +00:00
Michael Wallner 90bdbfa921 - release 1.1 2005-12-07 19:53:34 +00:00
Michael Wallner 24d824d4e8 - fix PECL bug #6283 - haval source file entries are missing in package.xml 2005-12-07 18:41:14 +00:00
Marcus Boerger 2d234ec4ac - Readd the file in this branch 2005-12-07 17:44:43 +00:00
Ilia Alshanetsky d5bb2e38ef Undo accidental revert of patch for bug #34729 2005-12-07 17:36:17 +00:00
Dmitry Stogov 9e8bf1a20f Fixed bug #33394 (Socket Timeout on SOAP request causes general exception in Apache process). 2005-12-07 13:56:18 +00:00
foobar bfa084ddba MFH:- Made tests that require CGI skipped if it is not available 2005-12-07 11:28:58 +00:00
foobar 241659ff70 MFH: fixed wrong logic 2005-12-07 11:12:52 +00:00
foobar e5bd8e32f5 MFH: fixed error messages 2005-12-07 10:08:42 +00:00
Rob Richards 5b561a6df3 MFH: fix res parameter typos
- add test
2005-12-07 05:09:33 +00:00
Ilia Alshanetsky 2796160d15 Better critical error handling (fix for previous html encoding patch). 2005-12-07 02:37:05 +00:00
Ilia Alshanetsky 0e46f5113c Fixed filename picker.
Various modernizations of the script.
2005-12-07 02:01:58 +00:00
Ilia Alshanetsky 24af85dfe9 Fixed memory leak 2005-12-07 01:29:14 +00:00
Marcus Boerger 8c8907458c - MFH
. Support for '--' style switches
  . Modularize output
  . Better valgrind integration (valgrind 3.0.0+ required now) (-m)
  . Ability to generate an additional html style output log (--html)
  . Ability to test unicode + native tests in one go (-U)
  . Show list of leaked files in summary if any
  . Use basename correct
2005-12-07 00:03:46 +00:00
Ilia Alshanetsky 481ec28566 Fixed bug #30760 (Remove MessageBox on win32 for E_CORE errors if
display_startup_error is off).
2005-12-06 23:32:06 +00:00
Marcus Boerger 5e223ad13b - Fix TSRM 2005-12-06 21:44:15 +00:00
Antony Dovgal 31c35e5cad add 4 new tests
remove ENV tag from the old ones
2005-12-06 19:28:25 +00:00
Sara Golemon 2b059ae91f MFH: (r-1.104) 2005-12-06 19:15:41 +00:00
Antony Dovgal dfba12435d use strlen() to get correct element length 2005-12-06 18:53:35 +00:00
Ilia Alshanetsky 085ff7f19b Fixed build of mssql extension. 2005-12-06 18:47:14 +00:00
Sara Golemon 5fd5bead8a Prep for release 2005-12-06 17:54:24 +00:00
Ilia Alshanetsky f2415625d4 MFH: Prevent header injection by limiting each header to a single line. 2005-12-06 03:39:45 +00:00
Ilia Alshanetsky aa1b0709f2 Fixed possible XSS inside error reporting functionality. 2005-12-06 03:09:24 +00:00
foobar 684d68bb27 MFH: fix docs 2005-12-06 02:30:18 +00:00
foobar 3e669bc950 MFH: nuke php3 legacy 2005-12-06 02:28:41 +00:00
foobar 347032c753 sync with HEAD 2005-12-06 02:21:01 +00:00
foobar a4295629b8 MFH 2005-12-06 02:00:14 +00:00
foobar 06b36f7cea MFH: nuke php3 legacy 2005-12-06 01:40:06 +00:00
foobar 253392f64f MFH: nuke php3 legacy 2005-12-06 01:26:44 +00:00
foobar 635e2bb028 MFH 2005-12-06 01:25:16 +00:00
foobar 4e874820e9 MFH: nuke php3 legacy 2005-12-06 01:21:28 +00:00
foobar b9af8f2719 MFH: nuke php3 legacy 2005-12-06 01:14:02 +00:00
foobar d95275052b MFH 2005-12-06 01:08:49 +00:00
foobar a3c0b190d1 MFH 2005-12-06 00:54:15 +00:00
foobar 9e1c5a32a3 MFH 2005-12-06 00:43:44 +00:00
foobar 4cbde95247 MFH 2005-12-05 23:53:05 +00:00
foobar a3af52c11e MFH: list_entry -> zend_rsrc_list_entry 2005-12-05 23:38:04 +00:00
foobar d0a54af4c5 MFH: Nuke php3 legacy 2005-12-05 22:54:01 +00:00
foobar f20a62b164 MFH:- Do not use the PHP3 era names 2005-12-05 22:43:14 +00:00
foobar f58f7f4e67 MFH: fix typo 2005-12-05 22:41:10 +00:00
foobar 66832decc5 MFH 2005-12-05 22:39:03 +00:00
foobar bbe1f9d280 MFH 2005-12-05 22:21:56 +00:00
Brian France 7154c617bf Wrap the php_session.h include in the same ifdef as the rest of the
session code.
2005-12-05 20:40:54 +00:00
Antony Dovgal 6aba1816ee more typos fixed (thanks to Mike Naberezny for noticing these) 2005-12-05 20:06:33 +00:00
Stanislav Malyshev 3eafc3d329 fix reallocation bug 2005-12-05 19:54:47 +00:00
Ilia Alshanetsky 937e9f801d Fixed bug #35558 (mktime() interpreting 3 digit years incorrectly). 2005-12-05 17:27:02 +00:00
Antony Dovgal 4ce11c2a63 improve error messages 2005-12-05 13:39:52 +00:00
Antony Dovgal 012e5bf4cd add NEWDECIMAL, NEWDATE, GEOMETRY, SET and ENUM field types 2005-12-05 13:22:14 +00:00
Antony Dovgal ab34dafb69 fix #35536 (mysql_field_type() doesn't handle NEWDECIMAL)
add also SET, ENUM, NEWDATE and GEOMETRY to the switch
2005-12-05 13:16:48 +00:00
Dmitry Stogov 9ee0707cfa Fixed bug #35509 (string constant as array key has different behavior inside object) 2005-12-05 08:56:09 +00:00
Ilia Alshanetsky 6abf54a489 Avoid gcov conflicts on non-unique filenames 2005-12-05 04:22:16 +00:00
foobar 55a299075b fix branches 2005-12-04 23:19:44 +00:00
Wez Furlong 17683295e4 switch to package2.xml 2005-12-04 22:34:26 +00:00
Wez Furlong bd0aaa0198 Fix PECL #6138 2005-12-04 18:33:26 +00:00
Ilia Alshanetsky 66fbae9d75 Added tests for new parse_url() and http_build_query() functionality. 2005-12-04 17:58:15 +00:00
Ilia Alshanetsky 2994c23670 MFH:
Added 2nd optional parameter to parse_url() that allows retrieval of
individual URL components.
Added 3rd optional parameter to http_build_query() that allows custom param
separator.
2005-12-04 17:44:27 +00:00
Ilia Alshanetsky eb83ca1cd3 load proper header file 2005-12-04 17:41:02 +00:00
Ilia Alshanetsky 15afc78f85 Fixed bug #35062 (socket_read() produces warnings on non blocking sockets). 2005-12-04 17:30:43 +00:00
Ilia Alshanetsky b01f5b35f5 Fixed gcov for generated files 2005-12-04 17:27:34 +00:00
Ilia Alshanetsky 58c05c04f4 Regen files so they work properly with gcov. 2005-12-04 17:25:05 +00:00
foobar d1ce095f84 reorder,reword 2005-12-04 14:10:22 +00:00
Antony Dovgal b09703e921 BFN 2005-12-04 11:47:18 +00:00
Antony Dovgal ca0d712c3c MFH: fix #35539 (typo in error message for ErrorException) 2005-12-04 11:47:00 +00:00
Antony Dovgal d72347f7bc MFH: fix #35543 (php crash when calling non existing method of a class that extends PDO) 2005-12-04 11:41:13 +00:00
Antony Dovgal 6190512876 MFH: fix typos in xmlwriter/config.m4 2005-12-04 00:21:39 +00:00
Antony Dovgal 3f666e1dfe MFH: add declarations
more uint -> size_t fixes
2005-12-03 23:50:33 +00:00
Antony Dovgal bb6aa3ebd3 fix #35538 (new "hash" extensions does not compile on amd64) 2005-12-03 23:31:14 +00:00
Antony Dovgal 7cf9dfe237 add .cvsignore 2005-12-03 23:27:59 +00:00
Antony Dovgal d66e492c3d MFH: yet another compile warning 2005-12-03 23:24:29 +00:00
Antony Dovgal 72e366657b MFH: fix compile warning 2005-12-03 23:20:07 +00:00
foobar c7c71b8530 MFH: - Fix bug #35530 (ext/bz2 compile failure with phpize) 2005-12-03 13:23:14 +00:00
Michael Wallner 3cfdbdbd12 - add adler32 test 2005-12-03 10:31:01 +00:00
Michael Wallner c6fb5f38c0 MFH: fix ws 2005-12-03 10:25:31 +00:00
Michael Wallner 7d8d573f0d - add test to package.xml 2005-12-03 10:19:50 +00:00
Michael Wallner f5fae65194 MFH: add crc32 test 2005-12-03 10:18:38 +00:00
foobar bde40a73db MFH: fix possible compile error 2005-12-03 01:28:16 +00:00
foobar ee372651d0 MFH: fix bug #35528 2005-12-03 01:23:25 +00:00
Sara Golemon 860c3a5a32 MFH: Add MD4 2005-12-03 01:17:48 +00:00
foobar 6c3e2b32bf MFH 2005-12-03 01:12:45 +00:00
foobar ef7cb6880f MFH 2005-12-03 01:07:00 +00:00
foobar 4bfba57f96 MFH 2005-12-03 00:00:55 +00:00
Ilia Alshanetsky 40ad5745a7 Regenerate file to be more gcov friendly 2005-12-02 17:32:36 +00:00
Marcus Boerger e9f5066faa - MFH Be picky about names 2005-12-02 16:00:45 +00:00
foobar 2e3ae884fb - touch with correct re2c version and correct options 2005-12-02 13:16:38 +00:00
foobar 2196bda958 - Fix warning 2005-12-02 13:15:58 +00:00
Michael Wallner ab6a987f86 MFJ: use --enable instead of --with 2005-12-02 10:55:33 +00:00
foobar ee72c31788 MFH 2005-12-02 08:59:35 +00:00
Ilia Alshanetsky 2fae8d37c0 Enable hash & xmlwriter by default 2005-12-02 02:18:54 +00:00
Ilia Alshanetsky bcd9356df5 Added xmlwriter to 5.1 2005-12-02 02:05:26 +00:00
Ilia Alshanetsky 950de07889 Added hash extension to PHP 5.1 2005-12-02 01:59:48 +00:00
Michael Wallner 20c3b72bf0 - export everything we've got aliases for 2005-12-01 21:07:52 +00:00
Michael Wallner 039c69da18 - use php_pcre aliases 2005-12-01 20:53:35 +00:00
Antony Dovgal 06c57b7d55 tweak fix a bit
(by request of Wez)
2005-12-01 20:39:12 +00:00
foobar b935f6f13a - Fix paths for --enable-gcov usage
# re2c -b -o ext/pdo/pdo_sql_parser.c ext/pdo/pdo_sql_parser.re
2005-12-01 20:28:27 +00:00
Michael Wallner 7901a6dbef MFH: ext/filter will need those exports
# php_compat.h still prevents linking
2005-12-01 20:07:34 +00:00
Antony Dovgal b45292a819 BFN 2005-12-01 20:01:33 +00:00
Antony Dovgal 59087fee52 MFH: fix #35508 (PDO fails when unknown fetch mode specified) 2005-12-01 19:59:58 +00:00
Antony Dovgal fc8d9584b1 fix Win32 compile failure 2005-12-01 19:25:48 +00:00
Antony Dovgal bd8df0b32a add 2 new tests
now we have one extension absolutely covered by tests, yay! =)
2005-12-01 18:22:11 +00:00
Ilia Alshanetsky 4e03ce9fc5 Fixed memory leaks 2005-12-01 16:33:01 +00:00
Ilia Alshanetsky f4248e51a4 Fixed bug #35499 (strtotime() does not handle whitespace around the date
string).
2005-12-01 16:24:52 +00:00
foobar f74f26f487 fix news 2005-12-01 15:29:40 +00:00
Andrey Hristov c23052d6d2 fix compile failure on Windows - Microsoft hasn't heard of long long :) 2005-12-01 14:12:56 +00:00
Antony Dovgal 7a652e397b fix #35490 (socket_sendto() unable to handle IPv6 addresses) 2005-12-01 14:02:54 +00:00
Antony Dovgal f496bf9dda MFH: fix potential problem in php_oci_bind_post_exec() when OCIDateToText() fails 2005-12-01 13:47:22 +00:00
Antony Dovgal da6e561d2b announce the OCI8 upgrade in the news entry 2005-12-01 13:41:53 +00:00
Antony Dovgal 3756201e04 upgrade bundled OCI8 to v.1.1 2005-12-01 13:39:48 +00:00
Dmitry Stogov 916ad6c8f7 Fixed bug #35437 (Segfault or Invalid Opcode 137/1/4) 2005-12-01 12:50:58 +00:00
Dmitry Stogov 8768ab94b3 Fixed bug #34729 (Crash in ZTS mode under Apache) 2005-12-01 11:48:17 +00:00
Rob Richards 673dc5ee5f fix build - zend_reflection_api.c is no more 2005-12-01 11:11:46 +00:00
Andrey Hristov c1cb5e6885 mysqli is since many months not experimental
add myself as maintainer. discussed with georg.
2005-12-01 09:49:48 +00:00
foobar 8c7f03c8a4 MFH: - Fix paths for --enable-gcov 2005-12-01 09:34:20 +00:00
foobar 0a1ba06e5d MFH: - Use correct configure option style. Enabled by default. 2005-12-01 08:54:22 +00:00
Wez Furlong c83472edf1 prep for release 2005-12-01 05:16:24 +00:00
foobar d23ad35375 sync with docs (?) 2005-12-01 00:42:13 +00:00
Ilia Alshanetsky ae07423bcd Fixed bug #35496 (Crash in mcrypt_generic()/mdecrypt_generic() without
proper init).
2005-11-30 23:51:25 +00:00
Antony Dovgal 9c2183f622 add new test
improve gcov stats =)
2005-11-30 23:34:08 +00:00
Ilia Alshanetsky 911355bee8 Fixed memory leak 2005-11-30 23:27:15 +00:00
foobar de8052aa41 MFH 2005-11-30 22:47:03 +00:00
Marcus Boerger 279e4f7219 - Reflection was moved into its own extension 2005-11-30 21:58:01 +00:00
Marcus Boerger 7cb0480d04 - Moved reflection into its own extension 2005-11-30 21:53:20 +00:00
Marcus Boerger 16177d63f2 - MFH Move reflection to its own extension
# As discussed with RM
2005-11-30 21:46:26 +00:00
Ilia Alshanetsky c60079862b Fixed bug #35410 (wddx_deserialize() doesn't handle large ints as keys
properly).
2005-11-30 18:10:19 +00:00
Andrey Hristov a8a55dc086 BFN 2005-11-30 16:23:20 +00:00
Andrey Hristov 4ec16344a9 add a test case
fix incorrect handling of unsigned bigint.
optimize handling of unsigned int
2005-11-30 16:20:25 +00:00
Andrey Hristov a8c0463961 fix more leaks. handle better unknown type (4.1.x connected to 5.0.x
incompatibility)
2005-11-30 15:26:41 +00:00
foobar 5b6cc7d96c MFH: - Fix the ccache detection 2005-11-30 15:01:34 +00:00
foobar e20b4ab640 bfn 2005-11-30 12:35:55 +00:00
Andrey Hristov b6b6ec2a97 BFN 2005-11-30 11:38:11 +00:00
Andrey Hristov c230f7defb fix a crash and a leak.
4.1.15 (client) -> 5.x (server) because of the incompatibility because of
decimal in the protocol binding may fail. Don't close the statement in
that case because subsequent ->execute() will crash or any other function
that will try to use already freed (and in debug mode thrashed) pointer.
#probably more problems exist because of the 4.1.x -> 5.x protocol
#incompatibility
2005-11-30 11:35:03 +00:00
Antony Dovgal 22efcfd530 MFH: fix possible crash in pdo_mysql_stmt_dtor() 2005-11-30 11:33:07 +00:00
Dmitry Stogov 6357acc086 *** empty log message *** 2005-11-30 10:30:38 +00:00
Dmitry Stogov 0a5d10a5b9 Fixed bug #35373 (HP-UX "alias not allowed in this configuration") 2005-11-30 10:29:44 +00:00
Dmitry Stogov 02aad34c43 Fixed bug #35470 (Assigning global using variable name from array doesn't function) 2005-11-30 10:09:37 +00:00
Wez Furlong 7eb04b7907 Fix dep usage; it must appear after the PHP_NEW_EXTENSION line.
pdo and spl are both optional dependencies.
2005-11-30 04:50:03 +00:00
Wez Furlong 046bff25fb Fix bugs #35379 and #35432 by erroring out when the user configures PHP
extensions with conflicting options.

Jani, feel free to refine the way that extensions are detected as shared :)

For this to be foolproof, we either need to guarantee that the extensions have
their PHP_NEW_EXTENSION invoked in the right sequence.  Eg: PDO should be
handled in the configure script before any of the extensions that depend on it
are handled... tricky.

By happy coincidence, the alphabet ensures that pdo is configured before all
the pdo_ extensions, and also before sqlite, so this works for now.
2005-11-30 04:47:24 +00:00
Wez Furlong 559c624806 Fix PECL Bug #6102; fails to configure for instant client on OSX.
In addition, make it work for the instant client install on my gentoo box.
2005-11-30 03:18:09 +00:00
foobar 30dc899c2e MFH: - Added --enable-gcov configure option to enable C-level code coverage. 2005-11-29 23:20:01 +00:00
Ilia Alshanetsky ea80259eb3 Fixed ZTS build 2005-11-29 23:10:15 +00:00
foobar 49f673979b - automake is not needed 2005-11-29 22:41:15 +00:00
foobar 128119b9ab MFH 2005-11-29 22:39:19 +00:00
Ilia Alshanetsky 6f5b9894a2 Added missing support for 'B' format identifier to date() function. 2005-11-29 20:43:53 +00:00
Ilia Alshanetsky 820b5aa9e4 Fixed bug #35425 (idate() function ignores timezone settings). 2005-11-29 20:19:56 +00:00
Antony Dovgal 28dfe0dfd9 remaining part of the fix (-o -> ||) 2005-11-29 18:35:26 +00:00
Antony Dovgal 1cbe552f4d change "-o" to "||" (fixes potential problems on weird systems where test doesn't support -o) 2005-11-29 18:26:02 +00:00
Ilia Alshanetsky d79e01e211 Fixed compiler warnings 2005-11-29 18:17:46 +00:00
foobar 37661c8b39 - Always use the right sed 2005-11-29 17:32:40 +00:00
foobar efcd3e318b cleanup + fix link problems with old mysql versions 2005-11-29 17:31:13 +00:00
Ilia Alshanetsky bc9fc0d6cf Fixed tests 2005-11-29 16:25:16 +00:00
Ilia Alshanetsky 0242b892d2 Fixed bug #35427 (str_word_count() handles '-' incorrectly). 2005-11-29 16:14:19 +00:00
foobar d61e8d63fd - Update bundled libtool to 1.5.20 2005-11-29 15:58:54 +00:00
foobar 5db70599d1 be very clear what you fixed 2005-11-29 08:16:00 +00:00
foobar 4250a26f5c - Regenerated with working re2c and with proper options 2005-11-29 08:10:59 +00:00
Wez Furlong 40666b6708 proto fixups 2005-11-29 04:06:03 +00:00
Marcus Boerger 5d1cf6a544 - BFN 2005-11-29 03:35:33 +00:00
Marcus Boerger 6dec77d25e - MFH Add class SplFileInfo as base for DirectoryIterator and SplFileObject
# As discussed with ilia before 5.1.0
2005-11-29 03:33:59 +00:00
Marcus Boerger 4a400ce14f - BFN (reorder + missed another one) 2005-11-29 03:11:26 +00:00
Marcus Boerger ac48d5d24f - BFN (not to forget this one) 2005-11-29 02:58:20 +00:00
Marcus Boerger 0626f6ca0a - BFN 2005-11-29 02:53:48 +00:00
Marcus Boerger 40a3cdd97b - MFH
. Fix memleaks
  . Add tests
  . Add functions: getNamespaces(), getDocNamespaces()
  . Fixed var_dump()
  . Fixed bugs: #35028 XML object fails FALSE test
# This plan was decided before 5.1.0 came out with ilia and checked again
# just now. The extension currently shows no more memleaks or errors using
# the test suite.
2005-11-29 02:51:07 +00:00
Wez Furlong 131033352d Added PDO::pgsqlLOBCreate(), PDO::pgsqlLOBOpen() and PDO::pgsqlLOBUnlink(). 2005-11-29 02:11:39 +00:00
Ilia Alshanetsky 2ad81f4584 Fixed bug #35414 (strtotime() no longer works with ordinal suffix). 2005-11-29 01:23:29 +00:00
Ilia Alshanetsky 22f2b206b7 Fixed bug #35422 (strtotime() does not parse times with UTC as timezone). 2005-11-28 23:49:25 +00:00
foobar 52e1590285 MFH 2005-11-28 23:04:01 +00:00
Ilia Alshanetsky c2ec68ab62 Fixed bug #35456 (+ 1 [time unit] format did not work). 2005-11-28 22:24:01 +00:00
foobar 26b8b65c18 MFH: - Fixed bug #35409 (undefined reference to 'rl_completion_matches'). 2005-11-28 16:51:16 +00:00
Dmitry Stogov 14594953d2 Fixed bug #35393 (changing static protected members from outside the class, one more reference issue) 2005-11-28 14:33:03 +00:00
Andrey Hristov da9abd8b73 mysql 4.1.x gives strange result. the result in the test is generated with
5.0.16 (valid for 5.1.3).
2005-11-28 13:35:54 +00:00
foobar d69ab24f69 MFH: - Fixed bug #35381 (ssl library is not initialized properly) 2005-11-28 11:37:43 +00:00
Dmitry Stogov 13af4c9a09 Fixed bug #35399 (Since fix of bug #35273 SOAP decoding of soapenc:base64binary fails) 2005-11-28 10:08:34 +00:00
Wez Furlong b15e33f85a prep for release 2005-11-28 06:39:53 +00:00
Wez Furlong d0ea27b802 API for connection dependent objects to add/del refs to dbh's. 2005-11-28 05:23:22 +00:00
foobar 419a9c6cac - Fixed wrong usage of AC_TRY_COMPILE() macro 2005-11-27 23:22:43 +00:00
Antony Dovgal 5a606e0be3 use || instead of -o to support weird systems with old test 2005-11-27 22:59:54 +00:00
Wez Furlong b4dd85ff46 update changelog here too 2005-11-27 21:18:24 +00:00
Wez Furlong 7a05927e44 BFN 2005-11-27 21:17:17 +00:00
Wez Furlong 63dae4ee74 Fix #35431; LAZY fetch and fetchAll == crash.
Lazy makes no sense with fetchAll; disallow it.
2005-11-27 21:01:58 +00:00
Antony Dovgal 6543134dea MFH: fix #35430 (PDO crashes on incorrect FETCH_FUNC use) 2005-11-27 21:01:02 +00:00
Ilia Alshanetsky cdbe4a5cab Improved safe_mode/open_basedir check. 2005-11-27 20:07:36 +00:00
Antony Dovgal 3b3f8137c3 MFH: plug memory leak
fix config.m4
2005-11-27 18:36:11 +00:00
Ilia Alshanetsky 4320984303 Back to dev 2005-11-27 17:29:54 +00:00
foobar 8b443a1851 Back from future 2005-11-27 16:33:18 +00:00
Ilia Alshanetsky b81012c718 removed no longer relevant portion. 2005-11-27 15:39:09 +00:00
Ilia Alshanetsky bd196f4bd0 Adjust news 2005-11-27 15:38:07 +00:00
Ilia Alshanetsky 93608bf8a5 5.1.1 2005-11-27 14:19:40 +00:00
foobar fc34aa8489 fix news 2005-11-27 13:24:53 +00:00
Marcus Boerger e678e7a6af - BFN 2005-11-27 12:24:55 +00:00
Marcus Boerger e8ec9a98dd - Fixed bug #35423 RecursiveDirectoryIterator doesnt appear to recurse with RecursiveFilterIterator 2005-11-27 12:22:54 +00:00
Rob Richards 51e3beb4cb BFN 2005-11-27 12:22:04 +00:00
Rob Richards 934e19107d Fixed bug #35316 (Application exception trying to create COM object) 2005-11-27 12:19:04 +00:00
Marcus Boerger c37b13e0db - MFH Editor blocks 2005-11-27 12:16:14 +00:00
Marcus Boerger 9aebeaaf09 - MFH Synch with what we decided for 5 and what we are practicing since 5 2005-11-27 11:06:07 +00:00
Ilia Alshanetsky b3a48855ab Disabled native date class, to prevent pear::date conflict. 2005-11-27 06:51:43 +00:00
Ilia Alshanetsky 331726338b tokenizer fixes for bug #35382
Bug fixing news
2005-11-27 06:41:32 +00:00
Ilia Alshanetsky 497fae9d1f Fixed bug #35411 (Regression with \{$ handling).
Fixed bug #35382 (Comment in end of file produces fatal error).
2005-11-27 06:39:31 +00:00
Wez Furlong ef08c58664 update the todo list 2005-11-26 21:29:31 +00:00
Wez Furlong 339b4dbd6f going stable 2005-11-26 21:25:39 +00:00
Wez Furlong ab6a675131 going to release 1.0.1 2005-11-26 21:22:49 +00:00
Wez Furlong 426fb96cc9 Doh, need to canonicalize parameter names (by prefixing with :) before
attempting to remap them to positional args.
2005-11-26 21:20:52 +00:00
Ilia Alshanetsky 36d62a2f84 Bug fixing news 2005-11-26 21:04:42 +00:00
Ilia Alshanetsky 0b9f9de012 No longer dev 2005-11-26 21:03:44 +00:00
Wez Furlong 85ad81736c set to 1.0 stable. 2005-11-26 20:50:08 +00:00
foobar 1ea0bae9c0 fix test 2005-11-26 13:38:28 +00:00
Marcus Boerger 57f76446cf - MFH Add new test 2005-11-26 13:23:27 +00:00
Marcus Boerger 0f3d8acfd6 - BFN 2005-11-26 13:12:52 +00:00
Marcus Boerger 46ae03d872 - MFH Fix bug #35406 eval hangs when evall'ed code ends with comment w/o newline 2005-11-26 13:11:26 +00:00
Antony Dovgal 7241dea7ef fix Timezone class too 2005-11-26 12:35:27 +00:00
Antony Dovgal b6307d1014 MFH: fix #35402 (New date class causes crash in get_object_vars()) 2005-11-26 09:40:54 +00:00
Rasmus Lerdorf 4e3cd72df5 Typo 2005-11-26 06:22:14 +00:00
Rui Hirokawa 244c9a4ba0 5th argument of mb_encode_mimeheader() was not acceptable. 2005-11-25 21:55:25 +00:00
Wez Furlong c0c096b752 fix configure 2005-11-25 17:07:49 +00:00
foobar 366832fbd2 MFH: Fixed wrong usage of ZEND_EXTENSION_API_NO (these are not Zend exts :) 2005-11-25 16:01:41 +00:00
Wez Furlong 4e4b98a66d Use right define: ZEND_MODULE_API_NO as these are PHP modules, not Zend extensions 2005-11-25 15:42:26 +00:00
Antony Dovgal dc0db7382c MFH: fix #35391 (pdo_mysql::exec does not return number of affected rows) 2005-11-25 12:56:04 +00:00
Antony Dovgal 350aec954e MFH: ICC doesn't support __attribute__ for pointers 2005-11-25 12:25:05 +00:00
Wez Furlong 7107105429 Update the TODO list. 2005-11-25 07:23:55 +00:00
Wez Furlong 17f504a0ec actually, bytea is not required for LOBs in postgres; good! 2005-11-25 03:37:01 +00:00
Wez Furlong 70331c361e Addresses #35338.
Postgres client API is pretty poor, so we have zero idea about the actual
parameter types in a statement.

We now defer the preparation of a statement until the first call to execute is
made.  At that point, we have the parameters defined by the calling script, so
we can use the typing specified there when we perform the prepare.

For PDO_PARAM_LOB parameters, we set the binary formatting flag.

We can't just set this flag for all parameters, because its meaning is not
"string data, counted length" but "data is in native format".  If this flag is
set for a numeric column and we send the number 1 formatted as a string, then
we will get an "insufficient data left in message" error message, because the
library was expecting sizeof(int4) bytes but only saw 1 byte for "1".

This is infuriating because we have no way to determine the datatypes for
parameters, and the type we explicitly set has to match the type in the
database.  The only choice we're left with is telling postgres to deduce the
type; we still have no idea what type was deduced.
2005-11-25 03:35:04 +00:00
Wez Furlong 2256ec00ef PDO support for LOBs in the postgres driver currently assumes bytea columns. 2005-11-25 03:24:32 +00:00
Wez Furlong 2618322506 Bug: when stringify fetch mode is on, and the driver returns a string instead
of a stream for a LOB parameter, PDO would incorrectly return NULL for that
column.
2005-11-25 03:23:17 +00:00
Wez Furlong 268ac81e39 Add pdo_odbc.db2_instance_name ini setting when built against DB2.
This is a convenience for setting up the DB2 environment more easily.
2005-11-25 02:33:04 +00:00
Andrey Hristov 1d3f0d8891 fix test - unsigned it is casted to 0 in mysql sql_mode 2005-11-25 01:13:56 +00:00
Wez Furlong c2d53719c2 Fix for #35332.
The problem is caused by the user mixing positional and named parameters.
PDO was blindly adding the parameters, unaware that the same parameters were
already allocated by position.

What we do now is register the parameter with the driver before adding it to
any hash.  This gives the driver an opportunity to normalize the name and
parameter number.  PDO can then ensure that only one entry is occupied in the
hash for a given parameter.
2005-11-25 00:29:04 +00:00
Wez Furlong bb2f034eff well, what do you know, it does do something. 2005-11-25 00:20:12 +00:00
Ilia Alshanetsky 363b0ce10b Fixed bug #35170 (PHP_AUTH_DIGEST differs under Apache 1.x and 2.x). 2005-11-25 00:02:16 +00:00
Wez Furlong 0a865c89c5 prep for release 2005-11-24 22:33:20 +00:00
Wez Furlong 94ab6069b8 prep for release 2005-11-24 22:25:37 +00:00
Wez Furlong dfdd1e4caf CLASSTYPE is an internal flag.
Closes PECL #5640.
2005-11-24 21:46:56 +00:00
Wez Furlong 2814b749ec Fix PECL Bug #6014; config fails on PHP 5.0.3 2005-11-24 21:38:09 +00:00
Marcus Boerger 7aa61c312d - NEWS, NEWS, NEWS 2005-11-24 20:06:11 +00:00
Marcus Boerger fb81446ec9 - MFH Reflection class consts (not removing globals consts in 5.1*) (by Johannes) 2005-11-24 19:56:11 +00:00
Wez Furlong aae30f20fc Fix bug that breaks pdo_mysql when built shared (was not being linked to the
mysql libraries).

If you have another mysql module loaded, this would not have been noticable.
2005-11-24 18:56:16 +00:00
Ilia Alshanetsky 8e49bacf95 Fixed bug #35358 (Incorrect error messages for PDO class constants). 2005-11-24 16:21:43 +00:00
Dmitry Stogov a570981151 Fixed bug #35360 (exceptions in interactive mode (php -a) may cause crash) 2005-11-24 11:33:11 +00:00
Sebastian Bergmann f5117c81b3 MFH: Add an additional field $frame['object'] to the result array of debug_backtrace() that contains a reference to the respective object when the frame was called from an object. 2005-11-24 05:07:28 +00:00
Sara Golemon a420b562df MFH (r-1.2) Sync tests with new defaults 2005-11-24 04:37:47 +00:00
Marcus Boerger c13c6e4f68 - Fix build for new ming versions
# Maybe we should check if it is safe to MFH all the corresponding changes
# in head. But why is this out of sync anyway?
2005-11-24 00:51:44 +00:00
Ilia Alshanetsky 4dbac17f9c Back to dev 2005-11-23 21:25:37 +00:00
Ilia Alshanetsky e0ded79c0f Rolling 5.1.0 2005-11-23 20:53:33 +00:00
Antony Dovgal 794c2e8e5d change zend_read_property() to allocate property zval too 2005-11-23 18:51:44 +00:00
Rui Hirokawa b9f0ff7aab MFH: fixed 5307 unexpected header can be injected to mb_send_mail(). 2005-11-23 15:17:29 +00:00
foobar f7beb9f30c fix tag 2005-11-23 15:01:54 +00:00
Antony Dovgal 1e93bb16e4 fix #35336 (crash on PDO::FETCH_CLASS + __set()) 2005-11-23 11:15:11 +00:00
Dmitry Stogov 36d6ddc241 Bug #33732 (Wrong behavior of constants in class and interface extending) 2005-11-23 09:26:43 +00:00
Rob Richards 7e0dc09703 BFN 2005-11-23 03:13:57 +00:00
Rob Richards ad7732c0cc Fixed bug #35342 (isset(DOMNodeList->length) returns false)
add test
2005-11-23 03:12:47 +00:00
Ilia Alshanetsky 8c86ea4693 Fixed bug #35046 (phpinfo() uses improper css enclosure). 2005-11-23 00:15:08 +00:00
Ilia Alshanetsky 2f6cebb206 Added 5.1 upgrading notes.
# Big thanks to Steph Fox for taking the time to make this list possible.
2005-11-22 23:49:13 +00:00
Antony Dovgal af34ed0d97 fix #35341 (Fix for bug #33760 breaks build with older curl) 2005-11-22 22:53:34 +00:00
Sara Golemon 7f367c9d83 Widen allowable range of values for 'window' bits.
Make -MAX_WBITS default (to match gzinflate() and gzdeflate())
2005-11-22 22:05:38 +00:00
Ilia Alshanetsky 0d088689c0 Removed {} E_STRICT pending furher discussion, may be introduced later on. 2005-11-22 19:46:13 +00:00
Ilia Alshanetsky 80e04c2c35 Fixed command error in ftp:// wrapper.
# Thanks to Stefan Esser for discovering the problem.
2005-11-22 03:01:39 +00:00
Ilia Alshanetsky 13996df552 Fixed test 2005-11-22 01:57:02 +00:00
Michael Wallner 3db21d2f4c - fix make install 2005-11-22 00:50:36 +00:00
Frank M. Kromann a6a9dc2eec /Gz and /RTC1 is for debug builds 2005-11-22 00:29:56 +00:00
foobar 7243d31ae0 MFH: - Fixed header installing under phpize builds 2005-11-21 23:08:02 +00:00
Marcus Boerger 19ea8abd09 - MFH Fixed Bug #35286 tokenizer ext drops final comment (by greg) 2005-11-21 19:24:38 +00:00
foobar e47c21e0bc test -e does not work with solaris 2005-11-21 19:06:04 +00:00
Derick Rethans 2bb4d8282c - Fixed bug #35143 (gettimeofday() ignores current time zone).
- Fixed tests due to class constants patch.
2005-11-20 20:14:24 +00:00
Ilia Alshanetsky 4020933726 Fixed bug #35303 (PDO prepare() crashes with invalid parameters). 2005-11-20 20:06:28 +00:00
foobar db77890bbd MFH: - Fixed bug #35243 (php_mblen() crashes when compiled with thread-safety on Linux) 2005-11-20 18:07:28 +00:00
Sebastian Bergmann abe364335b Use /RTC1 instead of /GZ for MS VisualStudio 2005. 2005-11-20 17:03:14 +00:00
Marcus Boerger cfeb12ccf5 - MFH Fix parameter parsing 2005-11-20 13:05:15 +00:00
foobar d20fe303b3 fix news 2005-11-20 08:13:34 +00:00
Antony Dovgal 493c9fcf93 MFH: fix #35293 (PDO segfaults when using persistent connections) 2005-11-19 16:41:08 +00:00
Rui Hirokawa 60949ca571 MFH: fixed #35253 length of the encoded string vilolates a RFC. 2005-11-19 08:25:32 +00:00
Frank M. Kromann 6ed54ddc79 MFH: Fix #33201 Crash when fetching some data types 2005-11-18 21:23:20 +00:00
Frank M. Kromann e1fac162a0 MFH Fix #33963. mssql_bind fails on input parameters 2005-11-18 20:48:46 +00:00
Frank M. Kromann ae75d4350d MFH: Fix #32009 crash when mssql_bind() is called more than once 2005-11-18 20:40:52 +00:00
Frank M. Kromann da2d7e7229 MFH: Fix #33153 Crash in mssql_next_result(). 2005-11-18 19:14:32 +00:00
Ilia Alshanetsky 110344d65c Fixed bug #35278 (Multiple virtual() calls crash Apache 2 php module). 2005-11-18 18:59:49 +00:00
foobar 54a5c714ca php4 -> php5 2005-11-18 16:09:50 +00:00
foobar 7b073bbad8 - Make sure --with-readline is used only when --with-libedit is not used. 2005-11-18 15:07:39 +00:00
Dmitry Stogov 8b4e1abdb0 Fixed bug #35273 (Error in mapping soap - java types) 2005-11-18 11:00:15 +00:00
foobar 25558ffdbb back to dev 2005-11-18 09:51:44 +00:00
Marcus Boerger c21ced1ec9 - Not in this branch 2005-11-17 22:35:27 +00:00
Rasmus Lerdorf aa749a1269 Missing }}} 2005-11-17 21:56:04 +00:00
Ilia Alshanetsky 4ba37d04d4 RC6 2005-11-17 21:27:58 +00:00
foobar 4eb9e62209 fix news 2005-11-17 21:15:19 +00:00
Ilia Alshanetsky eb0a6a666f Moved date constants into the date class, they all class constants now. 2005-11-17 21:05:30 +00:00
Ilia Alshanetsky 8f514cd18c MFH: Resolve Apache 2 regression with sub-request handling on non-linux
systems.
2005-11-17 21:00:28 +00:00
Sara Golemon 1340c04976 MFH (r-1.51) #32371 php://input sometimes returns duplicate data 2005-11-17 19:40:38 +00:00
Antony Dovgal 014729d00b MFH: make GCC happy and suppress the warning 2005-11-17 19:21:32 +00:00
Ilia Alshanetsky 95c6c6d2cd Fixed test. 2005-11-17 18:25:16 +00:00
Ilia Alshanetsky d734669230 Fixed bug #35248 (sqlite_query() doesnt set error_msg when return value is
being used).
2005-11-17 14:38:36 +00:00
Antony Dovgal 1a78dc5fbf MFH: fix #35079 (stream_set_blocking(true) toggles, not enables blocking)
patch by askalski at gmail dot com
2005-11-17 14:19:40 +00:00
Derick Rethans 924ae32ddf - Fixed bug #35218 (strtotime no longer ignores timezone comments like "(PST)") 2005-11-17 13:04:31 +00:00
Derick Rethans 18606377dd - Fixed typo 2005-11-17 12:33:36 +00:00
foobar a0303c772a MFH: Renamed config.m4 to config0.m4
# PCRE configure tests must be run before e.g. ext/filter
2005-11-17 10:02:42 +00:00
foobar 52747127f8 MFH 2005-11-17 09:58:28 +00:00
foobar c127df868e MFH: - Fix compile failure when ext/readline is compiled as shared (bug #35249) 2005-11-17 08:37:31 +00:00
Ilia Alshanetsky b5c8fcb5fa Allow zend_parse_parameters to handle non-well formed integers, but raise
E_NOTICE in the process.
2005-11-17 00:19:23 +00:00
foobar 158ebbd9b5 MFH 2005-11-16 22:14:32 +00:00
Ilia Alshanetsky da0a76c561 {} to [] test fixes 2005-11-16 16:57:27 +00:00
Ilia Alshanetsky f1a8fde76a back to dev 2005-11-16 15:41:59 +00:00
Ilia Alshanetsky cce5e8c9ea Updated tests to use [] instead of {} 2005-11-16 15:13:20 +00:00
Ilia Alshanetsky 9aeb125f4a By popular demand the {} message is now an E_STRICT. 2005-11-16 15:10:56 +00:00
Ilia Alshanetsky aab9009deb Added depreciation notice for {} string offset access. 2005-11-16 14:55:21 +00:00
Ilia Alshanetsky 209169786a 5.1.0RC5 2005-11-16 14:18:11 +00:00
Dmitry Stogov 6b8bf38333 Fixed bug #35239 (Objects can lose references) 2005-11-16 11:52:27 +00:00
Dmitry Stogov 8bd18e174b Fixed bug #35229 (call_user_func() crashes when arguement_stack is nearly full) 2005-11-16 09:31:21 +00:00
Wez Furlong 0bd9518f8c Closes PECL #5944; binding an invalid parameter can lead to segfaults.
Modified patch provided by curt@php.net.
2005-11-16 06:32:33 +00:00
Marcus Boerger c95360658f - MFH Add new test 2005-11-15 21:33:10 +00:00
foobar f8781c168e extend the entry a bit :) 2005-11-15 16:53:14 +00:00
foobar a7d31c8dac bfp 2005-11-15 16:51:24 +00:00
Dmitry Stogov b58ed261d7 Allow "null" default value for arguments with array type hint 2005-11-15 16:49:40 +00:00
Derick Rethans aa9ea59851 - Allow "= null" default for parameters with a class type-hint. 2005-11-15 15:59:49 +00:00
Ilia Alshanetsky 57e49322a5 Fixed memory leak on php-cli -h 2005-11-15 15:27:26 +00:00
Ilia Alshanetsky c4da6009bb MFH: Fixed possible crash in http:// wrapper. 2005-11-15 14:46:34 +00:00
Dmitry Stogov d3e0b57e1a Allow recursive calls to __get/__set for different properties 2005-11-15 14:28:40 +00:00
Dmitry Stogov 3c19326480 Allow recursive calls to __get/__set for different properties 2005-11-15 14:18:15 +00:00
Antony Dovgal 23a3fdbf04 MFH: call zend_objects_destroy_object() explicitly
fix segfault when intern->time is NULL
2005-11-15 14:08:03 +00:00
Dmitry Stogov 64931b62cc Allow recursive calls to __get/__set for different properties 2005-11-15 13:35:23 +00:00
Dmitry Stogov a8c6b992b8 Fixed bug #35147 (__HALT_COMPILER() breaks with --enable-zend-multibyte) 2005-11-15 13:29:39 +00:00
Dmitry Stogov 5519008169 Fixed call to __destruct() for objects of classes delivered from internal ones those use zend_objects_store_put(obj, NULL, ... 2005-11-15 12:41:31 +00:00
Dmitry Stogov 8c100e6451 Fixed bug #35176 (include()/require()/*_once() produce wrong error messages about main()) 2005-11-15 11:13:43 +00:00
Frank M. Kromann fe306ed1a6 Change max_procs from 25 to library default. This will make FreeTDS connections work a bit better 2005-11-14 23:14:25 +00:00
Antony Dovgal 241aa9a59d MFH: fix #35197 (Destructor is not called) and similar issues in other extensions 2005-11-14 22:03:02 +00:00
Antony Dovgal cd9e244a68 MFH: fix #35197 (Destructor is not called) and similar issues in other extensions 2005-11-14 21:54:35 +00:00
Ilia Alshanetsky 927ea59de3 PEAR news 2005-11-13 18:23:25 +00:00
Ilia Alshanetsky f3f057127b Slated for PHP 6 2005-11-13 18:02:47 +00:00
foobar 592e78ab87 MFH: - Fixed bug #35179 (tokenizer extension needs T_HALT_COMPILER) 2005-11-10 07:50:59 +00:00
foobar 71ac32bdb8 MFH 2005-11-08 20:21:47 +00:00
foobar bd8fe7fcf0 FBFN 2005-11-08 16:57:10 +00:00
foobar f60da5cd5e MFH 2005-11-08 15:54:48 +00:00
Rui Hirokawa 68d1942a9a NEWS updated. 2005-11-08 14:47:50 +00:00
Andrey Hristov df2c11b731 test fetching of unsigned int(11) 2005-11-08 14:43:49 +00:00
Andrey Hristov 611a05f857 BFN 2005-11-08 14:10:17 +00:00
Andrey Hristov 64e8f63978 fix test - putting signed into unsigned produces 0, if not in strict mode
(in strict mode this will fail)
2005-11-08 14:06:40 +00:00
Andrey Hristov 00a9f063f8 on 32bit platform if the column is UNSIGNED INT(11) and the value
is greater than 2^31-1 then convert to string. on 64bit this is of no
problem because there long inside zval is big enough to keep unsigned
int(11)
2005-11-08 13:50:50 +00:00
Dmitry Stogov 270640283e Fixed bug #35142 (SOAP Client/Server Complex Object Support) 2005-11-08 08:30:19 +00:00
Marcus Boerger 9c14ce94f3 - MFH heredoc handling in -a mode 2005-11-07 19:14:40 +00:00
Marcus Boerger 134b2718d4 - Add new tests 2005-11-07 18:38:20 +00:00
Ilia Alshanetsky 8e2de517bb Fixed bug #35135 (PDOStatment without related PDO object may crash). 2005-11-07 16:53:15 +00:00
Marcus Boerger bb293e15c3 - Drop unnecessary param 2005-11-07 13:08:24 +00:00
Marcus Boerger ae1d56d098 - MFH Bug #32223 weird behaviour of pg_last_notice 2005-11-07 12:57:49 +00:00
Dmitry Stogov 9e1beb4f1c Fixed bug #35009 (ZTS: Persistent resource destruct crashes when extension is compiled as shared) 2005-11-07 12:24:55 +00:00
Dmitry Stogov 88edad9f08 Fixed bug #35091 (SoapClient leaks memory) 2005-11-07 10:05:35 +00:00
foobar 6ec23a56d8 MFH:- Fixed minor leak with -dzlib.output_compression=1 -m 2005-11-06 22:42:23 +00:00
foobar 261eabbdd4 MFH 2005-11-06 22:08:30 +00:00
Marcus Boerger 33c650020a - Remve bogus part of test 2005-11-06 12:25:53 +00:00
Marcus Boerger 71ad4dd19b - Fix parameter parsing 2005-11-06 11:58:34 +00:00
Derick Rethans 15c1b8a3a2 - MFH: E_STRICT is not part of E_ALL, so the lines were wrong here. 2005-11-06 11:09:32 +00:00
Marcus Boerger c388f97ac9 - Fix test expectations 2005-11-06 10:51:29 +00:00
foobar d4a1506d52 Fix bad MFH 2005-11-06 02:59:18 +00:00
Rasmus Lerdorf b03351633a And simplexml doesn't need dom anymore to do the import 2005-11-05 22:37:18 +00:00
Rasmus Lerdorf 04a291d39a This SimpleXML requirement is no longer needed and by removing it we
remove a circular dep where it was impossible to build simplexml shared
and not load it.
2005-11-05 22:25:12 +00:00
Ilia Alshanetsky 82814fc852 Fixed bug #31971 (ftp_login fails on some SSL servers).
Patch by: frantisek at augusztin dot com
2005-11-05 22:02:15 +00:00
Wez Furlong 2556b354b3 improve configure script.
Fixes #35107; compile failure with MySQL 5
2005-11-05 16:20:06 +00:00
Rui Hirokawa 00dfb7dc14 MFH: fixed garbled multibyte characters. 2005-11-05 04:49:57 +00:00
Wez Furlong 00df9b67ce Fixes PECL Bug #5868; wrong iters count for OCIStmtExecute 2005-11-04 18:11:40 +00:00
Marcus Boerger bf9a25d0bb - Fix test expectations - we are no detecting the error earlier
# Unfortunatley we also lower the severity here because sqlite's error
# facility is dealing with the problem at this early stage as E_WARNING.
2005-11-03 23:48:09 +00:00
Marcus Boerger 83bdbe5b53 - Fix static check in zend_is_callable_ex()
- Fix/speedup zend_make_callable()
# Actually the ...STATIC... flag in zend_is_callable_ex() *must* go, too.
# We keep it for the moment to support old stuff and skip analyzing them
# in detail...
2005-11-03 23:45:18 +00:00
Marcus Boerger 2ca2153a06 - MFH Add missing check flag 2005-11-03 22:06:30 +00:00
Marcus Boerger e464f0f456 - MFH Try fixing #35088 2005-11-03 21:59:13 +00:00
Marcus Boerger 7ae7cc363a - MFH Add missing check 2005-11-03 21:28:43 +00:00
foobar 528e7869b6 MFH: - Fixed bug #35078 (configure does not find ldap_start_tls_s) 2005-11-03 20:41:13 +00:00
Ilia Alshanetsky 72030596ba Fixed typo. 2005-11-03 15:01:30 +00:00
Michael Wallner 17d16cf2af - MFB44: #34851 (SO_RECVTIMEO and SO_SNDTIMEO socket options expect integer
parameter on Windows)
2005-11-03 15:00:51 +00:00
foobar edc87ef840 MFH: Fixed bad usage of php_checkuid() 2005-11-02 21:26:25 +00:00
Marcus Boerger 8098790208 - Add missing test 2005-11-02 20:32:21 +00:00
Marcus Boerger 50ba309495 - Make spl_autoload_register use zend_is_callable_ex() 2005-11-02 20:31:01 +00:00
Marcus Boerger a4bd0d6a25 - Add missing cases and checks 2005-11-02 20:30:13 +00:00
Derick Rethans 703fc059bf - MFH: Fixed initializing and argument checking for posix_mknod(). 2005-11-02 15:53:49 +00:00
Michael Wallner 496fd1c041 - sapi_header_op(SAPI_HEADER_(REPLACE|ADD), {NULL, 0, 0}) caused HTTP response splitting
- sapi_send_headers() already takes care of default_content_type (left over of fix for bug #29983)
2005-11-02 14:38:13 +00:00
Ilia Alshanetsky 435b820f68 Fixed minor memory leak triggered by: -dzlib.output_compression=1 -m 2005-11-01 22:59:18 +00:00
foobar e02f8809f1 - Fixed test. Some people might actually be using php.ini-dist which
has precision set to 12. (and this test results need 14)
2005-11-01 22:39:53 +00:00
Marcus Boerger 1d0b88d316 - Update docu 2005-11-01 21:48:25 +00:00
Marcus Boerger 376d4554fb - MFH the iterator base interface is Traversable not IteratorAggregate 2005-11-01 21:18:24 +00:00
Frank M. Kromann 623a2021ab MFH: Fix #35037. Selecting a uniqueidentifier would return unknown data type when used with freetds. 2005-11-01 18:15:44 +00:00
foobar 289402edc6 MFH: - Added missing safe-mode checks
# Added by replacing the existing open_basedir checks with a macro
# Also, the filename passed might be null, etc. so it's not very good
# idea to pass to php_error_docref() (catch by Ilia)
2005-11-01 17:05:09 +00:00
foobar 98691ba0c0 nuke typo 2005-11-01 16:21:29 +00:00
foobar f803888510 MFH: Hiding bugs is not purpose of the regression tests. 2005-11-01 14:36:37 +00:00
Edin Kadribasic fbc6470cb6 Fix ZTS build 2005-11-01 14:18:20 +00:00
Wez Furlong 3d9af317e6 update ready for release spree today 2005-11-01 13:14:10 +00:00
Wez Furlong 6f63c45639 Fix #35032; pdo_dblib doesn't find includes on some systems 2005-11-01 13:12:52 +00:00
Dmitry Stogov e98a40f1fa Fixed SIGSEGV 2005-11-01 11:11:35 +00:00
Sebastian Bergmann 02eb02d1ce MFH: Allow bison 2.1. 2005-11-01 10:31:56 +00:00
Wez Furlong 38c5dd2929 prep for PECL release 2005-11-01 03:16:36 +00:00
Wez Furlong dbc09d3325 Closes PECL Bug #5633.
Build tested with 5.0.x as PECL, 5.1 as PECL and 5.1 static
2005-11-01 03:13:32 +00:00
Wez Furlong b6fe60ab52 prep for PECL release 2005-11-01 03:10:09 +00:00
Wez Furlong 6070381f9d prep for pecl release 2005-11-01 03:07:41 +00:00
Wez Furlong 872661b91d prep for PECL release 2005-11-01 03:04:49 +00:00
Wez Furlong b3b9ee1467 hrmm, typo fix. 2005-11-01 03:04:25 +00:00
Wez Furlong 598f182c29 prep for PECL release 2005-11-01 02:46:12 +00:00
Wez Furlong 58a14f225d Prep for PECL release 2005-11-01 02:44:11 +00:00
Brian France 890bd3f002 Fixed phpize build (default PHP_OPENSSL to no if not set) 2005-11-01 00:32:21 +00:00
Ilia Alshanetsky 0ba24fb65a Additional open_basedir/safe_mode checks. 2005-10-31 23:44:40 +00:00
Marcus Boerger 9622ccface - Drop unnecessary exports to prevent forward BC problems 2005-10-31 21:20:44 +00:00
Dmitry Stogov 681405fc4a Fixed bug #35017 (Exception thrown in error handler may cause unexpected behavior) 2005-10-31 19:25:14 +00:00
Marcus Boerger 24a80c3ebf - Fix remaining memleaks
# all tests pass for me now for the first time in:
# pgsql, mysql, sqlite, sqlite2
2005-10-31 07:47:40 +00:00
Wez Furlong b74698f135 fix misinterpretation of data when overriding types via bindColumn.
Very slightly modified patch from Marcus.
2005-10-31 03:23:38 +00:00
Wez Furlong 2baf1500e0 Closes PECL Bug #5722; BLOB support was half-baked. 2005-10-31 02:11:27 +00:00
Wez Furlong 40c24a65c4 improve test portability.
improve infrastructure for LOB support.
2005-10-31 02:07:38 +00:00
foobar 138ad7d252 bfn 2005-10-31 00:11:42 +00:00
Marcus Boerger e7494a7e9e - Fix memleak 2005-10-30 22:17:52 +00:00
Ilia Alshanetsky 2dc3862c7f Improve iconv skip conditions 2005-10-30 18:07:47 +00:00
Ilia Alshanetsky 57510065ce Fixed bug #35022, #35019 (Regression in the behavior of key/current
functions).
2005-10-30 18:03:30 +00:00
Marcus Boerger cea6a783af - MFH Add docu 2005-10-30 16:07:45 +00:00
Ilia Alshanetsky 941a94ead4 Simplify code. 2005-10-30 13:48:30 +00:00
Ilia Alshanetsky d22d6910ad Fixed Bug #35014 (array_product() always returns 0). 2005-10-30 13:44:26 +00:00
Wez Furlong cc4b453611 dos to unix line endings 2005-10-29 20:41:54 +00:00
Wez Furlong 0139cd0e53 Closes PECL Bug #5772; FETCH_FUNC broken for mixed case function names 2005-10-29 03:11:46 +00:00
Wez Furlong 7af8089096 Closes PECL #5809; PDOStatement::execute(array(...)) would modify its args.
It should behave like bindValue() not bindParam().
2005-10-29 03:01:19 +00:00
Wez Furlong 588d88960c clean up the test2 table that some tests create 2005-10-29 02:58:24 +00:00
Wez Furlong c28a9a4e5c Closes PECL Bug #5802 2005-10-29 02:41:50 +00:00
Wez Furlong e0924b7451 Close PECL Bug #5780 2005-10-29 02:36:30 +00:00
Wez Furlong b2424b2e08 argh! we don't want to NULL the stmt here; freeing the results is not the same
as destroying the prepared statement handler, so we're leaking and breaking, as
can be seen by running the test suite.

brown paper bag for PDO in PHP 5.1RC4?
2005-10-29 02:16:35 +00:00
Wez Furlong 9bd48c2e15 Closes PECL Bug #5645; emits mysql client library version in MINFO output. 2005-10-29 01:58:22 +00:00
Ilia Alshanetsky fad0caaee9 Back to dev 2005-10-28 15:45:05 +00:00
Antony Dovgal 579c9abfb3 MFH: quick fix for #35003 (Warning: PDOStatement::fetch(): column 0 data was too large for buffer and was) 2005-10-28 15:02:09 +00:00
Ilia Alshanetsky 721fec251b 5.1.0RC4 2005-10-28 15:00:49 +00:00
Dmitry Stogov b05b949a47 Fixed bug #34879 (str_replace, array_map corrupt negative array indexes on 64-bit platforms) 2005-10-28 14:46:30 +00:00
Antony Dovgal e9de9f3aeb fix TSRM build 2005-10-28 12:00:10 +00:00
Dmitry Stogov a3cb94abff Fixed bug #34982 (array_walk_recursive() modifies elements outside function scope) 2005-10-28 10:06:43 +00:00
Dmitry Stogov fa406902d5 Fixed bug #34982 (array_walk_recursive() modifies elements outside function scope) 2005-10-28 09:57:35 +00:00
Dmitry Stogov 36a14076a8 Fixed bug #34725 (CLI segmentation faults during cleanup in ZTS if ext/pcre is DSO) 2005-10-28 08:30:41 +00:00
Anantha Kesari H Y 3815b367d5 NetWare LibC sdk has stdarg.h
--Kamesh
2005-10-28 07:52:58 +00:00
Dmitry Stogov 844cb82c45 $id:$ tatgs are removed from generated files to avoid committing of Zend/zend_vm_opcodes.h without real changes. 2005-10-28 06:05:57 +00:00
Rob Richards 2e8f773eee MFH: fix crash setting attr from foreign doc (throws exception)
add test
2005-10-27 23:51:22 +00:00
Antony Dovgal a9cac89541 MFH: commit forgotten part 2005-10-27 19:39:38 +00:00
Dmitry Stogov 8212034254 Fixed SIGSEGV 2005-10-27 19:25:52 +00:00
Antony Dovgal 9ffefbc74e MFH: add MySQL options and corresponding constants 2005-10-27 17:34:24 +00:00
Antony Dovgal 7c01510b95 MFH: free && set to NULL S->stmt 2005-10-27 17:26:19 +00:00
Ilia Alshanetsky 3a9cdbfd41 Fixed memory leak on error 2005-10-27 14:07:30 +00:00
Ilia Alshanetsky bac9ab777e One check is enough. 2005-10-27 14:06:39 +00:00
Rathna N ced39e3168 Tests for calendar extension 2005-10-27 11:05:50 +00:00
Wez Furlong dcd7879556 fixes PECL Bug #5589 2005-10-27 03:51:23 +00:00
Dan Scott 97ec02ce81 Test PDO::ATTR_CASE attribute. 2005-10-26 23:09:06 +00:00
Antony Dovgal 4c98758328 MFH: make compilers happy 2005-10-26 22:47:23 +00:00
Antony Dovgal 5b502880b6 MFH: fix #34996 (ImageTrueColorToPalette() crashes when ncolors is zero) 2005-10-26 21:38:20 +00:00
Ilia Alshanetsky 51d8950b53 Additional tweaks to the patch for bug #34249. 2005-10-26 15:08:23 +00:00
Antony Dovgal b122cd4b08 MFH: fix #34977 (Compile failure on MacOSX due to use of varargs.h) 2005-10-26 13:50:39 +00:00
foobar 143d1c8011 MFH 2005-10-26 11:33:25 +00:00
Dan Scott f987de46b4 Correct non-standard SQL. Standard SQL would define "DEFAULT NULL" -- but
that is the default value if the DEFAULT clause is omitted anyways.
2005-10-26 06:23:12 +00:00
Marcus Boerger 936b1e56c3 - MFH zend_is_callable_ex() has been changed 2005-10-25 23:20:29 +00:00
Marcus Boerger 2486b846cc - MFH zend_is_callable_ex() returns zend_class_entry* if available 2005-10-25 23:19:59 +00:00
Pierre Joye af888a4807 - fix #34980, divisor and offset never passed correctly (s/float/double/) 2005-10-25 23:00:19 +00:00
Michael Wallner a329ecd8c4 fix bug #34965 tidy is not binary safe 2005-10-25 18:04:59 +00:00
Antony Dovgal 2af3190a3d use correct enum type for the arg 2005-10-25 16:02:33 +00:00
Ilia Alshanetsky e13d51cea3 MFH: Fixed bug #34968 (bz2 extension fails on to build on some win32 setups). 2005-10-25 15:53:06 +00:00
Michael Wallner 2c5c8c161c - fix the fix 2005-10-25 15:35:39 +00:00
Michael Wallner 3bbd4b17a9 - MFH: fix bug #34821 zlib encoders fail on widely varying binary data on windows 2005-10-25 15:16:20 +00:00
Antony Dovgal e415260868 MFH: apply workaround for the leak only when GLIBC is used 2005-10-25 14:57:14 +00:00
Antony Dovgal 4d3c8240d5 fix the order 2005-10-25 14:37:28 +00:00
Michael Wallner 60efdff75f - MFH: thread safe SSL crypto locks, fixes bug #33760 2005-10-25 14:32:33 +00:00
Ilia Alshanetsky 9490f1c847 Do not run tests if iconv extension is unavailable. 2005-10-25 14:22:56 +00:00
Antony Dovgal a0c8d5d80a MFH: fix problem with garbage appearing in hostnames 2005-10-25 08:19:33 +00:00
Ilia Alshanetsky 6b46a441cd Fixed compiler warning 2005-10-25 03:53:25 +00:00
foobar dda1f722e2 MFH 2005-10-24 22:46:26 +00:00
Antony Dovgal 57b520541b MFH: fix #34970 (ldap configuration issues) 2005-10-24 20:24:35 +00:00
Marcus Boerger 5460d2dad6 - Fix issue with entities in attributes 2005-10-24 08:29:36 +00:00
Dmitry Stogov a0dd931d85 Fixed bug #34950 (Unable to get WSDL through proxy) 2005-10-24 07:44:17 +00:00
Dmitry Stogov f9fb94ff00 Reverted patch for bug #34934. Bug is marked as bogus. 2005-10-24 06:58:42 +00:00
Antony Dovgal 0a7b720094 MFH: fix #34938 (dns_get_record() doesn't resolve long hostnames and leaks) 2005-10-23 18:34:26 +00:00
Ilia Alshanetsky 76ad7425ad Fixed memory leak on error. 2005-10-23 15:29:09 +00:00
Wez Furlong ea544cf38f Closes PECL Bug #5750; uri: dsn is not handled correctly.
Patch from curt@php.net
2005-10-23 04:10:20 +00:00
foobar ecca329c14 keep the order! :) 2005-10-22 17:38:35 +00:00
Wez Furlong 890f7f46b4 Fix #34957; file access checks should use VCWD_ACCESS() 2005-10-22 17:02:10 +00:00
Antony Dovgal 23d3ddea25 fix ws 2005-10-21 15:53:22 +00:00
Dmitry Stogov 75a548a7e9 Fixed bug #34934 (offsetExists is not called from array_key_exists) 2005-10-21 15:19:40 +00:00
Antony Dovgal b260064bbf MFH: fix possible crash in dns_get_record()
cleanup code a bit
(partly fixes #34938)
2005-10-21 13:49:01 +00:00
Dmitry Stogov 187b6cc583 Fixed bug #31341 (escape on curly inconsistent) 2005-10-21 13:22:05 +00:00
Dmitry Stogov af0adbed39 Fixed fgetcsv() and fputcsv() inconsistency. 2005-10-21 12:13:39 +00:00
Dmitry Stogov 7c3bdf444d Fixed bug #34782 (token_get_all() gives wrong result) 2005-10-21 09:32:40 +00:00
Dmitry Stogov 863bf8a574 Fixed bug #29268 (__autoload() not called with Reflection->getClass()) 2005-10-21 08:03:28 +00:00
Ilia Alshanetsky d4696abdb9 Fixed tests to work with ZTS builds 2005-10-20 19:22:09 +00:00
Antony Dovgal e7925c9767 MFH: use proper constants 2005-10-20 16:54:48 +00:00
Antony Dovgal 159bae3d99 MFH: use constants instead of their values 2005-10-20 16:51:03 +00:00
Antony Dovgal 5fdeb391f3 MFH: fix copy/paste typo 2005-10-20 16:47:18 +00:00
Ilia Alshanetsky b0c0b79136 MFH: Fixed test for cygwin installs 2005-10-20 14:43:00 +00:00
Dmitry Stogov ad1f706fda Removed unnecesary local variable 2005-10-20 11:31:41 +00:00
Dmitry Stogov a8c338aa65 Fixed bug #34893 (PHP5.1 overloading, Cannot access private property) 2005-10-20 09:47:12 +00:00
Dmitry Stogov c326593c1a Fixed bug #34712 (zend.ze1_compatibility_mode = on segfault) 2005-10-20 08:55:10 +00:00
Dmitry Stogov 03cb8e959b Fixed bug #34767 (Zend Engine 1 Compatibility not copying objects correctly) 2005-10-20 08:14:59 +00:00
Dmitry Stogov d32c6512e1 Fixed bug #31177 (menory leaks and corruption because of incorrect refcounting). 2005-10-20 07:30:42 +00:00
Dmitry Stogov c095e20ca8 Fixed bug #31177 (menory leaks and corruption because of incorrect refcounting) 2005-10-20 07:23:26 +00:00
Dmitry Stogov 9269f58477 Added forgotten tests 2005-10-20 07:04:25 +00:00
Greg Beaver 3446a75a36 remove unused obsolete files from pear CVS
# to run PEAR tests, grab pear-core/tests and use "pear run-tests -rq"
2005-10-20 01:49:42 +00:00
Ilia Alshanetsky 5bb29235dc MFH: Fixed -m memory leak 2005-10-19 21:57:45 +00:00
Derick Rethans 719e78c78f - Fixed bug #34874 and #33546 (Problems with lone daynames). 2005-10-19 21:08:35 +00:00
Ilia Alshanetsky 382bc9d0e4 MFH: Fixed bug #29983 (PHP does not explicitly set mime type & charset). 2005-10-19 20:33:33 +00:00
Ilia Alshanetsky 4d0439e487 MFH: Fixed bug #34623 (Crash in pdo_mysql on longtext fields). 2005-10-19 14:11:56 +00:00
Ilia Alshanetsky 5916b8dd04 MFH: Change E_ERROR to E_WARNING when more_entropy flag is off on Cygwin. 2005-10-19 13:41:44 +00:00
Dmitry Stogov 5fd4035194 Fixed test 2005-10-19 12:48:24 +00:00
foobar e264b8a4d3 MFH: Fixed error messages and tests 2005-10-19 11:18:51 +00:00
Antony Dovgal 5ec19bb68c fix news entry 2005-10-19 11:18:14 +00:00
Dmitry Stogov 4a6faadcce Fixed memory leak in ZTS mode 2005-10-19 07:54:53 +00:00
Derick Rethans 6aed41421e - MFH: Improved error messages a bit. 2005-10-19 07:22:20 +00:00
Antony Dovgal e5928942ac MFH: initialize SG(request_info).auth_digest 2005-10-18 23:51:54 +00:00
Ilia Alshanetsky 24046edbbb MFH: Fixed bug #34905 (Digest authentication does not work with Apache 1). 2005-10-18 23:15:28 +00:00
Ilia Alshanetsky cbb928b8eb MFH: Do not set authorizer unless safe_mode or open_basedir are being used. 2005-10-18 22:51:10 +00:00
Derick Rethans 3e46adb183 - MFH: Fixed bug #33829 (mime_content_type() returns text/plain for gzip and
bzip files).
2005-10-18 15:04:07 +00:00
Antony Dovgal fb57a8363e unused var 2005-10-18 14:50:48 +00:00
Ilia Alshanetsky 12ff2532c9 Fixed bug #34899 (Fixed sqlite extension compile failure). 2005-10-18 14:33:19 +00:00
Antony Dovgal 62ca4594f8 MFH: use php_error_docref() instead of php_error() everywhere 2005-10-18 13:51:50 +00:00
Antony Dovgal bddc4e6c1d MFH: fix mime_magic problems with ZTS 2005-10-18 12:41:29 +00:00
Antony Dovgal d8e5ee075f MFH: fix bug #34902 (mysqli::character_set_name() - undefined method) 2005-10-18 10:02:36 +00:00
Dan Scott e89500cdfb Apply patch for #34900, sight unseen. 2005-10-18 01:05:22 +00:00
Ilia Alshanetsky 5a7596591f ZTS fixes 2005-10-18 00:20:52 +00:00
Ilia Alshanetsky 8b91c8f32e ZTS test fix 2005-10-18 00:17:27 +00:00
Ilia Alshanetsky 03418c1d36 Fixed test for ZTS builds 2005-10-18 00:15:02 +00:00
Ilia Alshanetsky 5a29be9b7d Fixed tests for ZTS builds 2005-10-18 00:12:30 +00:00
Ilia Alshanetsky d467331307 Fixed test for ZTS builds 2005-10-18 00:06:20 +00:00
Ilia Alshanetsky cdbf1938f2 Back to dev 2005-10-17 22:24:42 +00:00
Ilia Alshanetsky f133b09907 5.1.0RC3 2005-10-17 20:26:13 +00:00
Rob Richards fbda9ce9f4 MFH: only need context set once 2005-10-17 19:50:20 +00:00
Ilia Alshanetsky 197142b3e0 MFH: Properly fixed bug #34456 (original patch completely reverted). 2005-10-17 15:31:10 +00:00
Derick Rethans 8f4112bfdd - Fixed bug #29361 (var_export() producing invalid code). (Derick) 2005-10-17 14:38:12 +00:00
Ilia Alshanetsky b0f1719ee5 MFH: Fixed bug #34884 (Possible crash in ext/sqlite when sqlite.assoc_case
is being used).
2005-10-17 14:30:35 +00:00
Dmitry Stogov cc50a96139 Fixed bug #34873 (Segmentation Fault on foreach in object) 2005-10-17 07:57:00 +00:00
Ilia Alshanetsky 8d476ded8e MFH: Further URL validations in safe_mode/open_basedir configs. 2005-10-17 02:43:20 +00:00
foobar e7bd6769df MFH 2005-10-16 20:41:26 +00:00
foobar 8ac5b549e0 NEWS file is about changes between releases. (RCs are not releases..) 2005-10-16 17:54:31 +00:00
Derick Rethans 0893e10ac3 - Updated timezone database to version 2005.14. 2005-10-15 18:13:19 +00:00
Derick Rethans 33921efc44 - Fixed timezone guessing on Windows. (Derick, Nuno) 2005-10-15 18:12:29 +00:00
Georg Richter b343aa9945 fixed an error in mysqli_fetch_fields (function returns NULL instead of array
when row_number > num_fields).
Thanks to Marc Deslisle and phpMyAdmin team for the report.
2005-10-15 06:32:26 +00:00
Antony Dovgal 3c042299e6 MFH: add test for bug #34873 2005-10-14 21:52:18 +00:00
Ilia Alshanetsky eb28594aa5 Pear installer fix 2005-10-14 15:35:56 +00:00
Ilia Alshanetsky a218299d6a ZTS fix 2005-10-14 15:30:39 +00:00
Ilia Alshanetsky e6566d9477 Back to dev 2005-10-14 15:30:26 +00:00
Derick Rethans 1017c44f4a - Use the non-zlib version of the PHAR. 2005-10-14 13:41:47 +00:00
Ilia Alshanetsky a03039bade Prepare for 5.1RC2 2005-10-14 13:36:35 +00:00
Ilia Alshanetsky d18cdaf6dd MFH: fix test failures 2005-10-13 21:26:45 +00:00
Rob Richards 709f73aea7 MFH: move constants to class 2005-10-13 21:20:12 +00:00
Rob Richards 646500bfe9 MFH: insure stream usage 2005-10-13 20:34:37 +00:00
Rob Richards 1e0494a714 MFH: bump libxml min version to 2.6.11 2005-10-13 20:33:40 +00:00
Marcus Boerger 001f506533 - MFH SPL example was changed, so change PDO test accordingly 2005-10-13 19:49:59 +00:00
Marcus Boerger 4c8afd895a - MFH Add ability to bypass key() surrounding and make that default 2005-10-13 19:49:27 +00:00
foobar 7e2bccf776 MFH 2005-10-13 19:28:58 +00:00
Marcus Boerger 491674bea6 - Do not try to autoload the class, use internal only 2005-10-13 18:37:19 +00:00
Antony Dovgal c47fb30b5b MFH: fix #34856 (configure fails to detect libiconv's type) 2005-10-13 15:23:11 +00:00
Antony Dovgal 81b8096ea8 MFH: fix #34855 (ibase_service_attach() segfault on AMD64) 2005-10-13 12:58:48 +00:00
foobar 3fbee80f35 - Fixed bug #34850 (--program-suffix and --program-prefix not included in man page names) 2005-10-13 10:02:59 +00:00
foobar 428006f54d reorder 2005-10-13 10:01:59 +00:00
Antony Dovgal d67821cd02 ws fix 2005-10-13 09:48:38 +00:00
Antony Dovgal f4371b9cc6 fix bug #34581 (crash with mod_rewrite) 2005-10-12 21:24:09 +00:00
foobar 4acffedc6b missing entry 2005-10-12 20:52:25 +00:00
Derick Rethans cd90395cb6 - MFH: Apperently you can't store NULL pointer values into Zend hashes - god
know why not - so we won't store those in the cache anymore.
2005-10-12 19:49:59 +00:00
Ilia Alshanetsky 49678f0908 MFH: Fixed bug #34758 (PDO_DBLIB did not implement rowCount()). 2005-10-12 15:03:03 +00:00
Antony Dovgal 25a82d8a5c fix compile warnings (again) 2005-10-12 14:43:30 +00:00
Antony Dovgal 67f27b0aef make GCC happy and improve CS a bit 2005-10-12 14:29:26 +00:00
Antony Dovgal 305e946358 MFH: nuke unused vars 2005-10-12 14:04:02 +00:00
Rob Richards 2580744813 MFH: use spprintf where appropriate 2005-10-12 13:58:10 +00:00
Antony Dovgal 2bc716c131 fix TS build 2005-10-12 13:31:46 +00:00
Rob Richards 0615bf6cb4 BFN 2005-10-12 03:21:36 +00:00
Rob Richards 855f7dfd95 MFH: Fixed Bug #27908 (xml default_handlers not being called)
Fix memleak when entitydecls are parsed
remove old ifdefs
2005-10-12 03:21:05 +00:00
foobar 28a0aef13e MFH: removed confusing dot. 2005-10-11 18:58:59 +00:00
foobar c0ec353655 fix test 2005-10-11 18:11:13 +00:00
Ilia Alshanetsky ea4734926e MFH: Fixed bug #33167 (Possible crash inside pg_fetch_array()). 2005-10-11 16:19:14 +00:00
Ilia Alshanetsky cc034dcb38 MFH: Fixed bug #34742 (ftp wrapper failures caused from segmented command
transfer).
2005-10-11 14:33:51 +00:00
Antony Dovgal ad73bdcbe0 fix #34757 (iconv_substr() gives "Unknown error" when offset > string length) 2005-10-11 13:50:52 +00:00
Dmitry Stogov bb8e5de181 Fixed bug #32455 (wrong setting property to unset value) 2005-10-11 10:15:40 +00:00
Dmitry Stogov 631da59b50 Fixed bug #34790 (preg_match_all(), named capturing groups, variable assignment/return => crash) 2005-10-11 06:47:48 +00:00
Antony Dovgal 062626d03e use proper macros and vars instead of strlen() 2005-10-10 20:06:35 +00:00
Antony Dovgal a5cea052e8 fix #34818 (new mysqli_stmt() and several others crash if the first parameter is not a valid mysqli_link) 2005-10-10 20:03:00 +00:00
Derick Rethans 44205dc58a - MFH: Make sure the tzcache' dtor doesn't cleanup cached misses in the lookup
tables.
2005-10-10 16:42:32 +00:00
George Schlossnagle 9d79a201f1 Test seems potentially bogus. 2005-10-10 16:01:28 +00:00
Dmitry Stogov c61c3dd422 Fixed XML Schema error 2005-10-10 15:40:53 +00:00
Ilia Alshanetsky a5fe9808aa MFH: Fixed bug #34809 (FETCH_INTO in PDO crashes without a destination object). 2005-10-10 14:44:16 +00:00
Ilia Alshanetsky df71093dd8 bug fixing news 2005-10-10 14:31:21 +00:00
Ilia Alshanetsky 58a0906bf9 MFH: Fixed bug #34802 (Fixed crash on object instantiation failure). 2005-10-10 14:31:12 +00:00
Antony Dovgal 8152c64c02 BFN 2005-10-10 12:58:10 +00:00
Antony Dovgal 410e106aae fix #34810 (mysqli::init() and others use wrong $this pointer without checks) 2005-10-10 12:57:55 +00:00
Dmitry Stogov 3019a1c6a3 Fixed bug #34786 (2 @ results in change to error_reporting() to random value) 2005-10-10 10:53:52 +00:00
Dmitry Stogov b94970a3bd MFH 2005-10-10 10:50:16 +00:00
Antony Dovgal eef799a6ec BFN 2005-10-10 10:46:34 +00:00
Antony Dovgal c797466259 MF44: fix #33383 (crash when retrieving empty LOBs) 2005-10-10 10:44:39 +00:00
foobar ad28ef81c0 MFH: copypastetypofix 2005-10-10 10:28:53 +00:00
foobar d41c6dc6d6 MFH 2005-10-10 09:50:35 +00:00
Dmitry Stogov 45794ee259 Fixed bug #34467 (foreach + __get + __set incosistency) 2005-10-10 09:50:05 +00:00
Marcus Boerger 656f02fada - MFH Fix Logic 2005-10-10 06:09:25 +00:00
foobar 036f28f115 MFH: fix test 2005-10-10 05:57:21 +00:00
foobar 60d70459f3 extra spaces removed 2005-10-10 05:55:44 +00:00
Rob Richards b551a55bca MFH: PHP_CONFIG_FILE_PATH needs to use strlen() due to Win build 2005-10-10 02:26:56 +00:00
foobar b1d0f9bb43 typofix 2005-10-09 20:44:02 +00:00
foobar 0fefec1a35 BFN 2005-10-09 20:40:46 +00:00
foobar e403b15ebb MFH: - Fixed bug #34796 (missing SSL linking in ext/ftp when configured as shared). 2005-10-09 20:39:42 +00:00
Ilia Alshanetsky 412a28d124 MFH: Fixed bug #34777 (Crash in dblib when fetching non-existent error info). 2005-10-09 19:00:34 +00:00
Andrey Hristov 24af08eb80 add charsetnr and length to the object returned. this is kind of bug
because fetch_fields() and fetch_field() return that info and
fetch_field_direct() does not
2005-10-09 17:03:01 +00:00
Marcus Boerger 91682f88e4 - MFH Make test check for PlPgSQL before using it 2005-10-09 15:58:13 +00:00
Marcus Boerger a8c5828ce0 - MFH Add new test 2005-10-09 15:14:22 +00:00
Marcus Boerger de03dd6387 - MFH Fix potential SEGV with overloaded objects 2005-10-09 14:42:08 +00:00
Marcus Boerger bc81f55541 - MFH Bugfix #34704 (Infinite recursion due to corrupt JPEG) 2005-10-09 14:40:01 +00:00
Dmitry Stogov 303a642a0d Fixed bug #34788 (SOAP Client not applying correct namespace to generated values) 2005-10-09 12:41:44 +00:00
Pierre Joye 5dd9ad8f53 -fix build as shared or separate from main build (bfrance) 2005-10-09 12:06:27 +00:00
Dmitry Stogov 5ef3e0c57b Fixed bug #34787 (SOAP Client not handling boolean types correctly) 2005-10-09 11:05:46 +00:00
Georg Richter 94238838cf added Bugfix for #34785 2005-10-09 06:03:13 +00:00
Marcus Boerger 11f0ff9c1a - Update docu
- Synch class consts with HEAD
- Synch example RecursiveTreeIterator (as far as possible)
2005-10-08 19:09:58 +00:00
Georg Richter 7357ac0b96 fix for bug 34785:
added support for parent::__construct (mysqli_statement and mysqli_resultset)
  fixed failed testcases when sql_mode is in effect
2005-10-08 15:08:07 +00:00
Derick Rethans e3c8bd51de - MFH: Fixed bug #34676: missing support for strtotime("midnight") and
strtotime("noon").
2005-10-08 14:31:17 +00:00
Marcus Boerger 470da4e960 - MFH Add new test 2005-10-07 23:23:44 +00:00
Derick Rethans 5e46f636a5 - MFH: Make the Windows guessing routines actually return the guessed timezone. 2005-10-07 20:32:17 +00:00
Marcus Boerger faf80a4035 - BFN 2005-10-07 18:57:10 +00:00
George Schlossnagle 1f7c9e197c Test simple derivation from restriction. 2005-10-07 15:05:06 +00:00
Derick Rethans 6df3e40977 - MFH: Change parameter name because NetWare expands "tzname" as a macro to
something else.
2005-10-07 13:33:31 +00:00
Dmitry Stogov 2cbe63513c Fixed bug #34766 (possible crash on HTTP redirection) 2005-10-07 11:56:19 +00:00
Dmitry Stogov e011229598 Reverted last George patches 2005-10-07 08:23:35 +00:00
Derick Rethans 969f05a709 - MFH: Fixed bug #34771 (strtotime() fails with 1-12am/pm). 2005-10-07 08:09:01 +00:00
Derick Rethans 595ee08653 - MFH: New timezonemap data. 2005-10-07 08:06:40 +00:00
Marcus Boerger 6b0de601be - MFH C vs. C++ fix 2005-10-07 07:38:59 +00:00
foobar d8bb2766a8 maybe this month.. 2005-10-07 06:43:22 +00:00
George Schlossnagle fa3394eccb Permit correct usage of inherited encoders (from restriction/extension
"base" directives) for xml response decoding.
2005-10-07 05:14:52 +00:00
Marcus Boerger dec65f584b - MFH ReflectionClass::isInstantiable and abstract classes 2005-10-06 22:46:33 +00:00
George Schlossnagle abe0e61801 MFH: support complex types in restrictions and extensions 2005-10-06 22:30:24 +00:00
Marcus Boerger 35c82a75eb - MFH Fix issue (endless loop) with temp/memory streams 2005-10-06 21:31:25 +00:00
foobar e58513c4d0 BFN 2005-10-06 21:00:54 +00:00
Ilia Alshanetsky 71bd44ac02 MFH: Added missing safe_mode checks. 2005-10-06 20:47:41 +00:00
Johannes Schlüter d3dc0a39bc - MFH: Fix #34557 php -m exits with "error" 1 2005-10-06 20:29:41 +00:00
Rob Richards e1791bedd5 MFH: use sizeof instead of define 2005-10-06 18:48:19 +00:00
Marcus Boerger 6eaf1671b5 - Add new test 2005-10-06 18:34:16 +00:00
Derick Rethans f42742f796 - MFH: Fixed Windows build (patch by Mike) 2005-10-06 13:03:43 +00:00
Marcus Boerger cb83e27b02 - MFH (faillog, streams, counting, .......) 2005-10-06 09:42:17 +00:00
Rob Richards 93ffc14028 MFH: fix buffer lengths passed to snprintf 2005-10-05 22:36:10 +00:00
Antony Dovgal b33c2d9b17 nuke unused variable 2005-10-05 22:17:38 +00:00
Antony Dovgal 8a929e054e use the right constant name in error messages 2005-10-05 22:14:52 +00:00
Marcus Boerger b29b16af2e - Synch RecursiveIteratorIterator, fixes a few memory corruptions/memleaks 2005-10-05 21:59:13 +00:00
Marcus Boerger 3ced246dfc - MFH Update examples 2005-10-05 19:11:51 +00:00
Rob Richards 3282497f82 MFH: fix ZTS build 2005-10-05 16:40:21 +00:00
Ilia Alshanetsky bcf354a97a MFH: Missing safe_mode/open_basedir checks for file uploads. 2005-10-05 14:35:30 +00:00
Derick Rethans 3abc925a8a - Committing some changes that make PDO+SPL not crash anymore. These are done
by Marcus. and I'm committing them in order to actually use PHP 5.1 without
segfaulting when apache starts. This is not necessary the best solution.
2005-10-05 13:51:46 +00:00
Derick Rethans e1661efced - Implement correct Windows timezone guessing. 2005-10-05 11:06:56 +00:00
Antony Dovgal 1f6debba12 MFH: fix test 2005-10-05 09:00:36 +00:00
Derick Rethans 33a91ad309 - Fixed typo. 2005-10-05 08:23:39 +00:00
Derick Rethans c3678550a3 - Implemented tzcache
- Attempt at Windows detection code
2005-10-05 08:20:44 +00:00
Dmitry Stogov 6cbe6d7d52 Fixed throwing exceptions derived from SoapFault 2005-10-05 07:02:30 +00:00
Ilia Alshanetsky f2ed06347b MFH: Fixed possible INI setting leak via virtual() in Apache 2 sapi. 2005-10-05 00:43:38 +00:00
Antony Dovgal 1b8ecbcf54 MFH: fix #34723 (array_count_values() strips leading zeroes) 2005-10-04 20:48:17 +00:00
Antony Dovgal e0e9b5ac39 fix #34731, patch by novicky at aarongroup dot cz 2005-10-04 18:15:18 +00:00
Antony Dovgal 3d8dc4d3b1 fix #32179 (xmlrpc_encode() segfaults with recursive references) 2005-10-04 11:18:02 +00:00
Marcus Boerger 0a50368580 - Add optional dep for SPL under windows too 2005-10-04 07:47:11 +00:00
Marcus Boerger 4d631ec31b - Add optional dependency to SPL 2005-10-04 07:44:56 +00:00
Antony Dovgal 6df490d0ca MFH: nuke warning 2005-10-03 23:48:21 +00:00
Antony Dovgal 262cbbe8d0 include php_version_compare() declaration and eliminate warning 2005-10-03 23:37:10 +00:00
Antony Dovgal ffe605f2ed free cls_methods correctly and fix segfault on shutdown
(no bug entry and MFB, though..)
2005-10-03 23:27:26 +00:00
foobar 1c667a88e7 MFH 2005-10-03 20:21:02 +00:00
Marcus Boerger 061ff97f69 - MFH Throw an exception if an illegal string value is being used in
ArrayObject::offsetSet()
2005-10-03 17:59:56 +00:00
Marcus Boerger 308a64bc08 - MFH Really allow SXE being shared by not using anything from it directly in SPL 2005-10-03 16:05:08 +00:00
Marcus Boerger 42728f947c - Synch (to decrease number of diffs) 2005-10-03 15:43:40 +00:00
Marcus Boerger 0a2e6f723e - MFH change require to require_once 2005-10-03 15:06:27 +00:00
Ilia Alshanetsky 8a5bd01a44 MFH: GLOBALS protection for extract() function. 2005-10-03 14:04:16 +00:00
Marcus Boerger 31f8d7dc20 - MFH Update example 2005-10-03 13:36:18 +00:00
Marcus Boerger 48d9adc3f0 - MFH Allow uncached global functions 2005-10-03 12:36:36 +00:00
Derick Rethans e117d540d1 - MFH: Only use external database when it is newer than the builtin one. 2005-10-03 11:34:51 +00:00
Derick Rethans afccca77dd - MFH: Allow an external Timezone Database to be used. 2005-10-03 11:17:28 +00:00
Dmitry Stogov d09fbaa495 MFH (Bug #34643 wsdl default value) 2005-10-03 09:53:13 +00:00
Marcus Boerger 184309c2e9 - MFH Fix issue with RecursiveArrayIterator::getChildren() 2005-10-03 09:14:30 +00:00
Dmitry Stogov 594fd87ca7 Fixed bug #34678 (__call(), is_callable() and static methods) 2005-10-03 09:12:19 +00:00
Dmitry Stogov 728acc3785 Fixed bug #34358 (Fatal error: Cannot re-assign $this) 2005-10-03 08:21:51 +00:00
Ilia Alshanetsky 9a0bed9863 MFH: Fixed memory leak. 2005-10-03 03:54:06 +00:00
Wez Furlong 612dab64ee fix type 2005-10-03 00:55:23 +00:00
Marcus Boerger b76dcd68ee - MFH add new example 2005-10-02 23:12:35 +00:00
Wez Furlong a750f195cd Fix Bug #34687; error information from query() not passed back 2005-10-02 22:11:19 +00:00
Marcus Boerger 991a29cfd6 - MFH PDOException base 2005-10-02 20:38:18 +00:00
Marcus Boerger ca9dd7d826 - Add PDO::setAttribute(PDO::ATTR_STATEMENT_CLASS) 2005-10-02 20:07:11 +00:00
Marcus Boerger 0ea0e1615f - MFH Add new example 2005-10-02 17:33:05 +00:00
Derick Rethans 224e1f50ae - timelib_config.h should stay too. 2005-10-02 16:30:42 +00:00
Derick Rethans 6333f71ea3 - parse_date.c should not be here, as "make clean" removes it then. 2005-10-02 16:01:11 +00:00
Wez Furlong c19322869b use the right macro for these 2005-10-01 19:19:36 +00:00
Greg Beaver ba3862b369 set error_reporting to E_ALL in Makefile.frag 2005-10-01 16:05:44 +00:00
Marcus Boerger 13dc73940d - SPL may extend SimpleXML (if present) 2005-10-01 15:46:31 +00:00
Marcus Boerger 69722777a0 - Allow xpl/simplexml integration with simplexml being built shared 2005-10-01 15:41:37 +00:00
Derick Rethans 08b5c498ce - Implemented better timezone guessing algorithm. 2005-10-01 15:04:07 +00:00
Wez Furlong 932346c00f Allow compilation with PHP 5.0.x
Closes PECL #5514
2005-10-01 02:48:11 +00:00
foobar 56f006a998 fix bfn 2005-10-01 02:01:23 +00:00
Pierre Joye 4c4b955dce - entry for #33125 2005-09-30 21:01:38 +00:00
Pierre Joye 655743c4e7 - #33125, imagecopymergegray produces mosaic rainbow effect
at some point the alpha emulation formula has been broken
  restored.
2005-09-30 20:48:05 +00:00
Marcus Boerger 91e31d0243 - Try to fetch the necessary file via wget 2005-09-30 17:03:22 +00:00
foobar dfc8044098 reorder,reword,merge 2005-09-30 10:26:18 +00:00
Wez Furlong 69f0675a35 Fix for PECL #5433 (rowCount() not set) 2005-09-30 04:19:24 +00:00
Marcus Boerger b47525e508 - TSRM fix 2005-09-29 19:57:13 +00:00
Ilia Alshanetsky 941ac55d2f Removed unnecessary component that accidentally snuck-in 2005-09-29 16:39:37 +00:00
Ilia Alshanetsky 09540ee965 MFH:
Fixed possible crash and/or memory corruption in import_request_variables()
Fixed potential GLOBALS overwrite via import_request_variables().
2005-09-29 16:30:51 +00:00
Dmitry Stogov e2599c3dbf Fixed wrong array autodetection 2005-09-29 10:02:11 +00:00
Ilia Alshanetsky 1a04335ec2 MFH: Fixed possible GLOBALS variable override when register_globals are ON.
MFH: Fixed possible register_globals toggle via parse_str().
MFH: Fixed negative offset handling in substr_compare() function.
2005-09-28 22:39:52 +00:00
Dmitry Stogov ba5f66777e Fixed bug #34453 (parsing http://www.w3.org/2001/xml.xsd exception) 2005-09-28 11:24:18 +00:00
Dmitry Stogov 386a3b9305 Fixed bug #34617 (zend_deactivate: objects_store used after zend_objects_store_destroy is called) 2005-09-27 18:07:41 +00:00
Dmitry Stogov 4329db25a1 Fixed bug #34643 (wsdl default value has no effect) 2005-09-27 15:25:10 +00:00
Ilia Alshanetsky 72857b6dbb MFH: Fixed bug #32937 (open_basedir looses trailing / in the limiter). 2005-09-27 15:07:49 +00:00
Marcus Boerger c0cb5a83bf - BFN 2005-09-27 08:23:20 +00:00
Wez Furlong 006922ba18 ensure that this size is initialized correctly 2005-09-26 21:37:33 +00:00
Ilia Alshanetsky ef04eea493 Touch generated file 2005-09-26 19:34:09 +00:00
Ilia Alshanetsky 846b0826ab MFH: upgraded bundled libsqlite3 to version 3.2.7 2005-09-26 19:33:26 +00:00
Marcus Boerger 15c9f414a6 - MFH: Reset global pointer to NULL after mem free (required for apache 1.3) 2005-09-26 17:56:26 +00:00
Ilia Alshanetsky c508b5e66a Bug fixing news 2005-09-26 15:14:49 +00:00
Ilia Alshanetsky 9daaedc125 Fixed bug #34645 (ctype corrupts memory when validating large numbers). 2005-09-26 15:14:19 +00:00
Marcus Boerger 049882f29c - Try to fix bugs #34216 (Segfault with autoload) and #34584 (Segfault with
SPL autoload handler)
2005-09-25 18:04:35 +00:00
Ilia Alshanetsky f4a15e4fb8 Bug fixing news 2005-09-25 13:27:20 +00:00
Ilia Alshanetsky d696f11814 MFH: Fixed bug #34321 (Possible crash in filter code). 2005-09-25 13:26:30 +00:00
Wez Furlong 57641c166f reinstate this fix for building against PHP 5.0.x.
This works fine against PHP 5.1 too; if you revert this, you'd better have an
awesome technical reason, or I'll remove your karma.
2005-09-25 02:28:42 +00:00
Wez Furlong fdd42afa6c Fixup LOB handling for inserts (refs #34630).
Also tripped over the return of PECL #5200; looks like mysql doesn't return an
accurate length for the columns.  The PDO driver will sanity check the real
length against the buffer size it allocated (based on the info provided by
mysql), so that we won't overrun the buffer.  In addition, if a varchar field
is reported as having a length of less than 128, we'll allocate 128 just in
case.

If the data is truncated, report it via the appropriate sqlstate code.

There must be a better way to do this stuff.
2005-09-25 02:05:03 +00:00
Wez Furlong fab0baa274 refs #34630.
Real lob support for oracle will appear after the PHP 5.1 release.
2005-09-25 00:47:00 +00:00
Marcus Boerger 06550ce8e0 - MFH: Rename here too 2005-09-24 23:48:58 +00:00
foobar 2352850c52 Revert the "fix". It works fine when you use PHP_5_1 2005-09-24 23:33:58 +00:00
foobar 1536082186 fix typo 2005-09-24 23:23:25 +00:00
Marcus Boerger a349428685 - MFH: Serializeable was renamed to Serializable long ago 2005-09-24 23:19:24 +00:00
Wez Furlong 4fb5b322ee 99% certain that this fixes PECL #5366 and PECL #5391. 2005-09-24 19:15:23 +00:00
Wez Furlong 3905ce46d9 Refs #34630 2005-09-24 18:55:56 +00:00
Wez Furlong 4f7d14f8d9 a test for bug #34630 2005-09-24 18:54:50 +00:00
Wez Furlong 6cc5e191d0 Refs #34630 2005-09-24 18:47:50 +00:00
foobar 0d9bc3a679 Documentation belongs elsewhere 2005-09-24 18:18:58 +00:00
Edin Kadribasic ba8a8d9f25 Allow php extensions to use php_escape_shell_cmd() and php_escape_shell_arg(), needed for mbstring 2005-09-24 15:22:32 +00:00
Edin Kadribasic 4566f48777 Build PDO and SQLite as shared 2005-09-24 15:13:13 +00:00
Pierre Joye c81c189198 - MFH #33220, infinite loop while loading invalid GIF (nlopees) 2005-09-24 14:39:16 +00:00
Edin Kadribasic a952406eb3 sqlite3.h is a generated file 2005-09-24 14:21:29 +00:00
Edin Kadribasic 35b7ad00a6 Declare functions used by driver as PDO_API in php_pdo_driver.h 2005-09-24 14:18:01 +00:00
Antony Dovgal 6cf5be04d6 MFH: fix test 2005-09-23 10:34:20 +00:00
Anantha Kesari H Y a3a2fe37af NetWare LibC don't have socketpair function. So enabling socket_create_pair functionality only if socketpair is available in the host LibC.
--Kamesh
2005-09-23 09:54:31 +00:00
foobar 09f0161160 ws fix 2005-09-23 09:40:24 +00:00
Antony Dovgal e3a1bf1e62 MFH 2005-09-23 09:40:16 +00:00
Antony Dovgal 5ece2f6369 add new tests 2005-09-23 09:39:00 +00:00
Antony Dovgal d38a901189 - store current value of error_reporting only if it's not stored yet
- reset old_error_reporting to NULL only it points to the tmp_var at current opline
2005-09-23 09:36:43 +00:00
Anantha Kesari H Y 5337c02684 In NetWare two binaries with the same name can not be loaded in kernel address space(This is the default behaviour for NetWare apache webserver and hence PHP extensions also get loaded in kernel address space) simultaneoulsy. As the current autoconf built mysql extension is built as mysql.nlm this forbids the loading of mysql client binary. To work around this NetWare idiosyncrasy prefixing all the extensions with "php" except php5lib(phpts.dll eqivalent of Windows). I could have named this extensions prefixed with "php_" but "_" is eaten from the exported symbol prefix by the GCC cross compiler for NetWare so sticking to "php".
This fixes the issue of not needing "PHP_SUBST(EXTENSIONNAME_SHARED_LIBADD)" in all the extensions especially when they need to be built shared.

--Kamesh
2005-09-23 09:25:18 +00:00
foobar b5017bd725 MFH: Improved the fix for #21306 a bit 2005-09-23 08:14:13 +00:00
Dmitry Stogov d6c7d9630b MFH 2005-09-23 07:12:07 +00:00
Antony Dovgal 0dce979bfc MFH: fix #32081 (mysqli_real_connect(): mysqli.default_socket in php.ini has no effect) for real 2005-09-22 20:14:34 +00:00
Antony Dovgal eef28dacec bump API number 2005-09-22 19:13:32 +00:00
Antony Dovgal 8524b33feb BFN 2005-09-22 19:03:34 +00:00
Antony Dovgal f8e8c5534b MFH: fix #33771 (error_reporting falls to 0 when @ was used inside try/catch block) 2005-09-22 19:03:18 +00:00
Ilia Alshanetsky 0823526afe Fixed test 2005-09-22 16:24:51 +00:00
Edin Kadribasic f0c27e68b2 Fix building of extensions that inlcude extname/header.h 2005-09-22 13:16:30 +00:00
foobar cd63787e9a - Fixed bug #34583 ("make install" prematurely fails because of PEAR) 2005-09-22 13:04:12 +00:00
Marcus Boerger 8bba75f0f8 - BFN 2005-09-21 23:00:29 +00:00
Marcus Boerger f3c44f6065 - MFH Fixed Bug #34590 User defined PDOStatement class can't implement
methods
- Reimplement Traversable interface
# If there is a problem with this i need a backtrace. As far as i can
# tell by gdb/valgrind/logic there is no error here. But missuse leads to
# the same error report casing the exclusion of interface Traversable.
2005-09-21 22:58:39 +00:00
Marcus Boerger a72a517e2f - Add ability to execute .php generated from .phpt on failure without the
need to manually set the environment.
2005-09-21 18:40:56 +00:00
Dmitry Stogov 0988162649 Fixed memory corruption 2005-09-21 15:55:07 +00:00
Dmitry Stogov 3d41ebf595 Allow fopen() make HTTPS requests throug HTTP proxies 2005-09-21 15:04:26 +00:00
Ilia Alshanetsky 20c3266588 fixed compiler warnings 2005-09-21 13:23:00 +00:00
Ilia Alshanetsky 999a7acd71 MFH: Fixed bug #34565 (mb_send_mail does not fetch mail.force_extra_parameters) 2005-09-21 13:16:03 +00:00
Marcus Boerger 967413c58c - MFH Fix Bug #34243 ReflectionClass::getDocComment() returns no result 2005-09-21 09:56:51 +00:00
Derick Rethans 5e33a09f20 - MFH: Fixed definition in correct file. (Patch by Nuno) 2005-09-21 08:41:16 +00:00
Derick Rethans a51fc50b6e - MFH: Moved the FREE_OP to after the execution of the included file, or eval
statement so that it is safe to access this information in the overridden
  zend_execute() function, which is what Xdebug does.
2005-09-21 08:13:43 +00:00
Johannes Schlüter ddf3f9b068 - MFH: Remove HTML fragments from phpcredits() in CLI mode 2005-09-20 22:19:01 +00:00
foobar 529263d680 BFN 2005-09-20 20:59:00 +00:00
foobar de6b4c0091 MFH: - Fixed bug #21306 (catch bailouts of write handler during RSHUTDOWN) 2005-09-20 20:56:54 +00:00
Ilia Alshanetsky 4dff36f6b4 MFH: Allow overloading of PDO constructor. 2005-09-20 19:52:24 +00:00
Stanislav Malyshev bcb70109d2 fix crash on restarting static PHP having session modules loaded 2005-09-20 14:03:29 +00:00
foobar 462940cbb0 no irrelevant news here (pdo was never in PHP before, no point) 2005-09-20 07:18:54 +00:00
Wez Furlong 08a6122f54 MFH: use PDO:: class constants 2005-09-20 00:46:02 +00:00
Ilia Alshanetsky fe9db9ab0a Remove pointless PDO_ prefix 2005-09-20 00:44:51 +00:00
Ilia Alshanetsky bfe844e41e MFH: Make PDO use class constants 2005-09-20 00:35:21 +00:00
Marcus Boerger 9986219353 - MFH Fix filename 2005-09-19 19:03:53 +00:00
Antony Dovgal 33d913d9da MF5.0: add new test 2005-09-19 18:58:59 +00:00
Dmitry Stogov 5eb6b78c90 Fixed access to uninitialized value 2005-09-19 18:47:56 +00:00
Marcus Boerger e26ae04d5f - MFH Add deprecated/compatibility class for BC 2005-09-19 18:28:52 +00:00
Dmitry Stogov 9d3ac92729 MFH (removed unnecesary call to zval_ptr_dtor) 2005-09-19 17:50:24 +00:00
Dmitry Stogov 0ce7487110 Fixed access to memory that is already freed (in case of __call() method) 2005-09-19 16:28:54 +00:00
Dmitry Stogov 46488c8bb4 Fixed parameter passing incompatibilities.
Now it is possible to call array_pop(explode("&","1&2&3")) again.
2005-09-19 16:02:21 +00:00
foobar 116584297a cleanup, typos, etc 2005-09-18 20:34:43 +00:00
Antony Dovgal 9a1c6c55b8 fix build (declare extern HashTable pdo_driver_hash) 2005-09-18 18:05:59 +00:00
Marcus Boerger c3a79b5990 - MFH: Synch dosu 2005-09-18 17:52:09 +00:00
Marcus Boerger 8acd34d6d8 - MFH: Add missing docu/Synch 2005-09-18 17:39:54 +00:00
Marcus Boerger d1ee4b407c - Commite manually if not conatined in bunch commit 2005-09-18 17:16:17 +00:00
Marcus Boerger 7d918fae4c - Synch naming/move changes with HEAD
- Update tests/docu
# New functionality in CachingIterator/RecursiveIteratorIterator not MFHed
2005-09-18 17:15:04 +00:00
Wez Furlong 7e762989e7 move pdo_drivers -> PDO::getAvailableDrivers as part of namespacing sweep. 2005-09-18 14:13:08 +00:00
Edin Kadribasic 87071cf1d6 Added --add-modules-dir option to buidconf.js:
If this option is not specified buildconf.js will search for PECL
in the usual places (pecl, ../pecl).
Now it is possible to specify in which dirs additional modules reside
with say:
cscript /nologo win32/build/buildconf.js --add-modules-dir=../pecl_5_1 \
  --add-modules-dir=../php-gtk2
2005-09-17 20:00:01 +00:00
Antony Dovgal 3eb6167902 BFN 2005-09-16 23:56:12 +00:00
Antony Dovgal 21e809b7be MFH: check class_entry of this_ptr in Reflection API 2005-09-16 20:21:46 +00:00
Antony Dovgal 3fd2e85458 BFN 2005-09-16 17:12:12 +00:00
Antony Dovgal 4b9b5505f0 fix #34505 (possible memory corruption when unmangling properties with empty names)
2nd part
2005-09-16 17:11:02 +00:00
Antony Dovgal f43767b249 fix #34505 (possible memory corruption when unmangling properties with empty names)
1st part
2005-09-16 17:05:09 +00:00
Dmitry Stogov 27763b3666 Fixed bug #34478 (Incorrect parsing of url's fragment (#...)) 2005-09-16 15:48:30 +00:00
Dmitry Stogov e4a4ab60c7 Fixed bug #34518 (Unset doesn't separate container in CV) 2005-09-16 14:42:46 +00:00
Dmitry Stogov 8cf678c306 MFH (overriding of protected static property) 2005-09-16 13:42:49 +00:00
foobar 1bf64add7b correct flag 2005-09-16 12:09:17 +00:00
foobar 595e93be27 Fixed bug #34525 2005-09-16 12:06:41 +00:00
foobar 69edc17192 fix test 2005-09-16 07:41:08 +00:00
foobar ae281c372a - Fix tests due to changes in the error messages.
# Also nuked some CRLF's
2005-09-15 19:49:58 +00:00
Derick Rethans 7199bc5f86 - MFH: Fixed bug #34052 (date('U') returns %ld not unix timestamp). 2005-09-15 19:11:15 +00:00
Marcus Boerger c0ffebcee6 - Rename file class again by popular demmand: calling it SplFileObject now 2005-09-15 14:08:16 +00:00
foobar eb7e9b6bfc - Fixed error message grammar 2005-09-15 13:10:31 +00:00
Marcus Boerger 5ca5efcdda - Update docu 2005-09-15 03:54:42 +00:00
Marcus Boerger ca8596ab83 - Update with latest SPLchanges 2005-09-15 03:42:41 +00:00
Marcus Boerger 3fab7a3ed6 - No longer needed (moved into c) 2005-09-15 03:39:17 +00:00
Marcus Boerger a29501195f - MFH: Add new files 2005-09-15 03:38:03 +00:00
Marcus Boerger b4dd030782 MFH:
- Add SplObjectStorage
- Add RecursiveFilterIterator
- Rename Observer to SplObserver
- Rename Subject to SplSubject
- Move SPL constants to class constants
- Update docu
2005-09-15 03:33:04 +00:00
Derick Rethans a5f0cbed44 - Fixed shutdown order before RC2. 2005-09-14 20:08:31 +00:00
Marcus Boerger 650b76e542 - MFH: Improve error message 2005-09-14 18:23:48 +00:00
foobar d5809b85f9 MFH 2005-09-14 17:57:32 +00:00
foobar dc929d011c MFH 2005-09-14 15:53:02 +00:00
Ilia Alshanetsky 766e4b3c15 MFH: Fix error detection for queries such as OPTIMIZE 2005-09-14 15:34:58 +00:00
foobar bab59278d7 MFH 2005-09-13 21:40:46 +00:00
Ilia Alshanetsky c221e148d7 MFH: MFH: Make key() and current() take argument by value. 2005-09-13 13:24:38 +00:00
Antony Dovgal d3f03cc468 bfn 2005-09-13 09:20:36 +00:00
Antony Dovgal bd7a277d48 fix #34450 (Segfault when calling mysqli_close() in destructor) 2005-09-13 09:20:18 +00:00
Sara Golemon 196e54fc43 MFH(r-1.719) Plug leak of 1/2 bytes when converting from string/unicode 2005-09-12 17:44:21 +00:00
foobar 09f89c8cb0 MFH: Fixed build with phpize 2005-09-12 17:14:35 +00:00
Ilia Alshanetsky 2a7bd2b823 MFH: Fixed bug #34456 (Possible crash inside pspell extension). 2005-09-12 15:39:14 +00:00
Dmitry Stogov 9d1f2f30d3 Fixed bug #34199 (if($obj)/if(!$obj) inconsistency) 2005-09-12 11:48:57 +00:00
Dmitry Stogov 9a74c68a4c Additinal fix for bug #34277 (array_filter() crashes with references and objects) 2005-09-12 09:58:50 +00:00
Dmitry Stogov 21698c12fe Fixed huge memory leak in ZTS mode (backport from HEAD) 2005-09-12 09:06:15 +00:00
Dmitry Stogov 90236679e9 Fixed bug #34449 (ext/soap: XSD_ANYXML functionality not exposed) 2005-09-12 08:24:01 +00:00
Dmitry Stogov 5682438549 Better fix for exceptions in __sleep() 2005-09-12 07:13:54 +00:00
Wez Furlong 8dc3e7b147 When populating bound columns, override the returned type with the type
specified by the user in their bind.
2005-09-11 20:32:28 +00:00
Wez Furlong 9e9f413aeb Fix PECL Bug #5010 2005-09-11 19:44:26 +00:00
Greg Beaver af01525d1e prepare for using go-pear.phar 2005-09-11 17:39:15 +00:00
Ilia Alshanetsky be945f9fe2 Make use of 5.0+ features 2005-09-11 17:33:15 +00:00
Wez Furlong 81151a5dbf remove traversable interface; apparently it's not enough, and this stuff is too
magical to figure out wtf should be added.
2005-09-11 14:27:10 +00:00
Wez Furlong 497c7714e6 update manifest 2005-09-11 05:46:13 +00:00
Wez Furlong 77d3a41f8a update package.xml files and version numbers, in anticipation of a big bunch of releases. 2005-09-11 05:27:30 +00:00
Wez Furlong 1e37cc7b82 set version numbers to 1.0 2005-09-11 05:06:30 +00:00
Wez Furlong a55c4799aa MFH: reset the statement when closeCursor() is called. 2005-09-11 05:00:12 +00:00
Wez Furlong e53f6428ac merge George's fixes back from HEAD 2005-09-11 01:42:41 +00:00
Wez Furlong f4007c8f6b closes #33707: error information was not passed up to PDO::query(). 2005-09-10 21:38:07 +00:00
Wez Furlong edc39221c0 if a php bolean makes it as far as the parameter callback, it must really need
to be boolean; express is as native pgsql 't' or 'f'.

Add a test case for Bug #33876, which is a partially bogus bug.
2005-09-10 21:00:52 +00:00
Wez Furlong 5f47b4178e and touch the generated file 2005-09-10 20:58:57 +00:00
Wez Furlong e9c81e4983 actually register PDO_PARAM_BOOL as a constant (doh!).
When emulating bound parameters, pass booleans via the driver's quoter
method, so that is has an opportunity to tweak it.
Refs #33876: PDO misquotes/miscasts bool(false)
2005-09-10 20:58:19 +00:00
Wez Furlong 9c252b4b07 closes PECL #5027; PDO_FETCH_NAMED not handled via setFetchMode(). 2005-09-10 19:32:15 +00:00
Wez Furlong 2d16ed7706 Add test for this bug report; can't repeat the problem. 2005-09-10 19:27:29 +00:00
Wez Furlong efe24c0205 add __sleep and __wakeup functions to prevent serialize/deserialize from being used on PDO objects. Refs PECL #5217 2005-09-10 17:48:45 +00:00
Wez Furlong 6b0d0f7ceb allow exceptions thrown in __sleep to interrupt the serialization process. refs PECL #5217 2005-09-10 17:47:20 +00:00
Derick Rethans 7262ccfac9 - Fix version numbers as discussed to help version_compare for the PEAR folks. 2005-09-10 15:44:17 +00:00
Wez Furlong 0730fa2af9 Add PDOStatement::bindValue(), which is similar to bindParam(), except that
it binds the value of the zval at the time it is called, rather than keeping
a reference to the zval and taking the value at execute() time.
2005-09-10 15:32:04 +00:00
Dmitry Stogov 9305339d94 Changed "instanceof" and "catch" operators, is_a() and is_subclass_of() functions to not call __autoload(). 2005-09-09 06:48:49 +00:00
Ilia Alshanetsky 26bf79a15e MFH: Allow retrieval of query parse errors from SQLite. 2005-09-08 21:07:40 +00:00
Ilia Alshanetsky b5e2cc5197 MFH: Fixed bug #34420 (Possible crash inside curl_multi_remove_handle()). 2005-09-08 14:50:23 +00:00
Rob Richards 06e3607102 MFH: add save options parameter 2005-09-08 10:39:30 +00:00
Rob Richards 6818826bbd MFH: add additional constants
remove un-needed ifdefs
2005-09-08 10:37:57 +00:00
Rasmus Lerdorf 25c6fbe515 That line made no sense 2005-09-08 09:11:10 +00:00
Dmitry Stogov 42fb30298c Fixed crash on AIX 2005-09-08 06:19:07 +00:00
Greg Beaver 46783871e3 install-pear.phar removed -> moved to http://pear.php.net/install-pear.phar 2005-09-07 16:05:59 +00:00
Greg Beaver 6ed7a799af attempt to make new instructions clearer 2005-09-07 16:03:06 +00:00
Greg Beaver 38a52c5b0d change makefile to use phar and not source, if present 2005-09-07 15:59:53 +00:00
Dmitry Stogov 8a39d704c4 Fixed memory allocation bug 2005-09-07 15:36:31 +00:00
Ilia Alshanetsky 7f293b91b4 MFH: Upgraded SQLite 2 library in ext/sqlite to 2.8.16 2005-09-07 15:11:33 +00:00
Ilia Alshanetsky caa9702a5a Updated TODO 2005-09-07 02:33:12 +00:00
Ilia Alshanetsky a022e10c2d Simplify code by making use 5.1+ functions 2005-09-06 00:42:20 +00:00
Greg Beaver a3c168239d test version of install-pear.phar
can be removed if there is any issue
without changes to Makefile.frag, it is not actually used
2005-09-05 20:18:00 +00:00
foobar 27df981727 touch 2005-09-05 16:22:58 +00:00
foobar 020f1ba949 MFH: - Fixed bug #34311 (unserialize() crashes with characters above 191 dec) 2005-09-05 16:22:19 +00:00
foobar 1ee421ff66 BFN 2005-09-05 13:05:24 +00:00
Frank M. Kromann 635d65ab4e MFB: Fix for #34369
Add extra parameter to mssql_connect to force a new connection
2005-09-05 05:04:31 +00:00
Ilia Alshanetsky 084ab84411 Fixed compiler warning 2005-09-05 01:20:52 +00:00
Marcus Boerger 222900c4b0 - MFH 2005-09-04 18:55:03 +00:00
Wez Furlong d1be6c8152 assign a version number 2005-09-04 17:10:56 +00:00
Wez Furlong b6be0f9817 Allow ext/mysql to build against PHP 4 again; update package.xml ready for
release via PECL.
2005-09-04 04:51:23 +00:00
Edin Kadribasic 60b1f64cc7 touch 2005-09-04 00:48:59 +00:00
Edin Kadribasic 4e1b287b82 Fix for #34233 2005-09-04 00:47:59 +00:00
Edin Kadribasic 38317bb3bd Don't crash on invalid parameter #34203 (Wez) 2005-09-03 23:50:25 +00:00
foobar 6bc126681c reorder 2005-09-02 21:13:20 +00:00
foobar bd30309d65 BFN 2005-09-02 21:13:00 +00:00
Andrei Zmievski 0eabbc9f89 Fix bug #34307. We were not calling on_modify handler to set the default
value in case setting the one from .ini file failed.
2005-09-02 20:51:15 +00:00
Marcus Boerger a8355965bb - MFH Update docu 2005-09-02 19:11:10 +00:00
Ilia Alshanetsky 2b32ff53cd MFH: Resolved bug #34240. 2005-09-02 17:25:16 +00:00
Derick Rethans abcfcd3f2e - MFH: Added date_time_set, date_date_set and date_isodate_set() functions, and
setTime, setDate and setISODate() methods.
2005-09-02 14:58:01 +00:00
foobar 1890173d8c Revert 2005-09-02 14:05:46 +00:00
foobar 8c4d1f6657 MFH 2005-09-02 13:51:47 +00:00
Derick Rethans bb35f045df - MFH: Update timezone database to version "2005m". 2005-09-02 12:32:15 +00:00
Derick Rethans 00566c3949 - MFH: New layout for tz database file. 2005-09-02 11:40:27 +00:00
Derick Rethans 321732227f - Fixed bug #34304 (date() doesn't have a modifier for ISO Week Day). 2005-09-02 09:33:08 +00:00
foobar 170ef60d6f - Moved exts to PECL 2005-09-02 09:14:10 +00:00
foobar 96873fecef it is good idea to return something always 2005-09-02 08:24:14 +00:00
Dmitry Stogov 6319efa013 Fixed bug #34260 (Segfault with callbacks (array_map) + overloading) 2005-09-02 07:47:28 +00:00
Rob Richards 44840ace8e MFH: Fix key length so params passed by array can be retrieved by getParameter() 2005-09-02 06:38:02 +00:00
foobar a4673bd7b7 Fix test (week numbers below 10 are zero-prefixed now) 2005-09-02 05:17:42 +00:00
Ilia Alshanetsky 5f8809907a MFH: Fixed bug #34331 (php crashes when variables_order is empty). 2005-09-01 19:15:19 +00:00
foobar 64cfbf539f MFH: - Fixed bug #34307 (OnUpdateStringUnempty INI options can be set empty) 2005-09-01 14:44:15 +00:00
George Schlossnagle 248c30dad7 MFH. Protect against underflow - refs http://pecl.php.net/bugs/bug.php?id=5193 2005-09-01 14:44:11 +00:00
foobar 1978e9109f MFH 2005-09-01 14:33:47 +00:00
Wez Furlong 41901d127c portability fix (for solaris) 2005-09-01 13:59:03 +00:00
Dmitry Stogov 4f161fe289 Fixed bug #34137 (assigning array element by reference causes binary mess) 2005-09-01 13:21:37 +00:00
Dmitry Stogov 7fda1750f1 MFH 2005-09-01 13:03:00 +00:00
Derick Rethans 9057102e6e - MFH: Fixed bug #33414 (Comprehensive list of incorrect days returned after
strtotime() / date() tests).
2005-09-01 12:42:39 +00:00
Dmitry Stogov e615889d6b Fixed bug #34277 (array_filter() crashes with references and objects) 2005-09-01 12:00:37 +00:00
foobar 5253ea11de NSF 2005-09-01 11:59:47 +00:00
Dmitry Stogov 40f971b5b6 Fixed bug #34310 (foreach($arr as $c->d => $x) crashes) 2005-09-01 10:54:38 +00:00
Dmitry Stogov 248345d920 Support for class constants and static members for internal classes 2005-09-01 10:05:32 +00:00
foobar 655cb3aaf7 MFH 2005-09-01 08:25:52 +00:00
Ilia Alshanetsky 156a899e4a MFH: Fixed bug #34001 (pdo_mysql truncates numberic fields at 4 chars) 2005-09-01 01:57:01 +00:00
foobar 28796e9aa6 Fixed bug #34323 2005-08-31 22:28:55 +00:00
Rob Richards ab78a63357 MFH: make sxe_properties_get respect namespace scope 2005-08-31 17:00:46 +00:00
foobar 2ec2739c19 Update credits 2005-08-31 14:59:20 +00:00
foobar b08c3d880e - Moved ext/oracle to PECL 2005-08-31 14:58:27 +00:00
foobar 307ec8ece4 MFH:- Fixed bug #34306 (wddx_serialize_value() crashes with long array keys) 2005-08-31 14:31:44 +00:00
Derick Rethans 9230473cd3 - Fixed bug #33957 (gmdate('W')/date('W') sometimes returns wrong week number). 2005-08-31 14:29:23 +00:00
foobar d1a4819c09 Added test for bug #34310 2005-08-31 09:16:24 +00:00
Marcus Boerger 7c37c2c37e - MFH run-tests-config.php was never used and now renamed 2005-08-31 07:00:22 +00:00
George Schlossnagle b247dc3418 MFH, fix 34072 2005-08-31 04:06:10 +00:00
Ilia Alshanetsky 43f63e4753 MFH: Fixed bug #32589 (possible crash inside imap_mail_compose() function). 2005-08-30 22:03:29 +00:00
Marcus Boerger 99baa01aac - MFH (missing run-tests2.php rename part) 2005-08-30 18:44:07 +00:00
Derick Rethans 0e2491f553 - Fixed bug #34302 (date('W') do not return leading zeros for week 1 to 9). 2005-08-30 09:17:09 +00:00
Marcus Boerger cf39bec447 - BFN 2005-08-30 07:34:57 +00:00
Dmitry Stogov 7230be4951 Fixed possible memory leak 2005-08-30 07:22:23 +00:00
Ilia Alshanetsky ba38b8a9c9 Mark pspell as working 2005-08-29 23:32:59 +00:00
Sara Golemon 5fc9d15692 MFH: allocate_new_resource() handles the malloc() for us. Don't leak by mallocing twice. 2005-08-29 22:05:25 +00:00
foobar 805ca9c51f MFH 2005-08-29 14:46:17 +00:00
Ilia Alshanetsky f02aa075cb Upgraded bundled SQLite library for PDO:SQLite to 3.2.5 2005-08-28 16:54:26 +00:00
Ilia Alshanetsky c6aae12cc1 Upgraded bundled SQLite library for PDO:SQLite to 3.2.5 (step 1) 2005-08-28 16:53:27 +00:00
Rob Richards 3a21310f37 BFN 2005-08-28 16:23:48 +00:00
Rob Richards 1b02f3ec31 MFH: Fixed bug #34276 (setAttributeNS doesn't work with default namespace)
Add test
2005-08-28 16:23:25 +00:00
foobar 2b53e96832 Nuke misinformation 2005-08-28 01:10:17 +00:00
foobar 11eeb0c3ac This is no longer required 2005-08-28 01:10:00 +00:00
foobar 0c4867144a - Fixed bug #34284 (CLI phpinfo showing html on _SERVER["argv"]) 2005-08-28 01:03:41 +00:00
foobar 5dd6467bd0 MFH 2005-08-28 00:46:36 +00:00
Marcus Boerger a596d53131 - MFH 2005-08-26 15:35:47 +00:00
Derick Rethans b842d8e3d8 - MFH: Fixed a bug where stream_get_meta_data() did not return the "uri"
element for files opened with tmpname().
2005-08-26 12:56:07 +00:00
Ilia Alshanetsky 980b9be4b4 Fixed bug #34214 (base64_decode() does not properly ignore whitespace) 2005-08-26 03:32:31 +00:00
Rob Richards 293beeb74a MFH: Fix URI escaping 2005-08-26 02:29:56 +00:00
Marcus Boerger 2e4c7dbb03 _ MFH 2005-08-25 22:06:52 +00:00
Marcus Boerger ce6abe492c - MFH Fixed bug #34257 (lib64 not handled correctly in ming extension). 2005-08-25 22:02:29 +00:00
foobar 4f89b2e0cb Fix crash with e.g. stream_get_meta_data() 2005-08-25 12:25:10 +00:00
Derick Rethans d3326d5b26 - MFH: Fixed bug #34087 for real.
- MFH: Windows compile fixes.
2005-08-25 09:47:28 +00:00
Ilia Alshanetsky 30b14ee8e9 MFH: Remainder of the 34191 bug fix. 2005-08-24 16:19:57 +00:00
foobar e96c51a175 PCRE lib is 6.2 2005-08-24 14:48:57 +00:00
Derick Rethans 164b4ad4dd MFH:
- Fixed bug #34087 (strtotime() does not work with date format "Y/m/d").
- Make use of YYMAXFILL.
- Added support for using a . as hour/minute/second separator.
2005-08-24 13:39:34 +00:00
Dmitry Stogov da4096c210 Fixed boolean encoding (from 0/1 to false/true) to support some buggy soap SDKs.
Fixed support for missing nillable elements of sequnces.
2005-08-24 11:46:11 +00:00
Dmitry Stogov 19dc0411f7 Fixed return-by-reference from internal functions 2005-08-24 10:41:06 +00:00
Johannes Schlüter 9e0ed1cb67 - MFH: Fix alphabetic order and add missing class 2005-08-24 10:17:43 +00:00
foobar 82d8cfb681 MFH 2005-08-23 21:40:26 +00:00
Ilia Alshanetsky 31dcd92f46 removed unused vars 2005-08-23 15:16:02 +00:00
Greg Beaver ae8a3a0f9e sync with PEAR 1.3.6 2005-08-22 22:09:54 +00:00
Greg Beaver de247c88cd add XML_RPC 1.4.0 2005-08-22 22:06:27 +00:00
Greg Beaver e5c570997e move Archive_Tar 1.3.2 => 1.3.1
1.3.2 does not exist
2005-08-22 21:51:15 +00:00
Ilia Alshanetsky b8cc3a9c32 MFH: Make dba extension support BerkleyDB 4.3. 2005-08-22 19:59:28 +00:00
Stanislav Malyshev 33df597531 fix crash if throw attempted outside of executable code 2005-08-22 13:26:33 +00:00
Ilia Alshanetsky daa209297d MFH: Fixed bug #34191 (ob_gzhandler does not enforce trailing \0). 2005-08-21 16:03:21 +00:00
Greg Beaver f4eb5095a6 add checks for extensions that must be loaded 2005-08-20 18:31:29 +00:00
Pierre Joye f7ef84c32d - fix bad revert and make the xmlrpc ext detections fallback
forgot that 5.1 still has pear in its branche
2005-08-18 21:29:28 +00:00
Wez Furlong b31ff96be9 Add ext to the include path. 2005-08-18 20:17:50 +00:00
Ilia Alshanetsky 3b329a9926 MFH: Fixed bug #34156 (memory usage remains elevated after memory limit is
reached);
2005-08-18 15:14:12 +00:00
Antony Dovgal 4e798f6e02 MFH: fix memleak 2005-08-18 15:13:45 +00:00
foobar 9477097564 MFH: Nuked EOLs from error messages 2005-08-18 13:34:41 +00:00
foobar 75d362225c MFH 2005-08-18 12:54:44 +00:00
foobar 286d53397a MFH 2005-08-18 12:40:41 +00:00
foobar a23aec662c MFH: nuked eol from error message 2005-08-18 12:34:22 +00:00
Ilia Alshanetsky e134382a71 MFH: Fixed bug #33987 (php script as ErrorDocument causes crash in Apache 2). 2005-08-18 01:14:42 +00:00
Greg Beaver 94c7fd0603 add return by ref from PEAR::raiseError 2005-08-17 21:48:46 +00:00
Greg Beaver 1dd48ca039 re-enable XML_RPC 1.4.0 2005-08-17 21:30:46 +00:00
foobar f286018dd0 MFH 2005-08-17 17:03:52 +00:00
foobar 617716b171 BFN 2005-08-17 16:56:20 +00:00
Ilia Alshanetsky 690f2ab5ed Added test for bug #34087 2005-08-17 15:31:57 +00:00
Dmitry Stogov 976edd47e2 Fixed bug #32981 (ReflectionMethod::getStaticVariables() causes apache2.0.54 seg fault) 2005-08-17 11:54:34 +00:00
foobar 5516735c88 MFH 2005-08-17 07:54:07 +00:00
Zeev Suraski cf1b4cf673 Introduce SoapClient::__setSoapHeaders() 2005-08-17 07:04:16 +00:00
Marcus Boerger e8b05734be - Prevent E_STRICT from ending up as exception 2005-08-16 18:10:34 +00:00
Ilia Alshanetsky 5610ad29e3 MFH: Fixed bug #34148 (+,- and . not supported as parts of scheme). 2005-08-16 14:20:41 +00:00
Zeev Suraski 23d4f9882f Go back to dev 2005-08-16 12:01:42 +00:00
Edin Kadribasic ca24e21972 Rebundle XML_RPC in the correct version for the Windows distro. 2005-08-16 11:35:45 +00:00
Zeev Suraski 2c6d0f8c48 Roll RC1 2005-08-16 10:59:56 +00:00
Dmitry Stogov 496bc9fce3 Fixed memory leak 2005-08-16 10:49:25 +00:00
Edin Kadribasic d327027ea9 Use free() instead of PQfreemem() to maintain compabitibility with older
PostgreSQL client libraries (bug #33813).
2005-08-16 09:55:44 +00:00
Ilia Alshanetsky 81b6d3e725 MFH: Input validation part 2. 2005-08-16 00:25:39 +00:00
Ilia Alshanetsky 9711fbace9 Chunk the output 2005-08-15 23:23:40 +00:00
Rob Richards a47eec0754 BFN 2005-08-15 17:14:35 +00:00
Rob Richards 8bdc4285aa MFH: Fixed bug #34103 (line numbering not maintained in dom document) 2005-08-15 17:13:57 +00:00
Ilia Alshanetsky bbd37d99e1 MFH: input validation. 2005-08-15 16:01:53 +00:00
Johannes Schlüter 0d993d2172 - Fix tab-completion for constants. 2005-08-14 13:07:15 +00:00
Wez Furlong 812c1e0475 MFH, compiler detection 2005-08-12 20:08:14 +00:00
foobar e46cd60d89 - Fixed bug #33326 (Cannot build extensions with phpize on Macosx). 2005-08-12 15:15:17 +00:00
Dmitry Stogov a0d479994f Fixed typo (ZVAL_LONG() -> ZVAL_DOUBLE()) 2005-08-12 14:56:59 +00:00
foobar b31f168184 - Fixed bug #34097 (configure failed to initize RE2C="exit 0;" when re2c is not found) 2005-08-12 13:53:27 +00:00
foobar 54df2c9d36 no DOS EOLs! 2005-08-11 23:53:59 +00:00
foobar 4ddaf76efc - Fixed test 2005-08-11 23:51:35 +00:00
foobar 417f113940 MFH 2005-08-11 23:45:22 +00:00
foobar 0941045fcc MFH 2005-08-11 23:05:34 +00:00
foobar e274f52bbf - Regenerated. 2005-08-11 22:36:47 +00:00
foobar 2f594ec2b3 BFNS 2005-08-11 22:34:10 +00:00
Marcus Boerger 6c87db9e99 - And this is version 5.1 2005-08-11 21:41:30 +00:00
Antony Dovgal 974adb419a BFN 2005-08-11 21:21:31 +00:00
Antony Dovgal 565c7708ca fix #34078 (Reflection API problems in methods with boolean or null default values) 2005-08-11 21:16:20 +00:00
Marcus Boerger 256e6e3350 - MFH creadits to Johannes 2005-08-11 20:45:58 +00:00
Rasmus Lerdorf c792839d8f Remove pear/XML_RPC dependency for the pear installer
PEAR guys, please doublecheck this.
2005-08-11 16:43:26 +00:00
Frank M. Kromann 9aa81a786b Revert the last patch so we can release PHP 5.1 2005-08-11 03:54:06 +00:00
Rasmus Lerdorf ba8cfb4a93 Minor consistency cleanup 2005-08-10 23:33:10 +00:00
Ilia Alshanetsky 2a37a0c495 MFH: Fixed bug #34068 (Numeric string as array key not cast to integer in
wddx_deserialize()).
2005-08-10 22:45:31 +00:00
Dmitry Stogov daba35fead Fixed bug #34062 (Crash in catch block when many arguments are used) 2005-08-10 13:11:05 +00:00
Dmitry Stogov ebd4ab4d78 Fixed bug #25359 (array_multisort() doesn't work in a function if array is global or reference) 2005-08-10 12:02:52 +00:00
Dmitry Stogov 779e6d203e Fixed bug #34064 (arr[] as param to function in class gives invalid opcode) 2005-08-10 10:39:55 +00:00
Marcus Boerger 3bc9bc5de8 - MFH estrdup/strndup change (as hinted by Andi) 2005-08-10 08:36:46 +00:00
Dmitry Stogov 54931f5259 Fixed bug #33940 (array_map() fails to pass by reference when called recursively) 2005-08-10 08:22:01 +00:00
Dmitry Stogov 96d755978c Fixed bug #29253 (array_diff with $GLOBALS argument fails) 2005-08-10 07:43:07 +00:00
Dmitry Stogov f0f1557998 Fixed bug #34045 (Buffer overflow with serialized object) 2005-08-10 06:37:19 +00:00
Dmitry Stogov 1a29376c07 Fixed test file (.inc.php -> .php) 2005-08-10 06:10:04 +00:00
Andi Gutmans 995c3002aa - This didn't end up being included 2005-08-09 22:23:01 +00:00
Marcus Boerger 1c7eb15eea - MFH: PEAR uses .php not .inc.php (as discussed with Andi) 2005-08-09 21:13:04 +00:00
Derick Rethans d55f456497 - MFH:
- Fixed TSRM issue.
	- Added guessed timezone to phpinfo() output.
	- Initialize is_dst in some cases.
	- Corrected some test cases.
2005-08-09 21:10:22 +00:00
Sebastian Bergmann 96dfe589fe Sync with config.m4. 2005-08-09 06:25:24 +00:00
Andi Gutmans eeecc8a015 - No release today. Found a critical bug... 2005-08-09 05:40:56 +00:00
Andi Gutmans 01d8e59d3b - RC1 2005-08-09 05:08:59 +00:00
SVN Migration 4571221d8e This commit was manufactured by cvs2svn to create branch 'PHP_5_1'. 2005-08-08 23:59:05 +00:00
Andrei Zmievski e623e5352d Upgrade to PCRE version 6.2.
# Don't worry, upgrade for other branches is coming
2005-08-08 23:59:04 +00:00
Frank M. Kromann 1a7524d7c6 Make sure this works for multiple results as well 2005-08-08 23:09:06 +00:00
Frank M. Kromann 0030ec7f4e Remove debug code and optimize a bit 2005-08-08 22:55:56 +00:00
Magnus M��tt� 1b31cbdf1a makedev is a macro on several systems. 2005-08-08 21:44:58 +00:00
Frank M. Kromann 52e03bc612 News entry for Fix #32010 2005-08-08 21:35:03 +00:00
Frank M. Kromann 030542c238 Fix #32010. Leak in mssql_fetch_batch(). 2005-08-08 21:32:18 +00:00
foobar 2e4d679629 BFNSF 2005-08-08 18:07:07 +00:00
Hartmut Holzgraefe 4ad526693c finally!
cd some_extension
  phpize
  configure
  make
  make test # <<< THIS WORKS!!! :)
2005-08-08 17:57:35 +00:00
Hartmut Holzgraefe d4fd9a58cf put the -d extension loading options in the right place,
get rid of basename
2005-08-08 17:49:32 +00:00
foobar 98f245e5f9 Fix cleanup 2005-08-08 16:58:12 +00:00
foobar 000a9e3015 - Fixed problem with -dextension=foobar.so not having it's MINIT run. 2005-08-08 16:49:44 +00:00
Ilia Alshanetsky 919b0bd5b4 Adjust date("") handling. 2005-08-08 16:49:30 +00:00
foobar ee5fd96e37 - Made it possible to do "make test" for phpized extensions 2005-08-08 16:06:49 +00:00
foobar 0f2986fe9d - Show the dependancy name we could not find (req_mod is null here when it is not found :) 2005-08-08 14:25:05 +00:00
Dmitry Stogov c9103e18b0 Automatic encoding/decoding of hexbin data type (base64 support is improved) 2005-08-08 09:53:58 +00:00
Hartmut Holzgraefe 621238a3c3 fix extension loading from command line, resources didn't work
(still related to Bug #33899)
2005-08-08 08:45:33 +00:00
9a469dadd5 ChangeLog update 2005-08-08 05:39:44 +00:00
foobar 34f1c973a9 BFN 2005-08-07 22:09:06 +00:00
foobar df5cfe27b4 - Fixed bug #29334 (mail() provides incorrect message time header) 2005-08-07 22:06:29 +00:00
foobar 757a76df3f Missing entry 2005-08-07 21:00:28 +00:00
Hartmut Holzgraefe 3052233876 configure.in scripts/Makefile.frag scripts/phpize.in 2005-08-07 20:47:29 +00:00
Ilia Alshanetsky c59d0aeb0a Update todo. 2005-08-07 18:33:45 +00:00
Hartmut Holzgraefe 47ae4b0cb9 typo fix 2005-08-07 15:13:50 +00:00
foobar c1fee15561 This test failed because libxml versions differ.. 2005-08-07 14:22:10 +00:00
Derick Rethans 46854447c5 - Fix skip-if comment. 2005-08-07 12:48:31 +00:00
ae7ba4bf58 ChangeLog update 2005-08-07 05:35:13 +00:00
Pierre Joye a26f8ca351 - each file needs a role
NB: "Fix" 1.4 to do what 1.3 does
2005-08-07 00:50:36 +00:00
Pierre Joye e451fb4a42 - add package2.xml 2005-08-06 23:31:12 +00:00
Pierre Joye b345d31ffd - prepare release 2005-08-06 23:30:50 +00:00
Edin Kadribasic 017df4e790 Mention new library bundle on windows 2005-08-06 23:30:49 +00:00
Pierre Joye b80eaf1721 - fix examples 2005-08-06 23:09:29 +00:00
foobar 97d493effb BFN 2005-08-06 22:31:43 +00:00
Edin Kadribasic 6e5ddd7b30 Only link zlib if we dont compile it in (#3406) 2005-08-06 22:20:06 +00:00
Edin Kadribasic 36cc9d0d42 Add missing export 2005-08-06 22:18:41 +00:00
Rob Richards c47f0cc73b fix tests 2005-08-06 18:23:40 +00:00
Andrey Hristov f25c366a73 add a comment 2005-08-06 16:56:42 +00:00
Andrey Hristov 313ff9998e add error checking 2005-08-06 16:38:48 +00:00
Andrey Hristov dcc18b6d6f fix problem on 64 bit - when asking for "l" supply long not int because
on 64 bit they differ and zend_parse_parameters makes a *(long*) cast
which means that if the variable is int 4 bytes of the variable(s)
declared before it (on the stack) will be overwritten. In this case
this is the length of the query -> made 0 and mysqli_query() returns
FALSE.
2005-08-06 16:15:53 +00:00
Frank M. Kromann 7675a85828 Fix for #32531
No need to alias these functions on windows or if the mssql extension is compiled. This change will allow the use of both extensions at the same time.
2005-08-06 05:42:51 +00:00
2f4ee2fc86 ChangeLog update 2005-08-06 05:37:51 +00:00
Frank M. Kromann 806961aeee Cleanup to match the current cvs version of ming0.3beta 2005-08-06 05:30:20 +00:00
foobar 91860cf594 No HTML output if html_errors is off (bug #34006) 2005-08-05 22:37:48 +00:00
foobar 894237d531 Fix compile failure with GCC 4.0.x 2005-08-05 22:28:23 +00:00
foobar 8864ad2606 - This ini option is only effective when set in php.ini or httpd.conf
or .htacces, etc. as GPC variables are set before any ini_set() is called
2005-08-05 21:44:26 +00:00
foobar 4b0c39887c - Fixed bug #34015
# Whatever this test was supposed to try to test...sheesh..
2005-08-05 20:38:50 +00:00
Anantha Kesari H Y 9270751a7f NetWare specific stat structure issues.
--Kamesh
2005-08-05 14:03:57 +00:00
Dmitry Stogov 32d69c853a Fixed bug #33996 (No information given for fatal error on passing invalid value to typed argument) 2005-08-05 09:35:09 +00:00
foobar 3982f722c2 Skip test on solaris 2005-08-05 09:19:43 +00:00
Dmitry Stogov c10d6d3c89 Fixed bug #33999 (object remains object when cast to int) 2005-08-05 09:02:14 +00:00
foobar d77c684c42 - Changed -a to -A to prevent enabling PHP in httpd.conf automatically.
# Most distributions use separate file in a conf.d/ directory to enable
# PHP, using -a would add unnecessary line in the main httpd.conf and
# causes a warning during startup.
2005-08-05 08:14:54 +00:00
Dmitry Stogov a744a6feb5 Fixed memory leak in foreach() on undefined variable (Zend/tests/foreach_undefined.php) 2005-08-05 06:29:46 +00:00
85d77d8cea ChangeLog update 2005-08-05 05:40:03 +00:00
Wez Furlong 7ba278b7b2 test -e doesn't work on solaris 2005-08-04 16:57:15 +00:00
Derick Rethans f3d9a1adbd - Update TODO 2005-08-04 14:59:29 +00:00
Antony Dovgal b87970a956 add test for the last Dmitry's fix 2005-08-04 14:12:07 +00:00
Dmitry Stogov aafc593eb5 Fixed possible memory corryption during compilation of <?php foreach($a as $b); ?> 2005-08-04 14:04:36 +00:00
Dmitry Stogov 98e70ab585 Fixed bug #33989 (extract($GLOBALS,EXTR_REFS) crashes PHP) 2005-08-04 10:34:39 +00:00
Dmitry Stogov 23e4102e95 Fixed clone bug in ze1_compatibilty mode 2005-08-04 08:36:54 +00:00
3887a6e835 ChangeLog update 2005-08-04 05:49:41 +00:00
Ilia Alshanetsky ecc34bddcc Fixed memory leak. 2005-08-03 18:26:16 +00:00
foobar 23e671a51e - Bumber up year 2005-08-03 14:08:58 +00:00
foobar ce32c4ece7 update credits 2005-08-03 13:47:34 +00:00
foobar 916815b779 Bump up the year 2005-08-03 13:30:58 +00:00
foobar b732622dfa Nuked DOS EOLs 2005-08-03 13:29:00 +00:00
foobar b711486feb Bump up year 2005-08-03 13:28:14 +00:00
foobar 20241fe16a - 2004 -> 2005 2005-08-03 11:12:19 +00:00
d1623186d5 ChangeLog update 2005-08-03 05:36:05 +00:00
Derick Rethans ef28855f4e - Fix test. 2005-08-02 21:16:05 +00:00
Hartmut Holzgraefe 46a669b7fa make skipif test use ini options specified by -d command line options 2005-08-02 17:05:01 +00:00
Dmitry Stogov 650cdaed12 Fixed bug #33942 (the patch to #33156 crash cygwin except cli) 2005-08-02 17:01:17 +00:00
Ilia Alshanetsky 990f7043d9 Fixed bug #33958 (duplicate cookies and magic_quotes=off may cause a crash) 2005-08-02 17:01:05 +00:00
foobar 9f6e05964f - Fixed bug #33967 (misuse of Exception constructor doesn\'t display errorfile) 2005-08-02 16:31:53 +00:00
foobar 3593a55341 fix test when include_path does NOT have . in it 2005-08-02 15:13:21 +00:00
Dmitry Stogov b529831df8 Removed warnings 2005-08-02 12:11:55 +00:00
Dmitry Stogov c9571d7786 Fixed ZTS build 2005-08-02 11:15:42 +00:00
foobar 71df205907 BFN 2005-08-02 06:33:51 +00:00
cc3ceea197 ChangeLog update 2005-08-02 05:39:06 +00:00
Marcus Boerger cf7089972f - Need to expose this one too 2005-08-02 02:20:01 +00:00
Marcus Boerger fb5f1b7fad - Update version info 2005-08-02 00:00:41 +00:00
Edin Kadribasic 88fcc4859f Allow building gd on windows systems without t1lib (M. Sisolak) #33620 2005-08-01 21:57:09 +00:00
Edin Kadribasic d8cf02edb3 Allow building against the latest cclient 2005-08-01 20:55:31 +00:00
Dmitry Stogov 1066066436 Allow SOAP work when allow_url_fopen is turned off. 2005-08-01 11:38:02 +00:00
Dmitry Stogov cf6bb99723 Fixed bug #33723 (php_value overrides php_admin_value) 2005-08-01 07:46:54 +00:00
Derick Rethans a5efa0d4c3 - Fixed testcase. 2005-08-01 07:38:20 +00:00
560ac37280 ChangeLog update 2005-08-01 05:39:34 +00:00
foobar a78730c257 Added test for bug #27908 2005-07-31 21:59:01 +00:00
foobar ac19a759b6 - Fix test. 2005-07-31 21:18:16 +00:00
foobar 57be0d2ed7 fix test 2005-07-31 20:36:48 +00:00
Rob Richards 0cbcd08e7c SystemID and publicID params reversed in declaration handlers 2005-07-31 17:14:13 +00:00
Sebastian Bergmann f6ec1b481e Update TODO. 2005-07-31 16:40:49 +00:00
Ilia Alshanetsky 4f4f52d8b0 Update todo 2005-07-31 16:37:42 +00:00
ef11786501 ChangeLog update 2005-07-31 05:37:31 +00:00
foobar be10050d8f Added test for bug #25359 2005-07-30 13:37:57 +00:00
3c8d91f558 ChangeLog update 2005-07-30 05:37:45 +00:00
Wez Furlong 8fdec883ab switch to ansi declaration so that vs.net 2005 groks it. 2005-07-29 23:31:59 +00:00
Ilia Alshanetsky 4b935b9a8a Fixed sqlite build, sqlite3.h was not being correctly generated. 2005-07-29 20:41:52 +00:00
Ilia Alshanetsky 1564872062 Backport of libsqlite fix in relation to AS keyword. 2005-07-29 19:48:52 +00:00
foobar 0bb094e52b - Fixed bug #33837 (Informix ESQL version numbering schema changed) 2005-07-29 19:41:01 +00:00
Marcus Boerger ea71e02c7a - Add ENV support (mike) 2005-07-29 17:25:38 +00:00
Ilia Alshanetsky 70f72d39e4 Fixed warning message generated when isset() or empty() are given invalid
offset type.
2005-07-29 16:27:32 +00:00
Ilia Alshanetsky 22db404132 Fixed bug #33904 (input array keys being escaped when magic quotes is off). 2005-07-29 15:43:37 +00:00
foobar f66d5f0cc5 - Fixed few logic errors in php*.ini search path creation as documented here:
http://fi.php.net/manual/en/configuration.php#configuration.file

#
# Before this patch:
#
# $ strace php -r 'echo 1;' 2>&1 | grep php.ini
# open("/www/php/lib/php.ini", O_RDONLY)  = 3
# lstat64("/www/php/lib/php.ini", {st_mode=S_IFREG|0640, st_size=46264, ...}) = 0
#
# With this patch:
#
# $ strace php -r 'echo 1;' 2>&1 | grep php.ini
# open("./php.ini", O_RDONLY)             = -1 ENOENT (No such file or directory)
# open("/usr/src/php5_1_full/sapi/cli/php.ini", O_RDONLY) = -1 ENOENT (No such file or directory)
# open("/www/php/lib/php.ini", O_RDONLY)  = 3
# lstat64("/www/php/lib/php.ini", {st_mode=S_IFREG|0640, st_size=46264, ...}) = 0
#
2005-07-29 14:29:27 +00:00
foobar b325b340b7 - Fixed bug #33899 (CLI: setting extension_dir=some/path extension=foobar.so does not work) 2005-07-29 13:25:33 +00:00
foobar a5c41b2c8e - Fixed bug #33917 (number_format() output with > 1 char separators) 2005-07-29 12:58:25 +00:00
foobar 4b0cdf8cd4 fix VPATH builds 2005-07-29 09:50:15 +00:00
Anantha Kesari H Y 3e3d9e941e In NetWare few of the programs like apache2 and ldap use winsock inclusinf sys/socket.h is not desirable.
--Kamesh
2005-07-29 09:20:32 +00:00
97c460c813 ChangeLog update 2005-07-29 05:38:30 +00:00
foobar 49787c93be update generated file 2005-07-29 00:22:02 +00:00
Ilia Alshanetsky a2c0f11235 news file tinkering 2005-07-28 23:21:34 +00:00
Andi Gutmans 9c392835de - Tiny fixlet 2005-07-28 21:39:57 +00:00
Marcus Boerger 0b34e041e3 - Before we later run into BC trouble we split flags into two params mode
and flags now before branching for 5.1.
2005-07-28 21:09:02 +00:00
Marcus Boerger d608181dc7 - Allow static loader functions (but only for 5.1.1 as discussed with Andi) 2005-07-28 20:59:44 +00:00
Marcus Boerger 53e5260662 - Add convenience function zend_is_callable_ex() and base zend_is_callable
and zend_make_callable on it. This functions allows to check if a php
  variable is a callable function and returns its function pointer as well
  as object if possible.
# Commit this now so we can use it in 5.1.* series as discussed with Andi.
2005-07-28 20:55:50 +00:00
Anantha Kesari H Y 0a89e44ed7 NetWare cleanup
--Kamesh
2005-07-28 09:44:13 +00:00
Anantha Kesari H Y 83b5eb54c4 defined EX_OK and EX_TEMPFAIL in ext/standard/mail.c for NETWARE rather than including a sysexits.h.
-Kamesh
2005-07-28 09:41:34 +00:00
Anantha Kesari H Y e78ea8251a Cleaned up the NetWare code.
--Kamesh
2005-07-28 09:40:50 +00:00
1de8a4c08c ChangeLog update 2005-07-28 05:32:06 +00:00
Marcus Boerger a935b06236 - Fix issues with iterators and excpetions
# update documentation
#
# In 5.2 we need to implement an event handler onException() to be invoked
# on exceptions during getChildren() calls. Its default implementation
# would simply rethrow the exception if the flag is not set and delete if
# if it was set. To do so the exceptions refcount needs to be increased
# before calling zend_clear_exception() to keep the exception alive but
# clear the control information.
#
# As a side note this is alos the easy solution to allow multi exception
# handling: Simply clear the engine's exception info and add a property
# called $previousException to the base exception and assign it from the
# already pending one.
2005-07-27 22:19:01 +00:00
Hartmut Holzgraefe b3685eef5a news entry for bug #33882 fix 2005-07-27 21:21:05 +00:00
foobar 7f1e8292d7 ws 2005-07-27 15:24:36 +00:00
Antony Dovgal 98694f919c ws fix 2005-07-27 15:16:14 +00:00
Hartmut Holzgraefe 882cb200cc edge case: do not remove trailing slash for root directory (Bug #33882) 2005-07-27 15:13:50 +00:00
Hartmut Holzgraefe 7e071d9a1f php.ini search logic needs to use the absolute path of the running binary
when looking for php.ini in the directory the php binary is installed in
2005-07-27 15:12:18 +00:00
Ilia Alshanetsky 3674649c59 Fixed bug #32139 (SOAP client does not auto-handle base64 encoding). 2005-07-27 14:52:52 +00:00
Wez Furlong bf85bf515e add sanity checks 2005-07-27 14:18:01 +00:00
Wez Furlong a6f0d99e5b fixup the build in HEAD again... moved the maintainer only stuff out of the
config.m4 and into a separate script to make it cleaner
2005-07-27 11:53:00 +00:00
Anantha Kesari H Y 594dadf9ae configure.in
moved the PHP_OS and PHP_UNAME definitions near the place other oses define them currently it is ggeting redined to build machine values when ./configure script is generated using autoconf version 2.13 but works fine with autoconf 2.51.
Defining the default EXTENSION_DIR for NetWare

--Kamesh
2005-07-27 11:48:14 +00:00
bed55bd176 ChangeLog update 2005-07-27 05:38:07 +00:00
Wez Furlong b87c4b6abe typo 2005-07-27 04:20:50 +00:00
Wez Furlong 32cf3cc19f Yes, I can't count the months, and no, I'm not related to Ilia. 2005-07-27 04:07:44 +00:00
Wez Furlong dcac8e1a44 Prep for PECL release.
Fixup config.m4 to work properly under a pear tool vpath build
# seems strange that it was so badly broken... did something major change?
2005-07-27 04:07:11 +00:00
Wez Furlong 9b73ab50b6 Add support for instant client 10.1.0.4.
Theoretically also add support for 10.2 libraries.
Prep for PECL release.
2005-07-27 03:48:08 +00:00
Wez Furlong eab79e8de6 prep for pecl release 2005-07-27 03:22:03 +00:00
Wez Furlong 73d7fb493c Add package.xml 2005-07-27 03:13:05 +00:00
Wez Furlong f7c0b7d09e prep for PECL release 2005-07-27 03:12:43 +00:00
Wez Furlong ba77f8515b prep for PECL release 2005-07-27 02:51:01 +00:00
Wez Furlong 163c92510a Prep for PECL release 2005-07-27 02:39:46 +00:00
Ilia Alshanetsky 2d920f6848 Only set authorizer if we intend to use it (safe_mode or open_basedir). 2005-07-27 02:35:37 +00:00
Ilia Alshanetsky 86d81fd743 Fixed bug #33869 (strtotime() problem with "+1days" format). 2005-07-26 22:29:27 +00:00
Ilia Alshanetsky f2874cf737 Fix for bug #33869 2005-07-26 22:22:06 +00:00
foobar 2a8cd27f4e bug #33865 2005-07-26 18:33:15 +00:00
Anantha Kesari H Y a29793c4d2 NetWare can make use of autoconf based build
--Kamesh
2005-07-26 13:12:02 +00:00
3a5eca2bae ChangeLog update 2005-07-26 05:32:16 +00:00
Ilia Alshanetsky b77cefd588 Updated URL leading to latest aspell. 2005-07-25 22:53:01 +00:00
Rasmus Lerdorf 884c97d4d7 MFB fix for bug #33690 2005-07-25 22:38:11 +00:00
Rasmus Lerdorf c35454440c I could have sworn I committed this a while ago. Just a tiny NULL safety
check here.
2005-07-25 22:37:35 +00:00
Marcus Boerger 1fad73d13d - Fix #33853
# When a static class function is being called then we first look for the
# class with name unchanged. If the class is then not available it the
# method can never be callable, thus we return 0. If the class is available
# the lowercased name will be broken up into class and function and 1 is
# being returned.
2005-07-25 20:24:11 +00:00
Marcus Boerger e8ea32a789 - Add new test 2005-07-25 20:21:43 +00:00
Marcus Boerger c6018b85c4 - Be flexible about spellbook - we want to test the ext not the spell corrections available 2005-07-25 18:27:41 +00:00
Marcus Boerger ae1fa04899 - Bugfix #33733 2005-07-25 18:04:13 +00:00
Anantha Kesari H Y b1183590e9 ext/standard/fsock.h
Removing redundant inclusion of headers for NetWare

ext/standard/lcg.c
NetWare LibC SDK sys/time.h implicitly includes sys/timval.h so nothing special needed for NetWare here.

--Kamesh
2005-07-25 13:12:10 +00:00
beee0d14a0 ChangeLog update 2005-07-25 05:37:34 +00:00
Ilia Alshanetsky bc80bdb973 Added test for bug #33841. 2005-07-24 17:19:59 +00:00
0a494976c5 ChangeLog update 2005-07-24 05:39:01 +00:00
Ilia Alshanetsky 66125c18a3 Fixed bug #33841 (pdo sqlite driver forgets to update affected column count
on execution of prepared statments).
2005-07-23 23:34:04 +00:00
foobar 63d0774ed6 Removed done stuff 2005-07-23 22:50:35 +00:00
Ilia Alshanetsky 29bf2d3a09 Fixed bug in str_word_count() when charlist if specified and "word" starts
with a character found inside the charlist.
2005-07-23 19:44:13 +00:00
Pierre Joye 9859780570 - fix #33794 imagerotate rotates only CCW
introduced by transparent color patch
2005-07-23 16:41:38 +00:00
84f28ce6c1 ChangeLog update 2005-07-23 05:39:09 +00:00
foobar 03897956b2 revert fix that did not fix anything 2005-07-22 22:00:55 +00:00
Yasuo Ohgaki 813bd67320 fix build with older postgresql 2005-07-22 18:48:14 +00:00
Marcus Boerger d8eece2b43 - Add missing part to make colon in parameter binding optional 2005-07-22 14:31:20 +00:00
Marcus Boerger e4b07b3ebe - Test the colon is optional in binding 2005-07-22 14:27:35 +00:00
Dmitry Stogov 99cb1b8004 $context is not longer passed by reference, so its modification has no effect 2005-07-22 07:34:24 +00:00
Dmitry Stogov 1c82ec11a1 Fixed bug #33802 (throw Exception in error handler causes crash) 2005-07-22 07:33:03 +00:00
b19c520142 ChangeLog update 2005-07-22 05:39:31 +00:00
Wez Furlong cfe1dc3b46 this looks like a much better fix for refcounting/shutdown in lazy objects. 2005-07-22 04:33:56 +00:00
Wez Furlong 882503110d fix leak (ugh, this nuance gets me every time) 2005-07-22 02:09:19 +00:00
Wez Furlong 3560bb9c2b Fixes #33785 for me 2005-07-22 01:34:43 +00:00
Ilia Alshanetsky 3db688c6c9 Added test for PDO_FETCH_LAZY.
# This currently fails, see bug 33785
2005-07-21 19:33:48 +00:00
Marcus Boerger e11fc8bda4 - Fix error generation logic (found by johannes) 2005-07-21 16:52:32 +00:00
Dmitry Stogov 6b5f4da085 Fixed bug with returning from internal function by reference 2005-07-21 13:48:10 +00:00
Derick Rethans 8a3d3aefbb - Changed the year parameter so that 0..69 maps to 2000..2069 and 70..100 maps
to 1970..2000, which was in the original code, but not in the documentation.
2005-07-21 10:09:40 +00:00
Dmitry Stogov e4b1fb6455 Recursion protection 2005-07-21 07:18:02 +00:00
22181d6451 ChangeLog update 2005-07-21 05:32:41 +00:00
foobar 0f3e95b926 there is not much point in putting entries of bugs fixed when bug only existed in CVS and not in any release.. 2005-07-20 23:06:49 +00:00
Ilia Alshanetsky 4b6d351cd3 Missing bit of the previous commits 2005-07-20 16:22:09 +00:00
Dmitry Stogov e07d2f4803 "_local_cert" and "_passphrase" properties moved into "_stream_context".
As a result now it is possible to use certificates during access WSDL files.
2005-07-20 10:21:49 +00:00
Dmitry Stogov 3102638061 Fixed tests 2005-07-20 10:06:10 +00:00
Derick Rethans e6c1ff254d - Fixed bug #33578 (strtotime() problem with "Oct17" format).
- Fixed problems with lone years in strtotime().
- Added functions to timelib to get a list of all abbreviations and timezone
  identifiers.
- Fixed problems with parsed dates that only have GMT offsets associated
  with them.
- Fixed a Windows compile problem.
- Added special constants for different often used date formats (DATE_ISO8601,
  DATE_RFC822, DATE_RSS etc).
- Fixed date_default_timezone_get() to return the guessed timezone if none
  was set yet with date_default_timezone_set().
- Added experimental support for Date/Timezone objects as per specifications.
2005-07-20 08:31:02 +00:00
Marcus Boerger efcfe44299 - Use correct/complete skipif condition 2005-07-20 07:33:19 +00:00
1b31dfb160 ChangeLog update 2005-07-20 05:36:08 +00:00
Wez Furlong ec50ec65b9 use pdo core test suite.
Now passes all but one test.  Volunteers that want to track down the cause
for test pdo_018.phpt not passing are welcome.
2005-07-20 05:27:27 +00:00
Wez Furlong 08891a1c1b some drivers want you to say that its ok to use NULL for these columns. 2005-07-20 05:27:00 +00:00
Ilia Alshanetsky 99d8090cb2 Fixed memory corruption (wrong order of operations of stored prep. stmt).
Optimize the max length calculation process.
2005-07-20 04:30:14 +00:00
Ilia Alshanetsky 97e8c6f4a9 Proper handling for databases that need to pre-calculate length of large
columns, which is not normally done for performance reasons.
2005-07-20 03:38:33 +00:00
Wez Furlong 79f3cb9856 Add PDO_PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT attribute, which, when set
to true, forces the driver to use PDO's own emulated prepared statement
support.

Why would you want that, considering that native prepared statements are
supposed to be the best thing ever?

"Often postgresql will have to plan the query without knowing the parameters -
and it will choose a bad plan.  In some cases it will plan based on the first
parameters you send. "

Ugh.  So now we have a way to let you decide that you know better than the
pgsql query planner.
2005-07-20 02:37:57 +00:00
Ilia Alshanetsky 9438584d76 Only set attribute if result set contains some columns. 2005-07-20 02:36:34 +00:00
Ilia Alshanetsky 1e1d2e2b0d clean up 2005-07-20 02:19:20 +00:00
Wez Furlong 8adbc92d4b this hack can and does segv; let's remove it. 2005-07-20 01:59:14 +00:00
Andrei Zmievski 0e8430bc78 *** empty log message *** 2005-07-20 01:46:02 +00:00
foobar 40a049b27e Skip tests in 64bit systems 2005-07-20 00:18:24 +00:00
foobar dd3d739cc6 fixed skipif to really skip 2005-07-20 00:10:57 +00:00
Marcus Boerger bf75124011 - Add test to verify all ArrayAccess methods can throw 2005-07-19 20:10:37 +00:00
Marcus Boerger b8eb8bc7d5 - Add test to verify all iterator methods can throw 2005-07-19 19:50:11 +00:00
Wez Furlong 3b5af6d43f Remove stale #ifdefs (this is PHP 5 only code).
Add a stream_context option to the SoapClient constructor; this allows
generic stream context options to be set without having to add code to the
SoapClient every time a context option is added.
2005-07-19 19:48:02 +00:00
Marcus Boerger 897090c01e - Dont't warn in case an exception is pending - in this case it'd superflous 2005-07-19 19:46:21 +00:00
Wez Furlong 27c24383ee revert my last change; chasing ghosts.
# the lesson is, ensure that php4 and php5 aren't loaded at the same time
2005-07-19 19:25:33 +00:00
Wez Furlong 546418a66b Don't crash when no treat_data method has been set in the sapi module
# how come no one ran into this before?
2005-07-19 18:59:46 +00:00
Wez Furlong d4348d11dd try to make the test a bit more portable 2005-07-19 16:55:48 +00:00
Wez Furlong 3ebfbe6bd2 this should always be a string here, but just in case, convert it. 2005-07-19 16:55:22 +00:00
Wez Furlong 6e7a8f10d1 if we didn't detect an error, don't return -1 rows, as that means that we found an error 2005-07-19 16:54:51 +00:00
Wez Furlong 43c1a1b73c Closes #33533 by implementing proper dynamic fetching of long text columns. 2005-07-19 15:26:16 +00:00
Dmitry Stogov 7aca138456 Fixed bug #33710 (ArrayAccess objects doen't initialize $this) 2005-07-19 07:33:00 +00:00
a59f50faca ChangeLog update 2005-07-19 05:31:59 +00:00
Wez Furlong e568ea3277 Limit the size of columns to 64K, so we don't try to allocate 2GB for each text
column coming out of informix.

Refs Bug #33533.

Not totally closed yet; still need to cater for text fields longer than 64k in a sane manner.
2005-07-19 03:39:49 +00:00
Brad House 96a273a10d \#if BRAD_0'd latest changes as requested until 5.1.0 release 2005-07-19 00:34:39 +00:00
foobar db138c59d4 MFB4_4: Fix compile problem with --regex=system on some systems 2005-07-18 23:17:24 +00:00
Brad House 936e199d38 sync missing functions from libmonetra-5 2005-07-18 20:10:07 +00:00
Ilia Alshanetsky e77c65f081 Revert cookie patch for BC reasons. 2005-07-18 19:18:03 +00:00
Rasmus Lerdorf ec58143e93 Valgrind is unhappy that this is not initialized 2005-07-18 18:32:36 +00:00
foobar a9cd02c033 fix macro 2005-07-18 17:20:24 +00:00
Dmitry Stogov 70bd938bbd Fixed bug in new module statrup mechanism 2005-07-18 16:20:08 +00:00
foobar e63d1706cf touch with working re2c 2005-07-18 16:08:37 +00:00
Wez Furlong be88f5a960 make a start on a debugging function. 2005-07-18 14:46:55 +00:00
Wez Furlong d9826ec143 touch generated file 2005-07-18 14:44:56 +00:00
Wez Furlong 7f053e062c avoid :: when looking for named parameters.
Refs Bug #33736.
2005-07-18 14:44:14 +00:00
Wez Furlong 4854dd71de this needs to be the column count, otherwise a db->query() that returns 0 rows
will fail rather than returning a statement with no rows.
2005-07-18 14:40:49 +00:00
Wez Furlong 8c57c3a9fe compile before commit (gah!) 2005-07-18 14:12:52 +00:00
Ilia Alshanetsky a6931b3923 Cleanup buffers on handle re-use. 2005-07-18 13:47:33 +00:00
Wez Furlong c4ba9edd57 Apparently our pipe detection code just above this isn't foolproof.
Catch it here.
2005-07-18 13:28:24 +00:00
Dmitry Stogov f90bdf8933 Fixed bug #33558 (warning with nested calls to functions returning by reference) 2005-07-18 07:13:34 +00:00
Dmitry Stogov d7baf87c61 Removed some compilation warnings. 2005-07-18 06:34:42 +00:00
d8415108b4 ChangeLog update 2005-07-18 05:36:08 +00:00
Ilia Alshanetsky 75e6dd1c61 Fixed handling of HTTP requests with multiple Cookie headers. 2005-07-18 04:04:18 +00:00
foobar 8cea6123e9 typo 2005-07-18 01:09:22 +00:00
Frank M. Kromann 890b1602fb Make sure we build with SWFPrebuilt. 2005-07-18 00:42:48 +00:00
Marcus Boerger ef4931f627 - Show end of relay testing block 2005-07-18 00:19:28 +00:00
Marcus Boerger 503330fb88 - Provide distinction and distinct tests 2005-07-18 00:14:54 +00:00
Marcus Boerger 70ec0f41ac - Compatibility with ming 0.2a and 0.3a 2005-07-17 23:58:40 +00:00
Marcus Boerger 62c47d1778 - Write temp file in test dir 2005-07-17 23:58:02 +00:00
Marcus Boerger c1e73b4a67 - Add new test 2005-07-17 20:57:51 +00:00
Ilia Alshanetsky 96fc6717e9 Added missing init. 2005-07-17 19:17:10 +00:00
Marcus Boerger 7316ee0399 - Fix problem with debug mode on selective machines 2005-07-17 18:39:24 +00:00
Marcus Boerger dfeddbe539 - If you ask me both (expat and libxml) are not really accurate about byte
positions and columns...however the line number information is now
  correct for both so for the moment we live with the situation that they
  return different byte and column information.
2005-07-17 17:38:16 +00:00
5d762d93be ChangeLog update 2005-07-17 05:40:10 +00:00
Ilia Alshanetsky 2889c497f5 Added 2 missing cURL options available in all versions. 2005-07-16 18:33:09 +00:00
Anantha Kesari H Y 191c216bea NetWare can make use of the Autoconf based build system 2005-07-16 12:55:45 +00:00
Anantha Kesari H Y c0365c3134 libpq-fs.h this file is of no use 2005-07-16 12:51:58 +00:00
Anantha Kesari H Y d77acff66f main/fopen_wrappers.c
NetWare file names are case insensitive
main/main.c
NetWare has no sendmail binary. It uses the smart host mailing code avaiolable in php distro. Could not find a better place to put this than main/main.c.
-- Kamesh
2005-07-16 12:21:34 +00:00
Anantha Kesari H Y 032d0962c2 Netware pthreads support is good enough. So removing all these fixes of old times.
-- Kamesh
2005-07-16 11:38:40 +00:00
a62e9a01b0 ChangeLog update 2005-07-16 05:36:35 +00:00
George Schlossnagle d0ec239661 Darwin seems to like this much better. 2005-07-15 16:47:48 +00:00
George Schlossnagle 869d6002d6 Darwin seems to like this arrangement much better. 2005-07-15 16:47:12 +00:00
Sara Golemon 67a66b858f Pass context parameter through to xport_create 2005-07-15 15:45:43 +00:00
Anantha Kesari H Y 384a96faf6 ext/standard/file.h NetWare LibC has fnmatch and realpath implemented.
ext/standard/syslog.c Except LOG_SYSLOG other syslog macros are supported by NetWare LibC.
ext/standard/string.c NetWare fix for dirname
-- Kamesh
2005-07-15 12:35:12 +00:00
cdd43e622d ChangeLog update 2005-07-15 05:34:39 +00:00
Ilia Alshanetsky 7d1b4145b1 Fixed compiler warning. 2005-07-14 23:17:16 +00:00
Ilia Alshanetsky 6be7584eba Properly recognize redirect code 303.
When encountering redirect on POST request follow browsers and cURL and
perform GET on the specified location field.
2005-07-14 14:59:16 +00:00
Andi Gutmans bdf2753ee8 - Back to -dev 2005-07-14 14:01:02 +00:00
Andi Gutmans a007ddb190 - Beta 3 2005-07-14 13:44:03 +00:00
8452176fba ChangeLog update 2005-07-14 05:36:27 +00:00
Wez Furlong 8c446726cf Add test case 2005-07-14 02:21:03 +00:00
Wez Furlong fc48f9096d gah! 2005-07-14 02:20:52 +00:00
Wez Furlong d025a14d33 Thanks 'james' (a visitor to my blog) for reporting this bug. 2005-07-14 02:09:54 +00:00
Wez Furlong 695e195a27 keep this as a placeholder for debugging weird regressions 2005-07-14 02:09:08 +00:00
Wez Furlong fbc568013a Add utility for driver-specific tests 2005-07-14 02:08:18 +00:00
Wez Furlong 0601249f82 it is not an error for a statement to return 0 rows.
Andrey: please run the test suite before each commit!
This broke beta 3 and was clearly visible as a result of running the tests.

Running further tests now.
2005-07-14 02:03:54 +00:00
foobar ec940d4d5a - Fixed cacheing bug in PHP_SOCKADDR_SA_LEN macro
- Removed duplicate sa_len check from configure.in
- Unified the sockaddr tests into PHP_SOCKADDR_CHECKS macro
2005-07-14 00:12:26 +00:00
foobar 29894e4446 Fix the re_magic test by adding missing #include <sys/types.h> 2005-07-14 00:08:13 +00:00
Sara Golemon 45f624adc4 Route ftp:// wrapper via transports layer.\nFix typo in datastream crypto startup 2005-07-13 23:28:22 +00:00
Ilia Alshanetsky 85e237888c Fixed bug #33673 (Added detection for partially uploaded files). 2005-07-13 20:44:08 +00:00
foobar bc9bc3972c typofix 2005-07-13 14:34:46 +00:00
foobar df44615339 - Added check whether re_magic exists in struct regex_t
# per Andrei's request
2005-07-13 14:33:38 +00:00
foobar 917eefc3ff fix typo 2005-07-13 08:20:32 +00:00
foobar ada35ab562 fixed typos 2005-07-13 07:04:29 +00:00
2f390c25d8 ChangeLog update 2005-07-13 05:35:44 +00:00
Andi Gutmans be8fe97cb4 - Update Beta 3 date 2005-07-12 20:40:11 +00:00
Antony Dovgal 502b00c3f6 add forgotten ifdefs, fix #33667 (mysqli doesn't compile) 2005-07-12 20:38:34 +00:00
Andi Gutmans 2fdbd380ba - Update News 2005-07-12 20:25:48 +00:00
Andi Gutmans f030fe2f3a - Back to -dev 2005-07-12 20:25:28 +00:00
Andi Gutmans 897818e1a0 - Beta 3 2005-07-12 19:59:52 +00:00
Andrey Hristov 5232c4a544 ok, call pdo_mysql_error() before returning -1 2005-07-12 19:32:13 +00:00
Andrey Hristov 8899425e26 strictly check the result of mysql_affected_rows() 2005-07-12 19:22:05 +00:00
Ilia Alshanetsky fa4ea0fff4 Added support for LOCK_EX flag for file_put_contents(). 2005-07-12 17:55:38 +00:00
Ilia Alshanetsky 0131b2b032 Fixed double-free in the digest authentication handling.
# Found and Reported by Stefan Esser
2005-07-12 16:53:30 +00:00
Georg Richter 9aabcf7016 changed version dependency for charset functions 2005-07-12 15:45:07 +00:00
Wez Furlong 3e5ddd2a80 compile before commit... 2005-07-12 12:21:53 +00:00
Wez Furlong 04dd0e1094 Enable unix build for dblib/sybase/freetds.
The extension is named pdo_dblib and the driver dblib on unix.
2005-07-12 12:16:02 +00:00
Antony Dovgal bf9288d457 fix tests that started to fail after the last change in ZE
(noticed by Nuno)
2005-07-12 11:20:05 +00:00
Wez Furlong 93962139fb Avoid estrdup(NULL), modified patch from Zhao ming sen. 2005-07-12 11:02:23 +00:00
Georg Richter 9caaee66bd removed charset structure. libmysql now provides a function
mysqli_get_character_set_info (Vers. 5.0.10)
2005-07-12 09:35:16 +00:00
foobar 2f558a3798 Touch with working re2c 2005-07-12 07:06:01 +00:00
Dmitry Stogov c25b8a3699 Fixed bug #33156 (cygwin version of setitimer doesn't accept ITIMER_PROF). (Nuno) 2005-07-12 06:52:59 +00:00
212299c1fa ChangeLog update 2005-07-12 05:38:51 +00:00
Wez Furlong 0562581de8 touch generated file 2005-07-12 03:20:08 +00:00
Wez Furlong 9240c5f521 remember ? -> :pdox mapping so that binds by position can be mapped to names if required. 2005-07-12 03:19:44 +00:00
Wez Furlong 1bd3483dea fix bug when query was rewritten from ? to :name 2005-07-12 03:18:17 +00:00
Wez Furlong 4f22ac0cdd improve handling of bound input parameters when no maximal length value is set;
default to 4000 as the maximal length, which is the biggest size possible
without using a LONG type (if you specify anything larger than this, you'll end
up with ORA-1461).

Don't assume that all parameters were output parameters after execution, as
this would clobber the input values when used in a loop.
2005-07-12 02:43:39 +00:00
Wez Furlong 664ebfa499 expand oracle null handling compatability by offering the ability to convert
NULLs into empty strings as well as the other way around.  It still doesn't
help a great deal in the long run, but at least the option is there.

Make sure hash tables are nulled out to avoid double freeing them.
2005-07-12 02:40:59 +00:00
Wez Furlong f5a09e87ee should always bind columns after execute.
There're probably more of these to fix.
2005-07-12 02:38:39 +00:00
Ilia Alshanetsky 8a9fc3439a Make references misuse emit E_NOTICE rather E_STRICT to be compatible with
PHP 4.4.0
2005-07-11 18:44:37 +00:00
Ilia Alshanetsky e21f5f9592 A bit of further tuning. 2005-07-11 14:46:01 +00:00
Andrey Hristov b3aa24ff98 fix a segfault with the following script:
<?php
$dbh = new PDO('mysql:dbname=test;host=localhost', "root", "secret");
$what = 1;
$stmt = $dbh->prepare('select a, b, c from t123 where a=:what');
$stmt->bindParam(1, $what, PDO_PARAM_INT, 12);
var_dump($stmt->execute());
var_dump($stmt->fetchObject());
?>
2005-07-11 14:14:56 +00:00
Andrey Hristov 9749926224 - mysql_affected_rows() already returns an unsigned long
- optimize a bit the real_escape
- handle the situation when libmysql bails out because of lack of memory
2005-07-11 13:52:13 +00:00
Jon Parise 6f1261c70c Removing the automake-related output. The build no longer uses automake.
While I'm here, rewrite the PHP_AUTOCONF-related code to more closely
match the conventions used elsewhere in this section.  The result should
be functionally the same as before.
2005-07-11 06:32:02 +00:00
9dde2b0cbe ChangeLog update 2005-07-11 05:39:30 +00:00
Ilia Alshanetsky 35df0e5571 Compiler warning fix. 2005-07-11 03:24:28 +00:00
foobar 21ed9234a0 - Moved ext/dbx and ext/ircg to PECL. 2005-07-10 19:05:09 +00:00
foobar 08f8fcf8f4 touch 2005-07-10 17:56:35 +00:00
Wez Furlong 0d7fa88b4e Fix #33624, mysterious crashes on shutdown on win32 2005-07-10 14:56:36 +00:00
Marcus Boerger 000ef9c4b5 - use three digit octal character definition 2005-07-10 14:04:20 +00:00
54866c02ff ChangeLog update 2005-07-10 05:39:03 +00:00
Andrey Hristov 31de8e9018 stmt->column_count is set only if the result has been already bound, don't
rely on that and use the real count which is kept in st_mysql_stmt
#of course using internal values is bad idea but the comment already says
#that this should be fixed
2005-07-10 02:58:51 +00:00
Andrey Hristov 55ab9b75a6 ok, calculate max_length only in case of a blob (normal, medium, long).
in case of a varchar lets allocate 255 bytes and be quick without asking
libmysql to update max_length
2005-07-10 02:49:14 +00:00
Andrey Hristov 2711d70d33 if the result set is buffered ask libmysql to compute the lengths, so
later allocate buffer as big as the largest value of the column in the
result set (max_legth positive).
2005-07-10 02:20:26 +00:00
Wez Furlong 5602a5ba65 Get precise lengths from the server, as suggested by Andrey. 2005-07-10 02:00:35 +00:00
Wez Furlong 3d373f86f0 Related to #33624. Crashes for me on shutdown, but seems ok for the rest of the world. 2005-07-09 18:52:36 +00:00
44713e7b63 ChangeLog update 2005-07-09 05:37:17 +00:00
Ilia Alshanetsky eb4aff5a91 Added safety checks. 2005-07-09 05:08:54 +00:00
Ilia Alshanetsky 4c18dfc852 Make cursor closer work with emulation as well. 2005-07-09 05:04:43 +00:00
Wez Furlong f21084cb0b don't free the cols until we know we have another rowset 2005-07-09 05:01:14 +00:00
Ilia Alshanetsky 858d827790 Added cursor closer handler.
Fixed memory leak.
2005-07-09 04:54:04 +00:00
Ilia Alshanetsky df60983b75 Added missing header check. 2005-07-09 04:43:16 +00:00
Ilia Alshanetsky d3a9f93111 cursor_closer for SQLite. 2005-07-09 04:37:27 +00:00
Ilia Alshanetsky c58e878513 Implement cursor_closer for MySQL driver. 2005-07-09 04:30:49 +00:00
Wez Furlong 007f571beb for the transactions test case, detect working transactions before attempting to run the tests.
Additional ugliness required because mysql does stupid stuff like this:

mysql> CREATE TABLE foo (id int) TYPE=innodb;
Query OK, 0 rows affected, 2 warnings (0.00 sec)
mysql> SHOW CREATE TABLE foo;
CREATE TABLE `foo` (
  `id` int(11) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1

In addition, BEGIN, COMMIT and ROLLBACK all succeed, even when no tables
support transactions.
2005-07-09 04:28:45 +00:00
Ilia Alshanetsky ba66cac1cf Fixed memory leak 2005-07-09 04:21:14 +00:00
Wez Furlong c2f3636cf2 Fix two bugs:
- execute() would not re-fetch meta data after nextRowset() had been called.

- buffered mode would only be enabled on the first execute on a statement handle.
2005-07-09 03:54:13 +00:00
Wez Furlong d3b653e97b Added:
proto bool PDOStatement::closeCursor()
Closes the cursor, leaving the statement ready for re-execution.

The purpose of the function is to free up the connection to the server so that
other queries may be issued, but leaving the statement in a state that it can
be re-executed.

This is implemented either as an optional driver specific method (allowing for
maximum efficiency), or as the generic PDO fallback if no driver specific
function is installed.

The PDO generic fallback is semantically the same as writing the following code
in your PHP script:

do {
	while ($stmt->fetch())
		;
	if (!$stmt->nextRowset())
		break;
} while (true);
2005-07-09 03:52:41 +00:00
Ilia Alshanetsky 5fe5da90ea Safer way of allowing 'blank' user/pass.
# Thanks Wez.
2005-07-09 02:53:07 +00:00
foobar 60ce60d395 show ugly full path for failed redirected tests 2005-07-09 02:41:19 +00:00
foobar 15e772ce13 - No need to use convert_to_string_ex() when dealing with strings 2005-07-09 00:59:49 +00:00
foobar fcee086982 - Fixed bug #33588 (LDAP: RootDSE query not possible). 2005-07-09 00:46:45 +00:00
Ilia Alshanetsky 0b1931a8ff Fix needed for PostgreSQL driver to allow $user & $pass to be supplied via
DSN as NULL.
2005-07-08 23:33:35 +00:00
foobar c0d7215b81 Sanitazione 2005-07-08 21:46:23 +00:00
Wez Furlong 6ee00c8199 fix leak 2005-07-08 20:45:19 +00:00
Marcus Boerger ca59b1158e - Regenerate using re2c 0.9.8 2005-07-08 20:38:13 +00:00
Marcus Boerger 8d743e70e0 - std not needed -> avoid warning 2005-07-08 20:35:41 +00:00
Marcus Boerger c1717ed8e6 - Fix *printf(%lld) under windows 2005-07-08 20:19:38 +00:00
Wez Furlong 7976182b94 Fix Bug #33111 2005-07-08 19:28:52 +00:00
Wez Furlong 168b6500fd Fix #33618 2005-07-08 19:25:37 +00:00
Wez Furlong 6377c0ccca Fix PECL #4753 2005-07-08 19:05:57 +00:00
Antony Dovgal 38e4fb09e0 fix tsrm build 2005-07-08 18:16:46 +00:00
Wez Furlong 512af63a63 rewrite original names to our preferred format 2005-07-08 17:01:20 +00:00
Wez Furlong dec54a98fa generated file 2005-07-08 17:00:48 +00:00
Wez Furlong 38a02b6244 For named-parameter-to-named-parameter rewrites, we need to map the original
names to the new names.
2005-07-08 17:00:28 +00:00
Ilia Alshanetsky 2301d93156 Some of us don't have PostgreSQL 8.0 :) 2005-07-08 16:20:13 +00:00
Ilia Alshanetsky bf020f87e1 Missing bit of the previous patch. 2005-07-08 16:17:04 +00:00
Ilia Alshanetsky 046635075b Fixed compiler warning. 2005-07-08 16:06:05 +00:00
Wez Furlong 529d8177fe Add early support for native prepared statements in pgsql.
Note that some tests now fail; if we can't resolve this in time for the beta,
the prepare code should be disabled (I'll add a flag for this later today).
2005-07-08 15:27:34 +00:00
Wez Furlong 8f31f0cfaa Fix a shutdown order issue I saw in the pgsql driver. Hope this doesn't mess
up something in the OCI driver; I think I've been here before.
2005-07-08 15:25:15 +00:00
Wez Furlong 206c7b8372 And the generated version of the parser 2005-07-08 15:24:42 +00:00
Wez Furlong ab1ba644db add a bit of a hack to cater for pgsql prepared statements.
These are effectively named statements with strong constraints on the naming
format.  We cater for this in a fairly generic way: allow a driver to replace
the format string we use to generate names from positional parameters.  In
addition, if that format is set, we always force a rewrite from regular names
to the strongly enforced names.
2005-07-08 15:24:21 +00:00
Wez Furlong 057e1973c7 and as a result, need to update the expected data 2005-07-08 15:21:43 +00:00
Wez Furlong 8e30a80733 we declare the column as NOT NULL, so inserting NULL is not a good idea. 2005-07-08 15:20:18 +00:00
Antony Dovgal eb7dc34bfb make use of T token 2005-07-08 12:39:51 +00:00
Antony Dovgal 592a0835fa fix #33597 (setcookie() "expires" date format doesn't comply with RFC) 2005-07-08 12:30:24 +00:00
Antony Dovgal 39379b8f58 rename php_format_date() to date_format()
add wrapper for date_format() to use it in other extensions
2005-07-08 12:26:30 +00:00
Antony Dovgal d705522bbe fix #33614 (memory leak in new strftime()) 2005-07-08 10:23:33 +00:00
Dmitry Stogov 76a447c900 Fixed HTTP basic authentication headers during subrequsts to xsd files 2005-07-08 09:36:28 +00:00
foobar a7e85b3c07 Make sure we get a WARNING and not an ERROR here :) 2005-07-08 08:53:25 +00:00
foobar c17e7e896e fix test when session.save_handler is "user" 2005-07-08 07:57:47 +00:00
foobar 7f7c80babf fix test when session.save_handler is "user" 2005-07-08 07:48:57 +00:00
Dmitry Stogov 3fea0b7b8c Fixed support for <any> in base type of extension 2005-07-08 07:16:56 +00:00
b8bcdbc5f6 ChangeLog update 2005-07-08 05:38:53 +00:00
Wez Furlong 49c1882837 Add a PDO_ATTR_STRINGIFY_FETCHES attribute, which is used to convert integer or
floating point values into strings during fetch.  This is a compatibility hack
for drivers that return native types rather than string representations.

We use this flag in the test suite to persuade postgres tests to pass.
2005-07-08 04:13:00 +00:00
Ilia Alshanetsky ef7bd06657 Added pg_fetch_all_columns() function to fetch all values of a column from
a result cursor.
2005-07-08 00:40:32 +00:00
foobar 71d28a82cf - Fixed stupid bug in PHP_INSTALL_HEADERS() macro: "foo bar" != foo bar
- ext/date/lib/timelib_config.h is also installed now
2005-07-07 23:18:22 +00:00
Antony Dovgal b2141b04d2 do not set error_code to HY000 when there was NO error
reset both handle & statement error codes to 0
2005-07-07 23:03:22 +00:00
Antony Dovgal b0e700524f free parameter when requested to do so 2005-07-07 23:02:22 +00:00
Ilia Alshanetsky 5156c7b38f 1st set of fixes to make tests work with MySQL
# Additional changes pending
2005-07-07 18:49:58 +00:00
Ilia Alshanetsky e7b930ea9a Make prepared statements obey buffering flag in MySQL. 2005-07-07 17:53:34 +00:00
Dmitry Stogov bcd201f522 Fixed SIGSEGV on decoding <any> elements 2005-07-07 17:29:25 +00:00
Wez Furlong da7d537d49 populate the new dbh->driver field.
Implement PDO_ATTR_DRIVER_NAME.
2005-07-07 17:08:01 +00:00
Ilia Alshanetsky 22896664a8 Fixed memory leak 2005-07-07 16:27:46 +00:00
Wez Furlong 294a44a9cb add an attribute for returning the driver name 2005-07-07 16:24:51 +00:00
Dmitry Stogov f51e1c2064 Fixed bug #33512 (Add missing support for isset()/unset() overloading to complement the property get/set methods). Now empty($obj[...]) works proper but in addition it may call offsetGet() method. 2005-07-07 16:09:55 +00:00
Dmitry Stogov 345e0255b5 Fixed bug #33512 (Add missing support for isset()/unset() overloading to complement the property get/set methods) 2005-07-07 16:07:09 +00:00
Ilia Alshanetsky 307f622817 Fixed memory leak. 2005-07-07 15:54:00 +00:00
Anantha Kesari H Y 82da3f5074 zend_stream_getc uses fread internally. NetWare LibC fread reads 4(Which I believe EOT) for EOF(^D) character. This happens when fread is asked to read one and only character as is the case with cl interactive mode.
-- Kamesh
2005-07-07 15:43:50 +00:00
Wez Furlong 5fe199fb0f remove old test files 2005-07-07 15:36:00 +00:00
Wez Furlong 4580a7fd8e using new tests 2005-07-07 15:34:46 +00:00
Wez Furlong 9d37c58059 use new tests 2005-07-07 15:33:06 +00:00
Ilia Alshanetsky 721687e11c Stop on the 1st skip. 2005-07-07 15:32:32 +00:00
Wez Furlong b7459aaf7d adopt new tests 2005-07-07 15:20:06 +00:00
Antony Dovgal 3baf1f7632 fix #33605 (substr_compare() crashes with negative offset & length) 2005-07-07 15:19:40 +00:00
Dmitry Stogov d9c1a380ad Fixed bug #28072 (static array with some constant keys will be incorrectly ordered). 2005-07-07 15:16:57 +00:00
Wez Furlong 3c5b9a6e6a skip if we can't connect (include reason in skip output) 2005-07-07 15:15:01 +00:00
Ilia Alshanetsky 86028ad122 Return an empty array rather then FALSE in fetchAll() on no results. 2005-07-07 15:14:10 +00:00
Ilia Alshanetsky 703c55577b Fixed memory leak, after SQLITE_DONE sqlite3_data_count() always returns 0. 2005-07-07 15:13:28 +00:00
Wez Furlong 3fbb2081a1 adopt new tests 2005-07-07 15:04:45 +00:00
Wez Furlong dc09c2ef9c DB2 wants us to use the proper ODBC 3 function for closing a cursor. 2005-07-07 14:20:04 +00:00
Wez Furlong c80b4c7440 Need to state NOT NULL here, as DB2 won't allow the UNIQUE constraint without it. 2005-07-07 14:09:58 +00:00
Wez Furlong 32663f7da7 make column names lower case 2005-07-07 13:59:34 +00:00
Wez Furlong 618afbdfc8 adopt common tests 2005-07-07 13:58:35 +00:00
Wez Furlong 626d318f07 sort redirected tests 2005-07-07 13:58:02 +00:00
Wez Furlong fff515bc46 more paranoia about the attribute param here too 2005-07-07 13:56:39 +00:00
Wez Furlong 1095da42e0 extra paranoia about the attribute param 2005-07-07 13:56:09 +00:00
Wez Furlong ce3c90414b Hmm, these ldflags went AWOL. 2005-07-07 13:42:12 +00:00
Ilia Alshanetsky 6c332449f9 Use PQexecParams() when available, use original case in all other instances. 2005-07-07 13:35:39 +00:00
Wez Furlong 09d433a349 If asked to populate a set of cflags for a header check, only populate the
flags and don't fill in an entry into config.w32.h, UNLESS explicitly told
what to do.

This prevents leakage of things like HAVE_SQLCLI1_H from one pecl into another
(or the core) and confusing the build (as has happened with ibm_db2 and
pdo_odbc).
2005-07-07 13:22:38 +00:00
Wez Furlong f94f36fee8 adopt generic PDO test suite 2005-07-07 13:04:26 +00:00
Wez Furlong 6253c6c5e1 Fix 2 bugs:
- summary is only displayed if 2 or more tests were detected
- error out of a bogus test name is passed in
2005-07-07 12:58:47 +00:00
Wez Furlong 93024bc268 Fix handling of parameter binding.
We need to guess at parameter sizing in some cases (eg: MS Access) as the
SQLDescribeParam() API is an optional feature.
Tidy up error handling.
Add workaround for a shutdown bug that I see with MS ODBC implementation.
(working to determine the precise cause of this).
PDO core test suite now passes all tests.
2005-07-07 12:49:21 +00:00
Wez Furlong 68caaadc6a Fix bug in bindColumn() for drivers that implement native prepared statements
and that use the PDO rewriter to handle non-native parameter syntax.
2005-07-07 12:45:40 +00:00
Wez Furlong 576ff830a9 pedantic WS 2005-07-07 12:44:44 +00:00
Wez Furlong f4681fd86b It's not portable to expect any consistency between drivers in the return value
of an exec() when running DDL; revise test.
2005-07-07 12:42:52 +00:00
Dmitry Stogov 0eb0b781e0 Fixed memory leaks 2005-07-07 11:19:56 +00:00
Rob Richards b27d49579a Allow NULL namespaceURI for getAttributeNodeNS 2005-07-07 10:36:08 +00:00
foobar 27caee32bd reorder. Also: Documentation belongs elsewhere :) 2005-07-07 08:42:53 +00:00
Anantha Kesari H Y 8b3becf06c Reverting the DEFAULT_SLASH to / as it breaks the FreeBSD derived function of NetWare LibC like glob.
-- Kamesh
2005-07-07 07:12:44 +00:00
Anantha Kesari H Y 958803655e gwtcwd of NetWare LibC gives a cwd with a volume information.
So using getcwdpath which gives with volume information.
getcwdpath gives with directory seperator as \ which is against our DEFAULT_SLASH of /. So finding and replacing \ with /

-- Kamesh
2005-07-07 07:10:50 +00:00
Anantha Kesari H Y e61dfb0213 COPY_WHEN_ABSOLUTE is not needed for NetWare.
-- Kamesh
2005-07-07 06:52:44 +00:00
Dmitry Stogov 8de3367453 Fixed support for shared extensions on AIX 2005-07-07 05:54:43 +00:00
04b1b727dd ChangeLog update 2005-07-07 05:39:05 +00:00
Rasmus Lerdorf 3064cb787d Missing closing folding marker 2005-07-07 03:53:47 +00:00
Ilia Alshanetsky 10e1eecf3f Leave it up to the user to decide if to escape the sequence name or not. 2005-07-07 02:17:20 +00:00
Ilia Alshanetsky bcb447f6b8 Faster sequence id retrieval. 2005-07-07 00:52:19 +00:00
Edin Kadribasic 56dd9f5731 Export missing symbol 2005-07-06 21:18:09 +00:00
Dmitry Stogov e7217e032c Fixed possible crash 2005-07-06 14:15:51 +00:00
Wez Furlong 30c916f21a rename pdo_test.php to pdo_test.inc, add it, and update tests. 2005-07-06 13:19:25 +00:00
Wez Furlong 277f9357f4 juggling to track down a problem with odbc 2005-07-06 13:16:40 +00:00
Dmitry Stogov 1f52d756fd Fixed test to support 64-bit platforms 2005-07-06 07:28:25 +00:00
Dmitry Stogov 61d6c4e616 Fixed SIGSEGV during error processing on some systems (linux/ppc) 2005-07-06 06:58:44 +00:00
Wez Furlong 72a75a87ea last minute debug stuff sneaked in 2005-07-06 06:13:44 +00:00
Wez Furlong e39f37d36b replace pdo_odbc tests with new redirection thingy 2005-07-06 06:10:52 +00:00
Wez Furlong 35dbaea547 remove the old tests for pdo_sqlite 2005-07-06 06:09:13 +00:00
Wez Furlong 7b610aba35 Add a redirect test to run the common pdo core tests against the sqlite
driver
2005-07-06 06:08:53 +00:00
Wez Furlong 14dbb2dfe9 Add tests that can be redirected to with new test harness feature. 2005-07-06 06:07:26 +00:00
Wez Furlong 5b84ae26ab Add a new kind of test to the test harness. REDIRECTTEST sections allow an
extension to piggy-back on the tests defined under another dir and run those.

Example of its use follows shortly with pdo tests.
2005-07-06 06:06:23 +00:00
c477a0b181 ChangeLog update 2005-07-06 05:31:49 +00:00
foobar 887f44a9dd - Fixed crash in serialize() + classes. (64bit only) 2005-07-05 23:48:44 +00:00
Derick Rethans a81e8ae358 - Added testcase for bug #33578. 2005-07-05 21:38:37 +00:00
Derick Rethans aa5084d17b - Fixed bug #33578 (strtotime() doesn't understand "11 Oct" format). (Derick) 2005-07-05 21:33:33 +00:00
Ilia Alshanetsky c933634253 Fixed crash inside stream_get_line() when length parameter equals 0. 2005-07-05 19:24:07 +00:00
Derick Rethans d75d455737 - Change memory management so that tzinfo structures can live outside time
structures too.
2005-07-05 18:30:30 +00:00
Edin Kadribasic 312a8eede3 Properly detect when the copy command fails 2005-07-05 14:49:22 +00:00
Dmitry Stogov 43c84919be Fixed crash in ext\standard\tests\general_functions\bug32647.php on Windows 2005-07-05 14:13:46 +00:00
Dmitry Stogov 319cbe1c5a Fixed test file 2005-07-05 14:10:31 +00:00
Derick Rethans 17b877a772 - Fixed memory corruption in pg_copy_from() in case the as_null parameter was
passed. (Derick)
2005-07-05 12:45:39 +00:00
d9248ab10e ChangeLog update 2005-07-05 05:39:31 +00:00
Derick Rethans bf23d8d2b8 - Renamed date_timezone_set/get() to date_default_timezone_set/get().
- Added missing proto's and folding marks.
2005-07-04 21:27:26 +00:00
Jon Parise 901419d028 If the PHP_AUTOCONF and PHP_AUTOMAKE environmental variables are set, use
them when describing the build environment.

Support for these variables was originally added to build/build2.mk:1.36.

As a side note, the build system uses PHP_AUTOHEADER.  Perhaps it should
be listed on its own in the build environment for completeness, despite it
being a component of the autoconf package.
2005-07-04 20:37:07 +00:00
Ilia Alshanetsky 95e3f66299 Make sure the timezone is NULL, if change operation fails. Ex. memory_limit 2005-07-04 18:13:15 +00:00
Derick Rethans 69feece2bc - Fixed logic. 2005-07-04 14:32:50 +00:00
Dmitry Stogov 343af548a6 Fixed SIGSEGV on 'global ${"{$blah}_ID"};' 2005-07-04 13:24:46 +00:00
Wez Furlong 1b9b6312c3 Fix win32 build 2005-07-04 13:22:27 +00:00
Derick Rethans 531c8b9f8c - PHPAPI + static don't mix, obviously. 2005-07-04 13:21:39 +00:00
foobar 73dd4043b3 Make sure files-save handler is used always 2005-07-04 13:09:14 +00:00
Dmitry Stogov d647e000a7 Fixed bug #33520 (crash if safe_mode is on and session.save_path is changed) 2005-07-04 12:47:10 +00:00
Derick Rethans 6ba4559b51 - Added testcase for bug #33563 which is already fixed. 2005-07-04 12:41:20 +00:00
foobar 498c2c7f3b UTC is better 2005-07-04 12:41:00 +00:00
Dmitry Stogov 1d33a3e95e Fixed bug #31158 (array_splice on $GLOBALS crashes) 2005-07-04 10:01:10 +00:00
foobar 43210250ea fix test 2005-07-04 08:32:07 +00:00
Derick Rethans 346c090924 - Fixed bug #33562 (date("") crashes). 2005-07-04 07:48:19 +00:00
Derick Rethans effc5f1927 - Do not crash when the abbreviation doesn't exist. 2005-07-04 07:16:09 +00:00
3334de5fa2 ChangeLog update 2005-07-04 05:38:46 +00:00
foobar 45ae792d08 - Always create the file with correct paths (gdb likes it better like this) 2005-07-04 00:25:39 +00:00
foobar 19b6ffed3c - Always use #ifdef when dealing with HAVE_* defines from AC_CHECK_FUNCS()
- Added check for strftime() also in the timelib configure
2005-07-03 23:30:52 +00:00
Derick Rethans 422f14cb0f - Fixed bug #33536 (strtotime defaults to now even on non time string). 2005-07-03 21:38:54 +00:00
Derick Rethans 8aa3554d19 - Reimplemented time(), getdate() and localtime() functions with new datetime
library.
2005-07-03 20:45:08 +00:00
Derick Rethans 0ef991e5ae - Fixed bug #33532 (Different output for strftime() and date()).
- Re-implemented checkdate(), strftime() and gmstrftime() with the new timelib
  code.
2005-07-03 19:14:55 +00:00
Ilia Alshanetsky dda7692c87 Avoid strlen() if we know the length. 2005-07-03 18:56:57 +00:00
Derick Rethans 34c4ac7bac - Fixed unintialized variable issue. 2005-07-03 18:49:07 +00:00
foobar b440eb4b45 function style 2005-07-03 15:39:48 +00:00
Derick Rethans 2e9d063814 - Added fallback to system's timezone setting, but marked with an E_STRICT
error.
- Adjusted tests to use the date_timezone_set() function.
2005-07-03 15:01:29 +00:00
Derick Rethans d3c83378eb - Move mktime/gmmktime related tests from ext/standard to ext/date. 2005-07-03 14:36:59 +00:00
Derick Rethans ed02f202f0 - Fixed bug #30096 (gmmktime does not return the corrent time).
- Re-implemented mktime and gmmktime with new date time library.
- Added testcase for bug #30096, updated test cases for E_STRICT warning of
  is_dst parameter usage for mktime/gmmktime.
2005-07-03 14:27:31 +00:00
Dmitry Stogov f4b5a51952 Fixed memory leak 2005-07-03 11:09:42 +00:00
Marcus Boerger d3c337e59d - Tweak tests a bit 2005-07-03 09:10:41 +00:00
fa9fdbeeac ChangeLog update 2005-07-03 05:32:08 +00:00
Wez Furlong d4a158260b Add PDO_FETCH_NAMED; closes PECL #4641 by providing a way to access columns
by name, even when multiple columns have the same name:

$sql = "SELECT 1 a, 2 a, 3 b, 4 c, 5 d, 6 c, 7 a";
echo "$sql\n";
print_r($db->query($sql)->fetchAll(PDO_FETCH_NAMED));

Array
(
    [0] => Array
        (
            [a] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 7
                )

            [b] => 3
            [c] => Array
                (
                    [0] => 4
                    [1] => 6
                )

            [d] => 5
        )
)

Also added two new attributes for use at prepare time;
PDO_ATTR_FETCH_TABLE_NAMES and PDO_ATTR_FETCH_CATALOG_NAMES instruct the driver
that the names of the columns that they return to PDO should include the table
and catalog names respectively.  Both attributes may be used together or
independently.  The catalog, table and column name components should be
separated by a . character.
2005-07-03 03:49:44 +00:00
Wez Furlong 75cfa5c2e0 probable fix for PECL bug #4546 2005-07-03 03:04:13 +00:00
Wez Furlong d7e5dfb2de Enable native mysql 4.1.x prepared statement support
# the hardest part was installing 4.1.x on a gentoo box over a 56k modem
2005-07-03 02:20:08 +00:00
Edin Kadribasic 6649a16c3d BFN 2005-07-02 23:04:34 +00:00
Edin Kadribasic 9ac84b2f1a Don't crash on exit by destroying the same hash twice 2005-07-02 22:48:06 +00:00
Derick Rethans 2b47899981 - Overhauled selecting the correct timezone. The timezone set with
"date_timezone_set" override the TZ environment variable, which on its turn
  overrides the date.timezone setting. If none of the three is set, we fallback
  to UTC.
- Added "date_timezone_set" function to set the timezone that the date
  functions will use.
2005-07-02 21:19:25 +00:00
Wez Furlong 1bbab25455 Experimental support for queries returning multiple rowsets under mysql 5.0.
Patch from Guy Harrison (guy dot a dot harrison (at) gmail dot com)
2005-07-02 21:01:38 +00:00
Ilia Alshanetsky 6fd9e5a64f Fixed memory leak on PDO_FETCH_OBJ. 2005-07-02 17:19:58 +00:00
e273318d76 ChangeLog update 2005-07-02 05:34:49 +00:00
Greg Beaver 03c835464f XML_RPC -> 1.3.1 (tar, not tgz) 2005-07-02 02:55:32 +00:00
Greg Beaver aeeda84714 XML_RPC -> 1.3.1 2005-07-02 02:48:06 +00:00
Edin Kadribasic 230d5bc4fc Inconsistency noticed by Nicholas Telford 2005-07-01 23:47:08 +00:00
Edin Kadribasic 00855fcc34 Add sqlstates defined in PostgreSQL documentation.
Source: http://www.postgresql.org/docs/8.0/static/errcodes-appendix.html
2005-07-01 23:32:39 +00:00
Edin Kadribasic f05de12fcf Only check for InvalidOid when not looking up a sequence 2005-07-01 22:43:16 +00:00
Edin Kadribasic 7ef1a91508 Fold PQresultErrorField() into a macro 2005-07-01 22:30:55 +00:00
Edin Kadribasic 5d65789877 Added class 55 sqlstates 2005-07-01 22:12:00 +00:00
Edin Kadribasic 1a10666b08 Added support for fetching current value of a sequence when the
optional sequence name has been passed to PDO::lastInsertId()
2005-07-01 21:54:50 +00:00
Pierre Joye 6b4910b028 bump xml_rpc to 1.3.1, php4 win32 builds uses this list to (4.4) 2005-07-01 09:20:28 +00:00
Edin Kadribasic e70b3a94f4 Use timelib types.
(Fixes compilation on older Microsoft compilers)
2005-07-01 08:59:57 +00:00
Anantha Kesari H Y fe81fa0338 NetWare LibC has reentrant time functions no need to have this.
-- Kamesh from hyanantha's account
2005-07-01 07:55:28 +00:00
Derick Rethans e6820914ff - parse_date.c is a generated file, updated parse_date.re and regenerated
parse_date.c.
2005-07-01 07:18:43 +00:00
Anantha Kesari H Y 98a2eeacc7 As fork implementation of NetWare LibC still in experimental stages making the procve based solution ahead of HAVE_FORK. Later When fork becomes stable will revert this fix.
--Kamesh from hyanantha's account
2005-07-01 06:49:29 +00:00
6e4d1b9be6 ChangeLog update 2005-07-01 05:37:58 +00:00
Ilia Alshanetsky eab2cdedd3 Fixed memory leak. 2005-06-30 23:33:37 +00:00
Frank M. Kromann 4ae7321f3e Fix Win32 build 2005-06-30 23:03:36 +00:00
Frank M. Kromann 6833acff23 Fix ZTS build 2005-06-30 22:49:47 +00:00
Ilia Alshanetsky f7fe18dde4 Fixed compiler warnings. 2005-06-30 22:47:39 +00:00
Ilia Alshanetsky 7575ef4778 Fixed memory leak on error inside php_date(). 2005-06-30 22:44:28 +00:00
Ilia Alshanetsky 138b4435dd Fixed bug #33523 (Memory leak in xmlrpc_encode_request()). 2005-06-30 22:29:36 +00:00
Derick Rethans e155585e6e - Reimplemented date and gmdate with new timelib code.
- Removed old date/gmdate implementations.
- Moved date() related testcases to ext/date/tests.
- Implemented bug #33452.
- Fixed testcase for bug #27719 - there is no timezone called "EST5DST".
2005-06-30 21:38:06 +00:00
Ilia Alshanetsky 2e79463120 Release news 2005-06-30 21:13:34 +00:00
Ilia Alshanetsky c6cbbdb335 SQLite lib upgrade news. 2005-06-30 21:00:35 +00:00
Ilia Alshanetsky e614839111 touch generated file. 2005-06-30 20:59:21 +00:00
Ilia Alshanetsky 7d02c9dcb2 Upgraded bundled sqlite lib to 3.2.2 2005-06-30 20:58:36 +00:00
Wez Furlong efc6ccaa01 Add optional parameter to openssl_pkcs7_verify() which specifies the name
of a file that will be filled with the verified data, but with the signature
information stripped.

Patch by Marton Kenyeres, mkenyeres (at) konvergencia dot hu
2005-06-30 14:25:41 +00:00
foobar 07862d7218 consistent naming: prefix always with MYSQL_ 2005-06-30 14:15:51 +00:00
foobar 6cea418c31 Netware also uses autoconf based config now 2005-06-30 14:11:13 +00:00
Dmitry Stogov 2ca2dc0b08 Restored old behavior of zend_statup_module() 2005-06-30 13:43:00 +00:00
foobar 9518bae116 typo 2005-06-30 13:39:42 +00:00
foobar 340bcffdf0 - Unify (+ spl can't be build shared so COMPILE_DL_SPL 2005-06-30 11:15:00 +00:00
Derick Rethans 384c52faee - Added check for makedev systemcall, which Netware doesn't support. 2005-06-30 10:03:36 +00:00
Derick Rethans 33218e6b24 - Make the Netware guys happy by removing the config.nw.h define. 2005-06-30 06:40:57 +00:00
3f2f79936c ChangeLog update 2005-06-30 05:34:14 +00:00
Ilia Alshanetsky 613d30f215 Silence warnings. 2005-06-30 00:07:42 +00:00
Derick Rethans e4860af785 - Reorganize headers, and update TODO. 2005-06-29 19:08:26 +00:00
Derick Rethans e7de7ff9e2 - Added support for negative timestamps with the @<number> format. (Patch by
Nuno Lopes)
2005-06-29 19:07:06 +00:00
Derick Rethans aa202a7e93 - Make sure the already set "TZ" environment doesn't mess up the tests. 2005-06-29 19:00:35 +00:00
Ilia Alshanetsky 21e17d7ec0 Final (i hope) set of magic.h detection fixes. 2005-06-29 15:57:16 +00:00
Ilia Alshanetsky 7022fbae55 More reliable library detection.
# Thanks Jani
2005-06-29 13:53:59 +00:00
Anantha Kesari H Y 8c77d2a6ca This file is not needed anymore 2005-06-29 13:11:08 +00:00
Anantha Kesari H Y ce3b796f90 this file is not used at all so removing it. 2005-06-29 12:44:06 +00:00
Anantha Kesari H Y c49718f601 Netware LibC has mktemp implementation 2005-06-29 12:16:25 +00:00
Anantha Kesari H Y c8442648aa NetWare LibC has getpwnam, getlogin, getpwuid, getpid, this file is not needed anymore 2005-06-29 12:04:33 +00:00
Antony Dovgal f4667ee268 fix test 2005-06-29 11:52:18 +00:00
Anantha Kesari H Y 58379a1d6c NetWare LibC has readlink implementation. This is not needed anymore. 2005-06-29 11:49:16 +00:00
Anantha Kesari H Y c98c136297 This file does nothing so removing this file. 2005-06-29 11:22:09 +00:00
Anantha Kesari H Y 98af84b898 NetWare LibC has grp.h 2005-06-29 11:04:25 +00:00
Anantha Kesari H Y e1f398a216 NetWare LibC has param.h 2005-06-29 10:53:48 +00:00
Anantha Kesari H Y d6d7b57b9b NetWare LibC itself has popen/pclose functionality so removing this 2005-06-29 10:18:16 +00:00
Johannes Schlüter 44c021d851 - Fix TSRM build 2005-06-29 09:28:44 +00:00
Anantha Kesari H Y f5aeda2971 NetWare LibC has pipe/popen support 2005-06-29 08:59:30 +00:00
Stanislav Malyshev fb0c96d07b fix conditions for freeing 2005-06-29 08:44:01 +00:00
Stanislav Malyshev 9727e938ee add comment 2005-06-29 08:43:38 +00:00
Anantha Kesari H Y f8438519e6 mktemp functionality is part of Regular LibC 2005-06-29 08:34:20 +00:00
Anantha Kesari H Y 3e489fe078 removing pwd.h as NetWare LibC itself supplies pwd.h 2005-06-29 07:02:58 +00:00
b91a49ef84 ChangeLog update 2005-06-29 05:36:03 +00:00
foobar fa6c536c26 fix tests when error_reporting is E_ALL 2005-06-28 23:33:42 +00:00
foobar a66eb331f0 - Regenerated with re2c 0.9.8 2005-06-28 23:16:49 +00:00
Antony Dovgal aa88cd901f fix leak: when dup was <success>ful zend_std_object_get_class_name() returns SUCCESS aka 0 2005-06-28 22:04:07 +00:00
Derick Rethans a8949a5f0e - Added testcases for bug #14561 and #26090 and updated NEWS with those
fixed bug nr's.
2005-06-28 21:49:35 +00:00
foobar 0cf082db67 - Fixed bug #33469 also for shared builds 2005-06-28 21:47:30 +00:00
Derick Rethans 7e58c96022 - Fixed bug #33415 and added test cases for #33414 and #33415. 2005-06-28 21:37:36 +00:00
foobar faa3fd4ae0 re2c 0.98 is the current working version 2005-06-28 20:58:34 +00:00
Derick Rethans dcca4db029 - Fixed bug #33433 (strtoll not available on Tru64). 2005-06-28 18:05:59 +00:00
Derick Rethans 28e76fe7f4 - Implemented binary search for timezone abbreviations and timezone identifier
lookups. (Based on a patch by Nuno Lopes)
2005-06-28 17:56:47 +00:00
foobar c06fbbf0c4 BFN 2005-06-28 17:06:09 +00:00
Brian France 3137e1e422 Added a SG(server_context) NULL check to php_apache_getenv.
This can get called when "<key> = ${<key>}:/foo" is used in a .ini file, but <key> has not be set yet.
        You will end up with a value of ":/foo", but at least it will not crash now.
2005-06-28 16:34:18 +00:00
Ilia Alshanetsky 8c0dc5e887 Make exec() return FALSE on error as do other drivers. 2005-06-28 14:54:44 +00:00
Stanislav Malyshev b95ec3528a fix previous patch 2005-06-28 12:42:56 +00:00
Stanislav Malyshev 7410964887 update 2005-06-28 10:52:00 +00:00
Stanislav Malyshev e3601d22a7 fixes for non-php objects 2005-06-28 10:49:56 +00:00
foobar 3996e49272 one might not have simplexml enabled 2005-06-28 10:17:01 +00:00
Stanislav Malyshev 62d4d8b8d2 fix handling of non-PHP classes (John Coggeshall) 2005-06-28 09:46:30 +00:00
9e9ef37e98 ChangeLog update 2005-06-28 05:37:03 +00:00
Ilia Alshanetsky 3fe8b55917 Fixed double-free bug. 2005-06-28 04:03:58 +00:00
Ilia Alshanetsky f04cbae3fd fixed oid retrieval. 2005-06-28 02:09:53 +00:00
foobar 990aa7456e - Fixed bug #31358 (Older GCC versions do not provide portable va_copy()). 2005-06-27 22:04:41 +00:00
foobar b35224fa81 add test case 2005-06-27 19:07:52 +00:00
foobar 1ac5cf8746 - Fixed bug #33469 (Compile error undefined reference to ifx_checkAPI). 2005-06-27 18:38:04 +00:00
foobar e04f5603f7 - Cache the xml2-config path 2005-06-27 18:30:14 +00:00
Stanislav Malyshev d5a1296008 fix various "Class entry requested for an object without PHP class" messages
when working with non-PHP objects.
# Using Z_OBJCE(object)->name is usually bad idea unless you know it's
# a pure PHP object
2005-06-27 18:13:13 +00:00
Antony Dovgal 46fcf913b2 BFN 2005-06-27 17:42:32 +00:00
Antony Dovgal b16beb540c fix #33491 (crash after extending MySQLi internal class) 2005-06-27 17:40:37 +00:00
Antony Dovgal 689f3488a5 fix couple of leaks in MySQLi 2005-06-27 17:33:56 +00:00
Ilia Alshanetsky fb7c1f0561 Remove "custom" PDDRV sqlstate. 2005-06-27 14:52:46 +00:00
foobar 8eb44394cb set_charset() is only available in mysql versions > 4.1.12 2005-06-27 10:34:42 +00:00
foobar 0b35120921 do not pollute other directories and cleanup after test 2005-06-27 10:14:11 +00:00
Dmitry Stogov 7662d4df64 Fixed SIGSEGV on assigment string offset by reference 2005-06-27 06:15:35 +00:00
Dmitry Stogov 0e720a8b42 Fixed wrong include/requre occurrences in debug backtrace. 2005-06-27 06:03:10 +00:00
539457f8e4 ChangeLog update 2005-06-27 05:34:54 +00:00
foobar 2967f6116f - Fixed bugs #33431, #33432 ("int" used instead of "long" in parameter parsing) 2005-06-26 22:34:26 +00:00
Ilia Alshanetsky 498595a122 Fixed bug #33475 (cURL handle is not closed on curl_close(). 2005-06-26 17:31:07 +00:00
Pierre Joye dc79ac371b - bump xml_rpc version 2005-06-26 07:00:18 +00:00
Georg Richter 01108f7879 fix for #33474 2005-06-26 04:44:03 +00:00
Rob Richards f63e56dc1a Fix build under PHP 4 2005-06-25 10:16:59 +00:00
3c653277a6 ChangeLog update 2005-06-25 05:32:01 +00:00
Ilia Alshanetsky 09f052358f Fixed bogus query failure claim, on some queries such as OPTIMIZE table. 2005-06-24 23:58:06 +00:00
Rob Richards e923ffddab fix build for libxml > 2.6.17 2005-06-24 21:00:27 +00:00
Ilia Alshanetsky 866283d43f Missing part of the previous patch. 2005-06-24 19:46:37 +00:00
Ilia Alshanetsky 348c0cddae Added PDO_MYSQL_ATTR_USE_BUFFERED_QUERY parameter for pdo_mysql, to toggle
usage of buffered queries.
2005-06-24 19:45:59 +00:00
Ilia Alshanetsky e956cc30d7 Skip the test, it fails due to missing transaction support. 2005-06-24 19:20:59 +00:00
Ilia Alshanetsky e80a144fce Fixed PDO Mysql tests. 2005-06-24 19:10:41 +00:00
Georg Richter 224b12ba8b reverted Ilias changes - added get_warnings methods
(forgot to commit the file in my last commit)
2005-06-24 14:44:45 +00:00
Dmitry Stogov 61b9dedd90 Export zend_do_fcall() helper from executor 2005-06-24 12:33:53 +00:00
Pierre Joye 4f2bca6cc9 - fix win32 builds, vc likes to have declarations first 2005-06-24 10:22:21 +00:00
Dmitry Stogov 6bc321395d Partial fix for bug #26584 (Class member - array key overflow)
It doesn't fix integer overflow problem, but allows null, boolean and double keys in array constants in the same way as in runtime.
2005-06-24 09:24:42 +00:00
Dmitry Stogov 12b66c262a Fixed bug #30519 (Interface not existing says Class not found) 2005-06-24 08:45:17 +00:00
cc22d6690f ChangeLog update 2005-06-24 05:38:47 +00:00
Ilia Alshanetsky 87d6f497f7 Likely fix for bug #33140 2005-06-24 02:04:19 +00:00
Dmitry Stogov f3f97394b2 Fixed bug #28377 (debug_backtrace is intermittently passing args) 2005-06-23 12:00:13 +00:00
Pierre Joye 5443879053 - OO example 2005-06-23 11:29:26 +00:00
Pierre Joye 58cb6bb07f - initial tests 2005-06-23 11:29:03 +00:00
Pierre Joye 8c1c4865ac - Add OO interface
- some {{{ fixes
2005-06-23 11:28:25 +00:00
Dmitry Stogov cfe01e1b06 Fixed bug #32660 (Assignment by reference causes crash when field access is overloaded (__get)) 2005-06-23 11:04:35 +00:00
Rasmus Lerdorf ba80543b16 Don't really need the ZE2 check since this is in HEAD 2005-06-23 11:01:08 +00:00
foobar eccc955ed5 fix test 2005-06-23 10:57:52 +00:00
Rasmus Lerdorf 1caf22fdce test for derived method name clashes 2005-06-23 10:24:23 +00:00
Dmitry Stogov fd2d420919 Fixed test file according to latest debug_backtrace() fixes 2005-06-23 09:25:00 +00:00
Dmitry Stogov f17f5da8af Fixed bug #30828 (debug_backtrace() reports incorrect class in overridden methods) 2005-06-23 09:23:24 +00:00
Dmitry Stogov 2037023874 Fixed bug #27268 (Bad references accentuated by clone). 2005-06-23 08:21:03 +00:00
f58beefc8f ChangeLog update 2005-06-23 05:39:35 +00:00
Andi Gutmans ec92bb884e - Back to -dev 2005-06-23 04:20:49 +00:00
Andi Gutmans fe238490f9 - Beta 2 2005-06-23 03:56:37 +00:00
Ilia Alshanetsky 50d32d4d7e temporary fix to let mysqli extension build, so we can make a release. 2005-06-23 02:15:04 +00:00
Marcus Boerger 5cf2c9dc45 - Add +ifdefs to still allow PHP 5.0 builds of PDO
# PDO is a PECL extension and at the moment is still meant to compile on
# both PHP 5.0 and PHP 5.1.
2005-06-23 00:19:16 +00:00
Rob Richards 6553a4c7e2 BFN 2005-06-22 19:59:25 +00:00
Rob Richards 9ad129468a - Fix bug #33299 (php:function no longer handles returned dom objects)
- maybe fix #33431/33432
2005-06-22 19:56:30 +00:00
Ilia Alshanetsky 49c233212b Fixed bug #32160 (copying a file into itself leads to data loss). 2005-06-22 16:13:47 +00:00
Dmitry Stogov 60328db583 Debug backtrace was fixed 2005-06-22 15:30:14 +00:00
Dmitry Stogov da2ab06111 Fixed bug #29896 (Backtrace argument list out of sync) 2005-06-22 15:26:05 +00:00
Ilia Alshanetsky 00f14fbd74 Slightly more reliable current path detection. 2005-06-22 13:41:59 +00:00
Ilia Alshanetsky 46b276ee4b Skip MySQLi tests if connection could not be established and not using
embeded db.
2005-06-22 13:41:43 +00:00
foobar 8566f52297 "64M should be enough for everyone." -- Jani, 2005 :) 2005-06-22 12:54:04 +00:00
Stanislav Malyshev d66e7cb27c export zend_vm_set_opcode_handler 2005-06-22 12:24:25 +00:00
Antony Dovgal 1c68938c60 - allow to use "yes" and "true" with ini_set() and in commandline (through -d flag)
- fix #15854 that was caused by wrong consideration that zend_ini_boolean_displayer_cb()
always recieves converted to "0"/"1" values.
2005-06-22 12:02:47 +00:00
Georg Richter ce972676b5 added testcase for mysqli_warning class 2005-06-22 10:15:37 +00:00
Georg Richter 976be82fb9 added testcase for cursors (nested selects) 2005-06-22 10:14:32 +00:00
Georg Richter 6fba73e8e2 changed/fixed mysqli_warning class
added prefetch support for cursors
2005-06-22 09:12:43 +00:00
Wez Furlong 372c38a53a build related adjustments.
These need to be included in beta 2
2005-06-22 08:45:22 +00:00
Dmitry Stogov c3e2f113f3 Fixed bug in test file 2005-06-22 08:33:43 +00:00
Dmitry Stogov 21e071be06 Fixed bug #33257 (array_splice() inconsistent when passed function instead of variable) 2005-06-22 08:33:00 +00:00
foobar 96d568f1fb BFN 2005-06-22 08:27:02 +00:00
foobar bfa890d81e - Fixed bug #33427 (ext/odbc: check if unixODBC header file exists) 2005-06-22 08:26:00 +00:00
foobar a0ab6b7160 - Never ever add /usr/lib as libpath, even if --with-libdir is used 2005-06-22 06:50:24 +00:00
4472024ea2 ChangeLog update 2005-06-22 05:43:03 +00:00
foobar ea97aa5e8c fix tests 2005-06-22 00:41:28 +00:00
Marcus Boerger f845c37b41 - Fix test 2005-06-21 18:34:21 +00:00
Derick Rethans d995df614c - Fixed Rasmus' problem with Jan.14, 2004. 2005-06-21 17:43:28 +00:00
Dmitry Stogov adc3993122 Fixed test file 2005-06-21 17:28:09 +00:00
Andi Gutmans da201c1be8 - Back to -dev. Guys (n' Girls), give at least 1 hour before you start
- complaining about not going back to -dev. I like checking the tarball
- before I change it back.
2005-06-21 16:31:19 +00:00
Andi Gutmans 9bf68ef6c5 - Take #3 :) 2005-06-21 15:44:50 +00:00
Ilia Alshanetsky e656b82956 Fixed memory leak.
# Found by valgrind w/o zend-mm being used.
2005-06-21 14:05:15 +00:00
foobar 8460074372 - Partial revert: It does not matter if awk works or not but helps if it does :) 2005-06-21 13:47:38 +00:00
Ilia Alshanetsky c594f47f76 Fixed test skip conditions.
# Same needs to be done to odbc, but it seems access is restricted
# for "privileged" folks.
2005-06-21 13:42:23 +00:00
foobar f5fb13103f fix test 2005-06-21 13:06:10 +00:00
Dmitry Stogov 27374bfaf5 Fixed bug #31213 (Sideeffects caused by fix of bug #29493) 2005-06-21 12:10:51 +00:00
Dmitry Stogov 1098ec03c1 Remove unnecessary ZEND_FETCH_CLASS together with ZEND_DECLARE_INHERITED_CLASS in case of early binding 2005-06-21 12:05:15 +00:00
foobar 9f2c906e80 Fix configure problem in braindead systems like Solaris. 2005-06-21 10:20:03 +00:00
Marcus Boerger 0fcdcbbfd9 - Add new test 2005-06-21 06:59:58 +00:00
Dmitry Stogov 68289c4759 ext/soap should use type defined in SoapVar(), if wsdl defines another type 2005-06-21 06:24:55 +00:00
eccfb9c202 ChangeLog update 2005-06-21 05:31:27 +00:00
Ilia Alshanetsky a462e687dc Fixed possible memory corruption. 2005-06-21 00:12:35 +00:00
Antony Dovgal 79d649e173 fix memleak when connection fails (and we still keep trying) 2005-06-20 23:16:27 +00:00
Andi Gutmans cf0c7a9f5a - Back to -dev 2005-06-20 22:34:57 +00:00
Andi Gutmans fd3d8e9537 - Beta 2 2005-06-20 20:49:56 +00:00
Antony Dovgal e05ec94e1e reorder and prevent memleak: bailout after free() 2005-06-20 19:58:51 +00:00
Dmitry Stogov 62bdbc0e57 Fixed possible crash on $x = $obj->$non_string 2005-06-20 18:25:24 +00:00
Ilia Alshanetsky 3b79941168 Fixed bug #31054 (safe_mode & open_basedir checks only check first
include_path value).
2005-06-20 15:59:13 +00:00
foobar 56c1b316da - Added session.hash_bits_per_character support. (3rd param)
(Changes by: waltzer at autumnweave dot com)
2005-06-20 13:37:32 +00:00
Antony Dovgal 8be61d707f fix #29683 (headers_list() returns empty array) 2005-06-20 12:46:34 +00:00
foobar 6f3b02cba4 typo 2005-06-20 11:10:11 +00:00
Derick Rethans d99e8894ff - Update TODO. 2005-06-20 11:08:28 +00:00
Derick Rethans 610fd92ee7 - Make this work on big endian systems too.
- Added an additional malloc() check.
2005-06-20 11:07:53 +00:00
foobar 4dfa3fc731 Some netware related build issues fixed (patch by: Kamesh Jayachandran <kameshj at fastmail dot fm> 2005-06-20 11:06:54 +00:00
foobar eb9a7a76e6 - Added AC_TIMELIB_C_BIGENDIAN
# No need to add it to config.m4, it's run in PHP configure.in already.
# Only added here so that the  standalone configure.in (to be added later)
# can use it.
2005-06-20 11:01:07 +00:00
Derick Rethans 643709eb96 - Update news with implemented FRs and added test for those FRs. 2005-06-20 08:47:56 +00:00
Derick Rethans 1a4535f692 - Implemented FR #29585 (Support week numbers in strtotime()) 2005-06-20 08:46:09 +00:00
Derick Rethans f0d8e67ff5 - Update README, we require 0.9.8 now. 2005-06-20 08:39:45 +00:00
foobar 37319639ec reorder 2005-06-20 07:59:24 +00:00
foobar 9d14b408cf fix typo 2005-06-20 07:26:46 +00:00
foobar a6c7324979 - No extra spaces before #ifndef 2005-06-20 07:04:07 +00:00
5bb7b8ed58 ChangeLog update 2005-06-20 05:36:33 +00:00
Andi Gutmans 04e687245e - Fix typo 2005-06-20 03:54:46 +00:00
Marcus Boerger 466b22c1fe - BFN 2005-06-20 03:05:14 +00:00
Marcus Boerger 74a63cc1b2 - Fixed #33136:
- Allow ArrayObject::offsetSet(NULL, $value) as replacement for [] = $value
- Fix memleaks with overloading ArrayObject
2005-06-20 03:02:52 +00:00
Marcus Boerger 19904f86d3 - BFN 2005-06-20 01:39:28 +00:00
Marcus Boerger f554eba8f3 - Fix bug #33389 by fixing copying 2005-06-20 01:37:48 +00:00
Marcus Boerger 5cc056a6ce - Output shows false lowercased 2005-06-20 01:10:33 +00:00
Marcus Boerger 758503e26f - Show true/flase 2005-06-20 01:08:57 +00:00
foobar 6a58298bf6 - Plain path passed to PHP_INSTALL_HEADERS needs to have trailing / 2005-06-20 00:52:59 +00:00
foobar a892e4874f fix PHP_INSTALL_HEADERS() macro when 2 params are used 2005-06-20 00:20:45 +00:00
Marcus Boerger 6a67d06c26 - Fix handling of ArrayObject/ArrayIterator flags and provide test 2005-06-20 00:19:18 +00:00
foobar 9f704ce6d1 This is not mysqli, where 5th parameter is port. 2005-06-20 00:16:31 +00:00
foobar 174e96246b Install headers too 2005-06-19 23:36:18 +00:00
Marcus Boerger 2f99f9d1c8 - Add new test
# In this version we do not need to make the subscripted array a reference.
# Thus this implementation is in most cases the ideal implementation.
2005-06-19 22:18:07 +00:00
Derick Rethans 3cdc895213 - Added backward compability wrapper "php_parse_date()".
- Changed WDDX extension to use new date parsing code.
- Removed all remnants to the old parser.
#- I hope that I didn't break the .dsp's...
2005-06-19 22:15:27 +00:00
Marcus Boerger 363bfdb404 - Add new test
# This does the same as 009 but achieves its goal completely different. It
# is easier but makes the array a reference which is not always practical.
2005-06-19 22:09:53 +00:00
Derick Rethans a347b91a9e - Fixed layout of test description. 2005-06-19 21:56:21 +00:00
Marcus Boerger 5c86a323e5 - Drop doubled $ 2005-06-19 21:52:38 +00:00
Marcus Boerger 9a831f1e4d - Add new test 2005-06-19 21:34:21 +00:00
Marcus Boerger f01c842ef6 - Update tests to reflect current situation
# I don't feel like discussing this issue anymore - maybe we need to find
# a way of returning proxies to get the requested behavior back - i'll give
# it a try for PHP 5.2. So long we'll have to stay with the original
# decision that we don't support references at all with ArrayAccess.
2005-06-19 20:49:17 +00:00
foobar 21ce9394a7 revert - now it works again?! 2005-06-19 17:06:48 +00:00
Ilia Alshanetsky b9575ead72 make substr_count() 30% when counting instances of 1 byte long strings. 2005-06-19 16:31:51 +00:00
Derick Rethans eab2cbf494 - Fixed test - strtotime() uses GMT if no TZ environment variable is set and if
no explicit timezone abbreviation (CEST) or timezone identifier
  (Europe/Amsterdam) is set.
2005-06-19 16:13:34 +00:00
Derick Rethans ebc587846b - Ignore VIM swapfiles. 2005-06-19 15:02:28 +00:00
Derick Rethans aeb1744011 - Add #20382 to the list, and expand testcase again. 2005-06-19 15:01:43 +00:00
22d433a3db ChangeLog update 2005-06-19 05:32:33 +00:00
Sebastian Bergmann 63a30ff1f0 ZTS fix. 2005-06-19 05:28:39 +00:00
foobar a91a5601e4 fix test 2005-06-18 23:23:45 +00:00
foobar 07d96b9201 reorder + typofix :) 2005-06-18 21:17:10 +00:00
Derick Rethans 3e7446f0e7 - Allow default timezone to be set with the .ini setting "date.timezone". 2005-06-18 20:23:19 +00:00
Derick Rethans 635ea0d5fd - Update NEWS with bugfix happyness.
- Update TODO file for ext/date. No known bugs currently.
2005-06-18 19:40:31 +00:00
Derick Rethans c2b34e208a - Added testcase for bug #28024. 2005-06-18 19:39:19 +00:00
Derick Rethans 9f2283b8a0 - Fixed bug in tm2unixtime where the wanted date was in the transition time
between two zones.
#- In this case the wanted date actually didn't exist, and that wasn't
#  handled correctly.
2005-06-18 19:23:58 +00:00
Derick Rethans 7299ff3b04 - Expand test cases for bug #32086 and #32555. 2005-06-18 19:21:10 +00:00
foobar 95d8125199 BFN 2005-06-18 18:59:12 +00:00
foobar 51f9d5bedc - Updated bundled shtool to version 2.0.2 2005-06-18 18:54:40 +00:00
Ilia Alshanetsky 67ea97dfdf Added offset & length parameters to substr_count() function. 2005-06-18 18:23:12 +00:00
foobar 20cc9e3939 some more things to do 2005-06-18 18:11:33 +00:00
Andi Gutmans 9f9f6d2e5d - E_STRICT shouldn't be on by default on production servers. 2005-06-18 16:52:24 +00:00
Derick Rethans b70466417e - Add another test for bug #20382. 2005-06-18 14:11:15 +00:00
foobar eb4103503c Add note how to build DBA as shared 2005-06-18 13:28:30 +00:00
foobar 4ca58ffa00 no trailing dots 2005-06-18 13:17:52 +00:00
Derick Rethans 3ad7c1ad4a - If the ts is smaller than the first transition time, use the last one
in the list.
#- This seems consistent with how "zdump" works, although I'm not 100% sure if
#  it's correct.
2005-06-18 11:58:18 +00:00
Derick Rethans 30efc9f68e - Fixed a problem where the timestamp we are looking up a TZ info structure for
was in the last record in the tz database.
- Fixed problem in test case.
2005-06-18 11:15:29 +00:00
Derick Rethans db861c3944 - Added missing .cvsignore file. 2005-06-18 11:12:38 +00:00
Derick Rethans cbc98fb3c0 - Fixed test case
#- Still not sure why the first TS is incorrect...
2005-06-18 10:25:40 +00:00
b900a96852 ChangeLog update 2005-06-18 05:35:31 +00:00
foobar a104447d46 Make sure $_ENV is populated 2005-06-18 02:24:37 +00:00
foobar f2ddefcc56 - This is no bug. 2005-06-18 02:06:31 +00:00
foobar 0964cd270e BFN 2005-06-18 01:06:58 +00:00
foobar 185648217f test for bug #33389 2005-06-18 01:01:48 +00:00
Ilia Alshanetsky bcd33d5f18 Added offset parameter to the stream_copy_to_stream() function. 2005-06-17 23:29:20 +00:00
foobar c156a2e1b0 missing entry 2005-06-17 23:00:11 +00:00
Derick Rethans 25168fffd5 - Fix test case.
#- Bug might actually be in date() rendering things wrong, but that code
#  is not yet replaced.
2005-06-17 22:45:31 +00:00
foobar 19639aa9ab Use the new dependency system 2005-06-17 16:42:54 +00:00
foobar a491b82c4c No short-tags! 2005-06-17 16:40:05 +00:00
Georg Richter 15563f8d91 fix for bug #33263 (mysqli_real_escape doesn't work in __construct) 2005-06-17 16:32:43 +00:00
Andrei Zmievski 987f6f8fcf *** empty log message *** 2005-06-17 16:24:01 +00:00
foobar c24bd1584c fix test - short_tags not allowed here! 2005-06-17 16:22:55 +00:00
Dmitry Stogov 2a314dbc47 Removed EX(fbc_constructor) (it is no longer needed) 2005-06-17 15:06:28 +00:00
Derick Rethans c41145799d - The incoming TS is GMT... but the hole filler wants local time so we
have to convert it.
- Change e-mail address
2005-06-17 14:54:00 +00:00
Derick Rethans 2492892fde - Add a couple of test files, which all still fail. 2005-06-17 14:21:53 +00:00
Derick Rethans 65530de209 - Simplify code a little. 2005-06-17 14:11:12 +00:00
foobar a81ac8d04b nuke unused variable 2005-06-17 13:12:31 +00:00
Derick Rethans f4de039522 - Rename tl_config.h to timelib_config.h 2005-06-17 12:03:04 +00:00
foobar 7c6ba77780 Use new dependency system 2005-06-17 11:48:17 +00:00
foobar 371135fa2c Use the new dependency system 2005-06-17 11:44:59 +00:00
foobar 78a5b7693c Use the new dependency system 2005-06-17 11:35:22 +00:00
Antony Dovgal baf8cadeff improve error messages when error raised from an internal class (do not hide class name) 2005-06-17 11:25:31 +00:00
Antony Dovgal 8d2dd7901c add news entry and test for bug #33382 2005-06-17 10:53:15 +00:00
Dmitry Stogov d1ee85c2dd Fixed bug #33277 (private method accessed by child class) 2005-06-17 10:50:45 +00:00
Antony Dovgal a32c1f9eee fix bug #33382 (array_reverse() fails after *sort())
no need to MFH - the bug existed only in HEAD
2005-06-17 10:50:15 +00:00
Dmitry Stogov f47c78487b Improved PHP extension loading mechanism with support for module dependencies and conflicts 2005-06-17 09:39:23 +00:00
Dmitry Stogov c0c7a9f010 Improved PHP extension loading mechanism with support for module dependencies and conflicts. 2005-06-17 09:36:26 +00:00
61b2fcc3ce ChangeLog update 2005-06-17 05:37:15 +00:00
Frank M. Kromann 37d672d2a3 Attempt to fix win32 build by creating the missing hader file 2005-06-17 05:10:12 +00:00
foobar a736f99e2f - Improve portability.
# TODO: The standalone lib needs it's own build stuff, pretty much same as
#       Zend has for standalone builds.
2005-06-16 23:12:10 +00:00
Marcus Boerger 7a7cda7a4c - Internal functions/methods can now return by reference 2005-06-16 23:02:23 +00:00
Ilia Alshanetsky 353e07f57b Fixed memory corruption. 2005-06-16 22:50:32 +00:00
Brian France cd8adc0cf2 ifdef'ed the code but not the includes 2005-06-16 22:35:11 +00:00
foobar a87d9876cf nuke unused entries 2005-06-16 22:03:04 +00:00
Johannes Schlüter f2fab902c4 fix typos 2005-06-16 21:27:51 +00:00
foobar ab285a85fd Fix VPATH build (again) 2005-06-16 21:23:16 +00:00
foobar 1d5397dde0 this is not an extension dir 2005-06-16 21:22:33 +00:00
Marcus Boerger e5df7fa8b2 - No more memory_limit for running tests 2005-06-16 18:58:04 +00:00
Derick Rethans ca16776087 - Fixed headers for FreeBSD
- Moved from ntohl to own macro
- Export timelib_dump_tzinfo
2005-06-16 18:34:42 +00:00
Derick Rethans c53cdf6dd8 - Added include dir. 2005-06-16 18:15:30 +00:00
Derick Rethans fb2b1606ba - Fix up tests, remove windows specific test. 2005-06-16 18:13:40 +00:00
Derick Rethans b7ea5dc5f4 - Move strtotime() related testcases to ext/date/tests. 2005-06-16 17:35:08 +00:00
Marcus Boerger 7f544adbb5 - Fix TSRM build 2005-06-16 17:29:29 +00:00
Derick Rethans 4ad939be1b - Rename "datetime.c" and "datetime.h" to "timelib.c" and "timelib.h" to
prevent duplicate header names.
2005-06-16 17:12:41 +00:00
foobar 34e0ba1f92 silence notices 2005-06-16 17:12:26 +00:00
foobar ba1aac47b7 typofix 2005-06-16 16:46:06 +00:00
Wez Furlong b680c5c5e1 Don't emit the E_STRICT dl-is-deprecated notice on SAPI's where dl() is widely (and safely) used.
This allows our test-suite to run in E_STRICT mode.
2005-06-16 15:36:39 +00:00
Dmitry Stogov f5e71d99d5 typo 2005-06-16 15:11:03 +00:00
Wez Furlong 4de4565710 Fix compile on win32 at least. 2005-06-16 15:03:36 +00:00
Dmitry Stogov aedbdb087d Allowed return by refrence from internal functions 2005-06-16 14:56:13 +00:00
Wez Furlong 43aa6922d3 Don't crash here if there are errors (such as failing to load extensions via
php.ini) during startup.
2005-06-16 14:54:51 +00:00
Stanislav Malyshev 999998ecaa rename to zend_ 2005-06-16 14:27:08 +00:00
Dmitry Stogov a6d84dbb82 Fixed bug #33318 (throw 1; results in Invalid opcode 108/1/8) 2005-06-16 14:20:00 +00:00
Zeev Suraski ff06fb72de Fixlet 2005-06-16 13:31:21 +00:00
Derick Rethans 7c264559b2 - Fixed a regression with "last saturday" 2005-06-16 13:30:26 +00:00
Dmitry Stogov faacd7f865 Compilation warnings 2005-06-16 12:26:44 +00:00
Dmitry Stogov c3e6a90808 ZEND_UNSET_DIM_OBJ is splitted to ZEND_UNSET_DIM and ZEND_UNSET_OBJ. 2005-06-16 12:17:39 +00:00
Stanislav Malyshev 87c9e68c91 export zval getters 2005-06-16 11:50:08 +00:00
Derick Rethans f847c6f948 - Update maintainers and credits. 2005-06-16 10:44:41 +00:00
Dmitry Stogov 3c1a774ddc USER_OPCODE API is improvet.
Implemented ability to dispatch from user handler to internal handler of another opcode.
2005-06-16 06:00:48 +00:00
65e57a8a2c ChangeLog update 2005-06-16 05:38:57 +00:00
Ilia Alshanetsky 73d503471c Fixed memory leak. 2005-06-15 23:42:55 +00:00
Ilia Alshanetsky 694585e1a8 Avoid double-free. 2005-06-15 23:30:20 +00:00
Ilia Alshanetsky c68b34c40f Added test for bug #33056. 2005-06-15 23:24:28 +00:00
Andrei Zmievski be0458269e WS fix 2005-06-15 21:20:26 +00:00
Andrei Zmievski ec09711101 Fix FCI cache for array_walk and user array compare functions. Bug
#33286. (Patch from m.bretz@metropolis-ag.de)
2005-06-15 20:51:33 +00:00
Dmitry Stogov 47676bc067 Fixed OS X compatibility 2005-06-15 19:05:55 +00:00
foobar 8d2afe0e57 - This does not have to be egrep here 2005-06-15 17:13:39 +00:00
Derick Rethans eb8b4fd4a1 - Make it compile cleanly with MS VC++ too, which is completely anal in some
cases.
2005-06-15 11:01:07 +00:00
foobar 55b0a90e91 typofix 2005-06-15 09:23:28 +00:00
foobar 97666ab4ef Show borked tests in the summary 2005-06-15 09:21:15 +00:00
Derick Rethans e56a091bf3 - Commit re-generated parser. 2005-06-15 09:09:04 +00:00
Edin Kadribasic d00b6bc170 Date will never be compiled as shared so this is not needed 2005-06-15 09:05:00 +00:00
Edin Kadribasic cc33e8f536 Nuke PHP_ prefix from timelib 2005-06-15 09:02:28 +00:00
Edin Kadribasic d1974bad1b Made date obligatory and static 2005-06-15 08:44:23 +00:00
Derick Rethans 6d7667267b - Hide the "Unexpected character..." message for now. 2005-06-15 07:58:21 +00:00
Derick Rethans 318c7aead7 - Commit fixed .c file with fixed re2c. 2005-06-15 07:43:05 +00:00
Derick Rethans 952a2c8234 - Whitespace and regenerate the .c file with my re2c. 2005-06-15 07:23:27 +00:00
Derick Rethans f858c193b6 - Rename macro to TIMELIB_TIME_FREE
#- Please do not use PHP_ prefixes as this library will also be packaged
#  outside of PHP.
2005-06-15 07:15:38 +00:00
e1573bf6e9 ChangeLog update 2005-06-15 05:33:04 +00:00
Edin Kadribasic 61d132cddc Export symbols 2005-06-15 00:23:14 +00:00
Edin Kadribasic dd9698a6cb Touch + manual fix for re2c bug where it forgets {} in static int scan() 2005-06-15 00:17:41 +00:00
Dan Scott 4187a6e3c7 Bring PDO_ODBC tests in sync with PDO base tests. 2005-06-15 00:17:18 +00:00
Edin Kadribasic 289997715a Make it compile on windows 2005-06-15 00:11:29 +00:00
Ilia Alshanetsky 2d92309797 more accurate timing function. 2005-06-14 23:59:29 +00:00
Ilia Alshanetsky 9392a1c9de Fixed memory leaks. 2005-06-14 23:40:57 +00:00
foobar 32b3d10174 fix VPATH builds + nuked unnecessary lines 2005-06-14 22:50:55 +00:00
Edin Kadribasic cde34a07b7 Added win32 build file 2005-06-14 22:25:48 +00:00
foobar 8d952c906f This test did not fit to the new interactive shell thing 2005-06-14 22:21:08 +00:00
foobar de504dce25 BFN 2005-06-14 22:19:50 +00:00
Derick Rethans 4fb4cac65c - Add my new timelib and ext/date. For now only strtotime() makes use of this. 2005-06-14 21:32:29 +00:00
Rob Richards f14292df21 Fixed bug #33340 (CLI Crash when calling php:function from XSLT) 2005-06-14 19:39:52 +00:00
foobar bad7aeeffb unify .cvsignore files 2005-06-14 13:26:09 +00:00
foobar 23ffaecc7d If the macro exists, use it, otherwise use the Makefile.frag 2005-06-14 13:09:23 +00:00
Ilia Alshanetsky aa52c68a7a bzero > memset 2005-06-14 13:09:04 +00:00
Dmitry Stogov ae37249fa9 Removed old executor 2005-06-14 12:55:48 +00:00
foobar 1c9a470cbc reordered + added msg to configure output for PHP_ZEND_VM 2005-06-14 12:23:26 +00:00
foobar 021389c4dc typofix 2005-06-14 11:47:57 +00:00
foobar fb95a19824 fix standalone build 2005-06-14 11:41:48 +00:00
1ef7bf6997 ChangeLog update 2005-06-14 05:32:30 +00:00
Sebastian Bergmann 1d9baf3dd5 ZTS fix. 2005-06-14 05:13:01 +00:00
Ilia Alshanetsky b36d4ae02c Added bindto socket context option. 2005-06-14 02:39:42 +00:00
foobar 8d91c1a46d Make this usable for header files too 2005-06-14 02:18:44 +00:00
foobar 1cd9875465 Partial revert: AC_DEFINE / PHP_HAVE_DEF need to be called once only per macro 2005-06-14 02:18:18 +00:00
foobar e5057f7c22 use PHP_CHECK_PDO_INCLUDES 2005-06-14 01:44:16 +00:00
foobar 334f5d87ff Allow different things to be done when found / not-found 2005-06-14 01:43:53 +00:00
foobar 8eeff6d2d4 - Fixed some places which might cause problems
- Changed the "general" flavour to have libname parameter (given without the
  lib prefix of course)
# bug #33316 should be fixed now too
2005-06-14 01:42:31 +00:00
foobar 15cf2a60b0 - Added PHP_CHECK_PDO_INCLUDES macro (caches the result) 2005-06-14 00:00:53 +00:00
foobar ee28f62dc0 ws 2005-06-13 23:37:20 +00:00
Hartmut Holzgraefe 6d6630a250 added news item for GLOB_ERR fix 2005-06-13 22:20:05 +00:00
Edin Kadribasic 60b465fc5b MFB: MSVC++ 6.0 doesn't support long long type 2005-06-13 19:33:39 +00:00
Dmitry Stogov 14b80ad199 Specializer optimization 2005-06-13 17:50:07 +00:00
Dmitry Stogov cec2347c96 Fixed bug #33212 ([GCC 4]: 'zend_error_noreturn' aliased to external symbol 'zend_error').
The fix is not tested on Solaris and DARWIN!
2005-06-13 11:22:59 +00:00
Antony Dovgal 2a128504a2 destroy session after destroying error handle
SQLT_CHR is allowed too
2005-06-13 09:30:49 +00:00
foobar 54d85cbfda - Fixed bug #31256 (PHP_EVAL_LIBLINE configure macro does not handle -pthread) 2005-06-13 08:44:47 +00:00
Dmitry Stogov e6dcba6052 Fixed bug #33312 (ReflectionParameter methods do not work correctly) 2005-06-13 07:55:08 +00:00
beeac8672e ChangeLog update 2005-06-13 05:32:00 +00:00
Ilia Alshanetsky ba93fc60af Removed unused var. 2005-06-12 17:07:20 +00:00
Hartmut Holzgraefe 55b5376d19 Support for GLOB_ERR so that glob() reports permission problems (Bug #28355) 2005-06-12 07:53:24 +00:00
88141e3ed0 ChangeLog update 2005-06-12 05:40:34 +00:00
Hartmut Holzgraefe d5adc7ceff thinko fix (E_COMMIT_AFTER_MIDNIGHT) 2005-06-12 01:13:24 +00:00
Hartmut Holzgraefe 4440d3897e Removed bogus fix for bug #28355 (it was dead code anyway) 2005-06-12 00:59:04 +00:00
foobar 8030941485 revert 2005-06-11 23:53:21 +00:00
foobar 7a794caed0 Another netware fix 2005-06-11 23:32:46 +00:00
foobar dddac3e86e Merge the bug fix entries from PHP_5_0 branch 2005-06-11 20:19:34 +00:00
foobar 467db93099 regenerated with re2c 0.9.7 2005-06-11 18:00:37 +00:00
Andi Gutmans 16bbd70cd5 - Back to -dev 2005-06-11 17:03:42 +00:00
Andi Gutmans e0787f3d24 - b2 (will post it to internals@) 2005-06-11 16:59:24 +00:00
Wez Furlong 986800ce88 hunting for a bug. Looks like it might be yet-another-mysterious-shutdown problem. 2005-06-11 14:48:06 +00:00
Dan Scott b21bf3d357 PDO_ODBC returns strings for all data types. Bring expected output in line. 2005-06-11 14:01:46 +00:00
Wez Furlong ecce72aa83 become a better config.m4 citizen 2005-06-11 13:27:50 +00:00
Wez Furlong 183c8aa287 Fix for PECL #3714: beginTransaction doesn't work if you're in auto-commit mode. 2005-06-11 12:38:12 +00:00
Wez Furlong 13ac7169af and the lesson is, test everything before you commit at 2am 2005-06-11 12:36:12 +00:00
7e4be5c520 ChangeLog update 2005-06-11 05:40:37 +00:00
Wez Furlong f124c2086e couple of conceptual errors here 2005-06-11 02:50:20 +00:00
Andi Gutmans 0638c657e1 - Back to -dev 2005-06-10 18:29:10 +00:00
Andi Gutmans 3b1f8e9ad7 - Go with 5.1.0b1 2005-06-10 18:06:43 +00:00
Andi Gutmans 014a49f608 - Go with Beta 1
- Merged 5.0.x news and nuked anything prior to 5.0.0 release
2005-06-10 16:55:27 +00:00
foobar 058205b67d - Fix phpize: need to eval path variables for them to be usable 2005-06-10 12:33:59 +00:00
Dmitry Stogov c7b62187e5 Add some entries that was forgotten 2005-06-10 12:27:07 +00:00
Dmitry Stogov 46e4c9837d Added test for bug #30162 (it is already fixed but test file was forgotten) 2005-06-10 10:46:04 +00:00
Dmitry Stogov 4796fc943a Added test file for bug #31177 (not fixed yet) 2005-06-10 10:45:14 +00:00
Dmitry Stogov dc95b1bd32 typos 2005-06-10 10:23:37 +00:00
Dmitry Stogov 26c3944d9c Fixed support for ZEND_ACC_SHADOW in ReflectionProperty constructor 2005-06-10 10:22:36 +00:00
Dmitry Stogov 84b96e9b03 Fix so that extensions like xdebug, can overload opcodes in all execution modes including goto/switch 2005-06-10 09:54:38 +00:00
Dmitry Stogov 6efa17c2a1 Merge three opcodes (ZEND_NEW, ZEND_JMP_NO_CTOR, ZEND_INIT_CTOR) into one (ZEND_NEW). There was no real reason for this anymore and API should be changed before 5.1 2005-06-10 07:56:40 +00:00
Wez Furlong a5135f4528 Patch from zhao ming sen. 2005-06-10 06:32:36 +00:00
Wez Furlong fcff6a079a "Fix" PECL #4411
SPL is not initialized before PDO, so inheriting from SPL's runtime exception class gives PDO a broken exception class.
We don't currently have a way to express this kind of "soft" dependency in the build system, so I'm disabling inheriting from the runtime exception for now.
2005-06-10 06:11:29 +00:00
Wez Furlong 711b4e0043 implement the 'request shutdown' hook; this allows us to register UDFs on
persistent handles safely. (it is dangerous to keep them registered between
requests, as there are 0 guarantees that functions with the same name are even
present on the next hit, let alone that the zvals we cache point to the right
place.
2005-06-10 05:49:48 +00:00
Wez Furlong 49e7b3da4c Fix a dumb bug that would effecively ignore persistent connections and create a
new one each time.

Add a hook for persistent connections: it is called when the object goes out of
scope, and offers the driver an opportunity to release per-request scoped data
at the right time.

This hook is used by pdo_sqlite to unregister UDFs, which are dangerous to keep
registered between requests.
2005-06-10 05:47:55 +00:00
3ff7178126 ChangeLog update 2005-06-10 05:32:48 +00:00
Wez Furlong 6cc74b0e39 add sqliteCreateAggregate() 2005-06-10 05:17:47 +00:00
Wez Furlong 41421c7d7a finish implementation of sqliteCreateFunction(). 2005-06-10 04:04:43 +00:00
Wez Furlong 5c16028eb5 initialize type of function 2005-06-10 04:03:43 +00:00
Wez Furlong be76bd5278 work in progress on UDF.
Something is hokey in HEAD, checking it in to try it on another box.
2005-06-10 02:50:37 +00:00
Stanislav Malyshev 648522ab98 #29689 2005-06-09 17:22:06 +00:00
Stanislav Malyshev 2cb52151ac MF50: fix #29689 and more private property problems 2005-06-09 17:20:44 +00:00
Stanislav Malyshev b2f7dd2f66 add test for this TBF bug 2005-06-09 17:16:13 +00:00
Stanislav Malyshev b83a2603b3 disallow abstrace private methods 2005-06-09 17:12:54 +00:00
Dmitry Stogov 59a46c34fa Fixed double call to php_stream_close() on compiler errors 2005-06-09 16:57:43 +00:00
Ilia Alshanetsky 3341b5dedd Fixed compiler warning. 2005-06-09 16:13:14 +00:00
Wez Furlong fc92678b05 add --enable-memory-manager switch for win32 too 2005-06-09 13:09:04 +00:00
Wez Furlong a4874a5533 hmm, backing out this change, as it seems to cause problems with user-space
streams and filters (the ZE needs to close them before it blows away the
user-space code.

Noticed by Dmitry.  Still need to find out how to avoid double-closing streams.
2005-06-09 12:15:14 +00:00
Dmitry Stogov e0b0ae9ce7 Fixed bug #25922 (In error handler, modifying 5th arg (errcontext) may result in seg fault) 2005-06-09 10:32:08 +00:00
Dmitry Stogov f3ebf7dd91 Fixed bug (Crash on Windows and ZTS) that was introduced with fix for bug #26456 2005-06-09 08:52:51 +00:00
Dmitry Stogov 4c0970bec6 Fixed reference counting and probable crash on fclose() or shutdown 2005-06-09 08:19:30 +00:00
Dmitry Stogov 992a187eb1 Fixed array type autodetection (use namespace name, but not the namespace prefix
)
2005-06-09 08:17:37 +00:00
92c5fb8368 ChangeLog update 2005-06-09 05:41:03 +00:00
Ilia Alshanetsky 0c6368d44b Fixed bug #33268 (iconv_strlen() works only with a parameter of < 3 in length) 2005-06-08 23:49:38 +00:00
Frank M. Kromann 1f33f5cb96 USE_ZEND_ALLOC should be defined here too. 2005-06-08 20:50:44 +00:00
Dmitry Stogov 72c6d5cbaf Fixed memory allocation bugs in array_reduce() with initial value (#22463 & #24980) 2005-06-08 19:54:24 +00:00
Dmitry Stogov cf5a6f81e3 Fixed zval_ptr_dtor(&return_value) on uninicialized zval 2005-06-08 19:51:56 +00:00
Dmitry Stogov 87df726f05 Fixed exception handling in getIterator() callback (bugs #26229 & #30725) 2005-06-08 18:54:04 +00:00
Dmitry Stogov d873ecb29c Fixed valgrind errors 2005-06-08 18:11:06 +00:00
Dmitry Stogov 9cf513dfea Fixed ReflectionClass::setStaticPropertyValue() 2005-06-08 17:08:06 +00:00
foobar 03389f8206 Hopefully fixes win32 builds 2005-06-08 15:57:17 +00:00
Dmitry Stogov 415ec46927 Fixed incorrect usage of zend_mangle_property_name() (valgrind errors) 2005-06-08 15:48:12 +00:00
Dmitry Stogov 55cdb7c043 Fixed lookups for previos opcodes 2005-06-08 15:01:35 +00:00
Dmitry Stogov 9affa32237 Fixed bug #30140 (Problem with array in static properties) 2005-06-08 13:21:28 +00:00
Dmitry Stogov a95db2790d Added test for bug #32322 (Return values by reference broken( using self::),example singleton instance) 2005-06-08 08:43:38 +00:00
Dmitry Stogov 0a08f62d21 Fixed test file affected by fix for bug #30820 (static member conflict with $this->member silently ignored) 2005-06-08 08:08:37 +00:00
Dmitry Stogov d02d270f48 Fixed bug #30820 (static member conflict with $this->member silently ignored) 2005-06-08 08:08:18 +00:00
Dmitry Stogov 0a44789bf3 Fixed bug #30961 (Wrong linenumber in ReflectionClass getStartLine()) 2005-06-08 06:49:01 +00:00
79ca149b75 ChangeLog update 2005-06-08 05:39:00 +00:00
266290176b ChangeLog update 2005-06-08 00:40:35 +00:00
foobar d3f1bf4c35 - Fix paths when using --libdir and --includedir configure options 2005-06-07 21:56:09 +00:00
foobar 7101cd821a - It is nice to close the script with ?>.. 2005-06-07 21:39:54 +00:00
Dmitry Stogov 58a0ee09c3 Fixed bug #26456 (Wrong results from Reflection-API getDocComment() when called via STDIN) 2005-06-07 18:11:56 +00:00
foobar eaa3d6c5ec -Moved --disable-zend-memory-manager where it belongs 2005-06-07 17:22:40 +00:00
foobar 8e2efc351b - Show "none" when nothing is found 2005-06-07 16:47:33 +00:00
Dmitry Stogov 84392e5e7f Fixed memory allocation bugs. Probably this patch should fix bug #31725. 2005-06-07 15:39:35 +00:00
Ilia Alshanetsky 7e8bd05c89 Fixed ZTS build. 2005-06-07 14:01:36 +00:00
Derick Rethans 7a3dbcd1c4 - Added the --disable-zend-memory-manager switch to disable the Zend memory
manager.
#- I discussed this with Dmitry today - we found it useful.
2005-06-07 13:36:08 +00:00
Derick Rethans 401902b8a5 - Not sure why this wasn't committed... 2005-06-07 13:19:09 +00:00
Dmitry Stogov fac2718edd Fixed memory leak in debug_print_backtrace() 2005-06-07 13:14:23 +00:00
foobar bf94716838 - Allow doing --with-mysql --with-mysqli (no mysql libs are bundled atm)
- Make sure MYSQL_DIR is empty.
2005-06-07 12:39:02 +00:00
Dmitry Stogov 4658513d70 fixed memory leak in bug #28972 ([] operator overflow treatment is incorrect), not the bug itself. 2005-06-07 10:21:52 +00:00
Derick Rethans f07eed91c4 - MF44: Problems with user defined error handler and references 2005-06-07 10:01:30 +00:00
Dmitry Stogov 055e889bbd Fixed bug #33243 (ze1_compatibility_mode does not work as expected) 2005-06-07 07:03:28 +00:00
Dmitry Stogov 20d7e52a53 Enabled test for <any> 2005-06-07 05:37:38 +00:00
5b9bb8db6b ChangeLog update 2005-06-07 00:35:54 +00:00
Wez Furlong f9de2a3dbd fix build on Solaris 2005-06-06 22:04:14 +00:00
foobar 61e9d432d9 silence warning 2005-06-06 22:01:41 +00:00
Wez Furlong f1569c199e test commit 2005-06-06 17:47:49 +00:00
Brad House fccdf78ee8 libmonetra-5.0 sync.
added m_validateidentifier, which is enabled by default to keep invalid pointer addresses from causing PHP to crash
kept compatability with older versions of libmonetra.
2005-06-06 16:43:26 +00:00
Ilia Alshanetsky e3d8886bcd Better storage size for output length.
# Thanks to Stefan for noticing the problem.
2005-06-06 16:30:46 +00:00
Derick Rethans e2e1bf6b0c - Regenerate VM files and add warning about regeneration 2005-06-06 15:17:20 +00:00
Derick Rethans 941f16914d - MH44: Problems with user defined error handler and wrong usage of references 2005-06-06 13:09:23 +00:00
Derick Rethans c6ae4a98be - Fixed bug #33242 (Mangled error message when stream fails). 2005-06-06 12:39:57 +00:00
Dmitry Stogov 91a344a504 Fixed bug #32428 (The @ warning error supression operator is broken) 2005-06-06 11:20:46 +00:00
Dmitry Stogov ce23692663 Fixed bug #32799 (crash: calling the corresponding global var during the destruct) 2005-06-06 10:38:43 +00:00
Dmitry Stogov e5d3e07862 Added test for bug #32596 (Segfault/Memory Leak by getClass (etc) in __destruct) 2005-06-06 09:50:40 +00:00
Dmitry Stogov 61054dbcd0 Fixed bug #32993 (implemented Iterator function current() don't throw exception) 2005-06-06 08:24:05 +00:00
Dmitry Stogov cd88e646fd Fixed bug #33171 (foreach enumerates private fields declared in base classes) 2005-06-06 07:52:08 +00:00
Marcus Boerger acd747d374 - Expose -a as special mode and show whether it is a shell or not 2005-06-06 07:11:08 +00:00
Wez Furlong 6b29526617 Don't crash when compiled with the zend memory manager disabled. 2005-06-06 01:52:18 +00:00
Wez Furlong 42ada22e0c Avoid double-freeing streams.
This can happen because all streams are registered as resources;
the engine also tracks them in the open_files global.

Avoid the potential for double-freeing by simply making streams exposed to the
engine have no closer for the engine to call; they will already be in the
resource list, and thus will be shut down properly at request end.
2005-06-06 01:51:48 +00:00
fc8aace243 ChangeLog update 2005-06-06 00:35:16 +00:00
Wez Furlong e9d474dc01 fixes for #33251 2005-06-05 19:25:01 +00:00
Wez Furlong 05cec1dbce don't screw up the default fd set size when --disable-all is used 2005-06-05 19:19:09 +00:00
Ilia Alshanetsky a13aaa8aef Fixed bug #33070 (Improved performance of bzdecompress() by several orders
of magnitude).
2005-06-05 18:04:20 +00:00
foobar c28f59a1d5 - Proper fix for phpize when dealing with PECL 2005-06-05 12:58:59 +00:00
Wez Furlong b227a51201 make "nmake install" more verbose. 2005-06-05 02:33:26 +00:00
Wez Furlong 664faf8411 Add option for placing the big binaries outside of the source tree.
I find that having Debug_TS sitting in the source tree makes cvs seem much slower.
2005-06-05 01:57:03 +00:00
Wez Furlong 2a8107ce69 tweaks for a recent addition to cygwin 2005-06-05 01:39:07 +00:00
8f6ed7b085 ChangeLog update 2005-06-05 00:35:24 +00:00
Zeev Suraski 5d880ee78c __halt_compiler() patch interface 2005-06-04 16:16:53 +00:00
Zeev Suraski d33500ee20 Thought I committed it ages ago... Anyway, without further delays, the final
__halt_compiler() patch
2005-06-04 16:16:19 +00:00
09c2da0d07 ChangeLog update 2005-06-04 00:35:41 +00:00
foobar 83dff0b68b nuke crap, end scripts always with ?> 2005-06-03 23:13:23 +00:00
foobar 51eebc6096 cs + ws 2005-06-03 23:11:51 +00:00
Magnus M��tt� 1182dd48e9 Add skipif, test requires iconv. 2005-06-03 22:51:10 +00:00
foobar fd07bc5e6b nuke duplicate code 2005-06-03 22:09:22 +00:00
Dmitry Stogov e3cfb42bbd Added test for 5.0 specific bug #30394 (Assignment operators yield wrong result with __get/__set) 2005-06-03 15:38:32 +00:00
Dmitry Stogov 89e53d5ab2 Fixed bug #30080 (Passing array or non array of objects) 2005-06-03 15:02:49 +00:00
Dmitry Stogov 6b39b374ef Fixed bug #27598 (list() array key assignment causes HUGE memory leak) 2005-06-03 13:57:26 +00:00
Dmitry Stogov 3d7b0bab28 Fixed memory allocation bugs related to magic object handlers (__get(), __set(),
...)
2005-06-03 11:16:19 +00:00
Georg Richter d486da963e added new function mysqli_get_charset 2005-06-03 08:49:01 +00:00
George Schlossnagle d3a665248d [Move from branch]
On architectures that support va_copy (specifically x86_64 linux distros),
if you use va_list args more than once, you can corrupt memory - you
need to use va_copy instead.  man va_copy for details.

Also, derefrencing a void * to a long on 64 bit is totally uncool.
2005-06-03 07:34:49 +00:00
c015c522f3 ChangeLog update 2005-06-03 00:34:04 +00:00
foobar 2fa74dab0e - Revert previous change in build/libtool.m4 and make sure
the PATH_SEPARATOR check is only done under autoconf 2.13.
# fixes also the php-gtk buildconf probs
2005-06-02 21:36:38 +00:00
foobar cb5a9f534a - Fixed bug #28605 (Need to use -[m]ieee option for Alpha CPUs) 2005-06-02 21:29:24 +00:00
Antony Dovgal 56a68b5be1 fix bug #33222 (segfault when CURL handle is closed in a callback).
fix segfaults when CURL callback functions throw exception.
2005-06-02 21:04:12 +00:00
foobar 2018d2df32 We only need LEMON for bundled stuff 2005-06-02 20:06:37 +00:00
Antony Dovgal 7e450f528c fix bug #33214 (odbc_next_result does not signal SQL errors with 2-statement SQL batches).
Path by rich at kastle dot com.
2005-06-02 15:40:45 +00:00
Derick Rethans ad21bb1baa - That should have been removed, not commented out. 2005-06-02 08:51:20 +00:00
Derick Rethans 90f4590d87 - Fixed memory corruption in stristr(). 2005-06-02 08:29:37 +00:00
foobar f887ae2e80 touch 2005-06-02 05:49:56 +00:00
f58c83135d ChangeLog update 2005-06-02 00:35:34 +00:00
Ilia Alshanetsky fd396287d0 Fixed bug #33210 (relax jpeg recursive loop protection). 2005-06-01 22:28:03 +00:00
Antony Dovgal 29319a81b8 fix typo
(see details here: http://news.php.net/php.internals/16350)
2005-06-01 18:27:50 +00:00
Dmitry Stogov 8b134356ef Disabled search of recored separator outside of buffer 2005-06-01 15:11:44 +00:00
Dmitry Stogov b41a7ad18a Fixed bug #32941 (Sending structured SOAP fault kills a php) 2005-06-01 14:43:13 +00:00
Dmitry Stogov 9383e1b858 Fixed bug #30791 (magic methods (__sleep/__wakeup/__toString) call __call if object is overloaded) 2005-06-01 11:03:58 +00:00
Dmitry Stogov 28446a4e45 Fixed "refcount" counting for autoglobals 2005-06-01 09:44:10 +00:00
Ilia Alshanetsky f28249f779 kill unused var. 2005-06-01 03:01:29 +00:00
fc8ae455df ChangeLog update 2005-06-01 00:35:10 +00:00
Dmitry Stogov 84fef05939 Fixed possible memory corruption on request shutdown
`valgrind -q --tool=memcheck sapi/cli/php tests/reflection/001.phpt`
2005-05-31 17:42:15 +00:00
Dmitry Stogov dac8f964f2 Fixed usage of uninicialized variable 2005-05-31 14:35:55 +00:00
Magnus M��tt� 80eb74e4fe Fix test 2005-05-31 13:46:17 +00:00
foobar 156a908997 - Fixed bug #33200 (preg_replace(): magic_quotes_sybase=On makes 'e' modifier misbehave) 2005-05-31 12:54:56 +00:00
Dmitry Stogov 747074f988 Reverted wrong fix for bug #30572.
Seems the bug was already fixed in other way.
But reverted patch produced a lot of valgrind errors, because IS_TMP_VAR operands don't initialize refcount.
2005-05-31 11:16:51 +00:00
foobar 8defc849cc Touch 2005-05-31 09:41:46 +00:00
foobar b185ee0315 - Fixed bug with unserialize() with "exotic" letters in class names
# Patch by: Christian Schneider <cschneid@cschneid.com>
2005-05-31 09:41:36 +00:00
Marcus Boerger 4f9a2bed42 - Only allow changing return ref agnostic when a script method overrides an
internal method (found by dmitry)
2005-05-31 09:06:43 +00:00
125f153dd8 ChangeLog update 2005-05-31 00:34:29 +00:00
Ilia Alshanetsky b28b401c78 Fixed bug #33164 (Soap extension incorrectly detects HTTP/1.1). 2005-05-30 23:46:08 +00:00
Marcus Boerger ae35d25940 - Update 2005-05-30 20:10:38 +00:00
Hartmut Holzgraefe f41bf6123b typo fix 2005-05-30 15:57:54 +00:00
foobar 9b57f5ff36 - Fixed bug #33185 (--enable-session=shared does not build) 2005-05-30 15:14:12 +00:00
Hartmut Holzgraefe 43ba3897c2 gracefully handle changes of the parse.y lemon file,
process it with lemon if available, else just keep the .c file from CVS
not doing so leads to make using its implicit .y->.c rule here and
bison doesn't really understand lemon syntax
2005-05-30 14:15:40 +00:00
foobar abfc90fb60 - Use libtool also for completely static builds 2005-05-30 10:56:13 +00:00
foobar 5fee97ca33 - Changed the PATH_SEPARATOR check to a macro
- Made sure we're generating aclocal.m4 in same way with both buildconf
  and phpize.
# Bug #33177
2005-05-30 06:55:20 +00:00
foobar 4094bf77c5 Removed the empty $bin_src_SCRIPTS (no longer needed), bug #33166 2005-05-30 06:33:45 +00:00
59fb0f2e8b ChangeLog update 2005-05-30 00:33:47 +00:00
foobar a20383ba06 - Unify the "configure --help" texts 2005-05-29 23:17:16 +00:00
foobar d12196e575 Fix VPATH build 2005-05-29 23:15:16 +00:00
Hartmut Holzgraefe 522159468c simplify flex version test 2005-05-29 19:28:34 +00:00
Hartmut Holzgraefe d1f653bd08 forgot to re-add 1.875 as a valid bison version after testing 2005-05-29 18:56:18 +00:00
Hartmut Holzgraefe fce59d9dae bison may be installed under a different executable name, e.g.
YACC="bison-1.75" configure ...

removing the check for "bison -y" allows for this
the check was redundant anyway as the following one filters
for "GNU Bison" in the --version output
2005-05-29 18:50:03 +00:00
Hartmut Holzgraefe af14bbe455 avoid code duplication in bison version test 2005-05-29 18:04:35 +00:00
Hartmut Holzgraefe 10f21b3bca added .cxx extension for C++ for completeness reasons 2005-05-29 16:59:58 +00:00
Ilia Alshanetsky c24900dfa4 Added an optional remove old session parameter to session_regenerate_id(). 2005-05-29 16:51:25 +00:00
Hartmut Holzgraefe afaabbe5f7 m4 comments start with 'dnl', *not* with '#' 2005-05-29 16:34:43 +00:00
23a7bc0203 ChangeLog update 2005-05-29 00:34:21 +00:00
Marcus Boerger 4918b67ac5 - Make zend_do_inheritance ZEND_API 2005-05-28 10:24:56 +00:00
Sebastian Bergmann ce1dfefd26 Sync with config.m4 (missing MATCH_LIMIT broke the Win32 build). 2005-05-28 06:30:46 +00:00
b43240dfcf ChangeLog update 2005-05-28 00:40:27 +00:00
Andrei Zmievski b7644c85e5 No need to include ucp.c and ucptypetable.c here. 2005-05-27 18:02:02 +00:00
Andrei Zmievski 4e72f8a298 Upgrade library to version 5.0. 2005-05-27 17:46:43 +00:00
Dmitry Stogov 743c5bb15b Fixed bug #22836 (returning reference to uninitialized variable) 2005-05-27 16:18:07 +00:00
foobar b74a5eac59 - Make sure EGREP and SED get set early enough. 2005-05-27 13:15:47 +00:00
foobar 9ef2ea19e5 - Use $SED and $EGREP where possible 2005-05-27 13:10:01 +00:00
foobar ab94914a4b - Update bundled libtool to 1.5.18 (latest atm)
# Fixes several issues with more exotic systems (AIX,HPUX,etc)
2005-05-27 13:06:06 +00:00
cbee2d697b ChangeLog update 2005-05-27 00:34:54 +00:00
Andrei Zmievski 3d2944863c Do a cache flush if we detect possible cache corruption (same as for
PCRE).
2005-05-26 21:48:35 +00:00
Marcus Boerger 9b3929a7e9 - Need to make PDO::__construct() final to prevent SEGV it isn't called 1st 2005-05-26 18:36:18 +00:00
Dmitry Stogov d2018ef2c0 Fixed bug #33116 (crash when assigning class name to global variable in __autoload). 2005-05-26 14:28:24 +00:00
Dmitry Stogov 1a72341328 Added array type hinting. (This patch requires full re-make) 2005-05-26 13:46:17 +00:00
Marcus Boerger 3453cf642a - Add new tests 2005-05-26 12:22:18 +00:00
Marcus Boerger 457d556f66 - Make SQLiteDatabase derivable by dropping final tag from class and
making the ctor final to ensure it is being called, which is the problem.
2005-05-26 11:53:16 +00:00
Ilia Alshanetsky fddaa54410 Added scheme validation for parse_url(). 2005-05-26 03:56:21 +00:00
ff525e55df ChangeLog update 2005-05-26 00:39:15 +00:00
Dmitry Stogov 1add2cc70e Fixed bug #29971 (variables_order behaviour) 2005-05-25 17:41:50 +00:00
Stanislav Malyshev 47294288fe fix is_object() on non-php objects 2005-05-25 10:57:40 +00:00
Ilia Alshanetsky 266f2fbf13 Return error on an invalid input to mime_content_type() function. 2005-05-25 03:05:47 +00:00
d2371d58cd ChangeLog update 2005-05-25 00:34:12 +00:00
Andrei Zmievski 79742f81a2 Flush regexp cache if we detect corruption. 2005-05-24 21:07:32 +00:00
Marcus Boerger 309025e8c1 - Small fix (found by joerg) 2005-05-24 17:59:42 +00:00
foobar 396affc81e nuked unused header file 2005-05-24 15:24:33 +00:00
foobar e2999b154f nuked file 2005-05-24 15:16:24 +00:00
foobar 158605a267 - Remove unused file 2005-05-24 15:16:04 +00:00
Marcus Boerger 2ac0540323 - Add test for deriving PDO 2005-05-24 14:26:22 +00:00
Marcus Boerger 88157ad284 - Add new tests for PDO_FETCH_INTO 2005-05-24 12:39:09 +00:00
Antony Dovgal 041b37b2b9 make it compile on Win32 (thanks to Sebastian for noticing) 2005-05-24 10:13:52 +00:00
foobar e4c6d7708e - Moved ingres_ii to PECL 2005-05-24 08:40:59 +00:00
7b442413d7 ChangeLog update 2005-05-24 00:33:57 +00:00
Ilia Alshanetsky d367b7b913 Fixed bug #32810 (temporary files not using plain file wrapper). 2005-05-23 21:48:51 +00:00
Antony Dovgal d4db964aed revert by Wez's request 2005-05-23 15:36:58 +00:00
Grant Croker b841969760 - Allows the Ingres extenstion to be built on Linux/UNIX as well as Windows. 2005-05-23 15:33:00 +00:00
Grant Croker 2f044696a6 - Fixed bug #30593 (--with-ingres option generates broken Makefile). 2005-05-23 12:34:34 +00:00
Antony Dovgal 201fbc48e6 fix bug #32810 (fread after tmpfile() reads only 8192 bytes) 2005-05-23 11:51:53 +00:00
Antony Dovgal ef111b8364 fix test 2005-05-23 11:38:24 +00:00
foobar 22c5e8a6ea - Fixed bug #33017 (make distclean give error outside of php-src) 2005-05-23 09:37:34 +00:00
foobar 26d7b7fbc0 CS fix 2005-05-23 06:46:25 +00:00
Dmitry Stogov 1417cbaf30 Handling responses with Content-Lenght: 0 2005-05-23 06:25:16 +00:00
25108c37ca ChangeLog update 2005-05-23 00:34:48 +00:00
Ilia Alshanetsky 17c7d35208 Adjust highlight test. 2005-05-22 16:40:26 +00:00
Ilia Alshanetsky 76c05604a6 Fixed bug #29338 (unencoded spaces get ignored after certain tags). 2005-05-22 16:40:06 +00:00
Antony Dovgal a186549ec0 fix compile warning 2005-05-22 12:57:26 +00:00
Stanislav Malyshev 6ba1dd9cbc fix leak 2005-05-22 11:10:38 +00:00
a8a305966c ChangeLog update 2005-05-22 00:33:30 +00:00
Rasmus Lerdorf 4688093cdc Avoid syntax errors on some operating systems 2005-05-21 18:42:39 +00:00
Rasmus Lerdorf c1ef105535 Fixed bug 33072 - safemode/open_basedir check for runtime save_path change 2005-05-21 17:37:56 +00:00
Marcus Boerger 0eb7282f98 - fetchSingle() was renamed to fetchColumn() 2005-05-21 14:47:33 +00:00
Georg Richter 230681b0b3 enabled set_charset for MySQL Versions >= 5.0.6
added testcase for bug #33090
2005-05-21 08:46:46 +00:00
Georg Richter 3e416f738c fix for bug #33090 (mysql_prepare doesn't return error) 2005-05-21 08:38:53 +00:00
d459f26b62 ChangeLog update 2005-05-21 00:33:59 +00:00
Rob Richards 022461d976 - correct fix for bug #33059
- fix issue in other methods
2005-05-20 15:01:38 +00:00
Antony Dovgal 4ce95ef1ea fix bug #33076 (str_ireplace() incorrectly counts result string length and may cause segfault)
add test
2005-05-20 14:23:42 +00:00
foobar 66fbe9e73c Update bundled shtool to 2.0.1 (see also bug #33023) 2005-05-20 13:45:13 +00:00
Antony Dovgal 8f5ecf6da8 fix bug #32944 (Disabling session.use_cookies doesn't prevent reading session cookies) 2005-05-20 10:27:49 +00:00
5f6d5e4fb3 ChangeLog update 2005-05-20 00:33:33 +00:00
Rasmus Lerdorf e56660a1ad Correct handling of the UNSAFE_RAW filter 2005-05-19 21:08:04 +00:00
Rasmus Lerdorf 091bff3570 Fix for bug #33057 - Don't send extraneous entity-headers on a 304 as per
RFC 2616 section 10.3.5
2005-05-19 15:57:45 +00:00
Marcus Boerger b45fb630d9 - Add ability to reference the object itself
- Add ability to exchange the refrenced object
- Add ArrayObject::getFlags/setFlags and 2nd param to __construct to
  control operation modes
2005-05-19 15:52:02 +00:00
Marcus Boerger cccdec3577 - Update tests after correcting internal order of actions 2005-05-19 15:49:44 +00:00
Ilia Alshanetsky e117b6bad2 Fixed bug #33059 (crash when moving xml attribute set in dtd). 2005-05-19 13:47:21 +00:00
Dmitry Stogov 6e9e5b099c Strict warnings 2005-05-19 09:58:23 +00:00
99415eacbb ChangeLog update 2005-05-19 00:38:50 +00:00
Ilia Alshanetsky fa0e534f83 Various compiler warning fixes. 2005-05-18 22:40:56 +00:00
Stanislav Malyshev 92c8c09da5 fix for #29890 - part 2 2005-05-18 18:10:24 +00:00
Stanislav Malyshev 3af3379a27 test 2005-05-18 18:08:02 +00:00
Stanislav Malyshev ba7123fc9b fix #29890 - crash when function call fails 2005-05-18 18:02:50 +00:00
Stanislav Malyshev 94666dcfb6 revert - seems to be fixed elsewhere 2005-05-18 15:30:35 +00:00
Stanislav Malyshev e04666ae20 fix #30451 static properties don't work properly 2005-05-18 15:14:36 +00:00
Stanislav Malyshev b03b79c985 tests 2005-05-18 14:56:34 +00:00
389b1abc16 ChangeLog update 2005-05-18 00:33:43 +00:00
Ilia Alshanetsky 53ee348165 Make unix domain sockets work. 2005-05-17 23:23:52 +00:00
Ilia Alshanetsky 57aa3b984b Removed define checks that break the build. 2005-05-17 20:08:53 +00:00
Ilia Alshanetsky 746b89df16 Fixed type mixup. 2005-05-17 19:33:03 +00:00
Magnus M��tt� 2ebda52b24 Fix tests. 2005-05-17 17:34:44 +00:00
Johannes Schlüter bb6f4dfc7d - Fix readline loop-condition
- Fix cli_is_valid_code detection
2005-05-17 14:33:15 +00:00
Antony Dovgal 5cd3bd2ea7 gdImageGifCtx() is always available in bundled lib 2005-05-17 12:22:51 +00:00
Ilia Alshanetsky def27b9959 As per PDO meeting on PHP|Tropics fetchSingle is being renamed to
fetchColumn and now supports specification of the column to retrieve.
2005-05-17 01:41:51 +00:00
35f8741111 ChangeLog update 2005-05-17 00:33:24 +00:00
Sara Golemon c281eb38ae Unterminated paren group in BETHREADS definition of tsrm_tls_set() macro 2005-05-16 22:46:05 +00:00
Edin Kadribasic 9af73f68ef Sync with config.m4 2005-05-16 17:34:44 +00:00
Antony Dovgal d5bb03b11a fix bugs #32742 (segmentation fault when the stream with a wrapper is not closed),
#32171 (Userspace stream wrapper crashes PHP)
2005-05-16 08:37:14 +00:00
89316046c9 ChangeLog update 2005-05-15 00:33:59 +00:00
Wez Furlong e8cd91adee Allow it build with PHP 5.0.x and up again. 2005-05-14 20:06:54 +00:00
Marcus Boerger 51fe495ea1 - Add command completion to CLI's -a mode 2005-05-14 19:33:18 +00:00
Marcus Boerger 626d781afd - Execute both RecursiveIteratorIterator::beginChildren() and endChildren()
on the same level (while the actual child is available).
2005-05-14 16:40:58 +00:00
416ea7638d ChangeLog update 2005-05-14 00:34:01 +00:00
Antony Dovgal 5d8394879b fix bug #29975 (memory leaks when set_error_handler() is used inside error handler) 2005-05-13 23:08:43 +00:00
Magnus M��tt� 1c7d86ad2a Added new function: posix_mknod(). 2005-05-13 21:38:17 +00:00
Wez Furlong 4f778ca31d patch by Christopher Kings-Lynne, slightly modified 2005-05-13 18:09:03 +00:00
Georg Richter d72cd1d130 charsets_dir is no longer needed 2005-05-13 13:56:04 +00:00
Georg Richter d8f91dc44c mysql_set_charset now works version undependent for MySQL 4.1.13 and above 2005-05-13 13:30:22 +00:00
Georg Richter 49e1484da8 - fixed compile error under windows. Functionality for changing the
character set was moved to libmysql (4.1 bk tree - will be merged into
5.0 within the next days).
- renamed mysql_set_character_set to mysqli_set_charset
2005-05-13 13:11:41 +00:00
Andrey Hristov 45d2c2f1fd fix NEWS 2005-05-13 10:11:46 +00:00
Andrey Hristov 0e459321bf move math_standard_deviation and math_variance to the stats PECL extension 2005-05-13 10:11:19 +00:00
66a821a763 ChangeLog update 2005-05-13 00:35:04 +00:00
Marcus Boerger c1e480d46e - Make ReflectionObject::hasProperty() recognize dynamically added props 2005-05-12 21:25:42 +00:00
Marcus Boerger a5c37f37b6 - Add ability to fail silently 2005-05-12 21:23:56 +00:00
Antony Dovgal cee979d5a9 fix #33019 (socket errors cause memory leaks in php_strerror())
patch by jwozniak23 at poczta dot onet dot pl
2005-05-12 16:26:26 +00:00
cfa90afcc7 ChangeLog update 2005-05-12 00:35:46 +00:00
Antony Dovgal 8056035197 fix both win and gcc compile errors 2005-05-11 21:16:29 +00:00
Antony Dovgal 6568dea9ef fix gcc-2.95 problems (reported by Adam Maccabee Trachtenberg) 2005-05-11 20:04:18 +00:00
Joe Orton 5815b03511 Mark pointers in entity tables as const. 2005-05-11 12:54:29 +00:00
Joe Orton bd2e99ee50 - Fixed bug #29119 (html_decode_entities handling of U+0152-U+0192 range)
(merge error from 4.3)
2005-05-11 12:43:07 +00:00
Andrey Hristov 1f604371b0 ... 2005-05-11 11:44:23 +00:00
Andrey Hristov be3a9ccdf3 add function array_product() 2005-05-11 11:43:11 +00:00
Wez Furlong 4cabeaf1c7 fix inverted logic and thus Bug #27508 2005-05-11 02:02:27 +00:00
Wez Furlong 867e619154 add test for bug 27508 2005-05-11 02:01:44 +00:00
9187fc4fc0 ChangeLog update 2005-05-11 00:34:28 +00:00
Antony Dovgal fcf14f1795 use & and check for the right value of result_type 2005-05-10 23:12:31 +00:00
Antony Dovgal 38a7ef5fe6 fix #32904 (pg_get_notify() ignores result_type parameter) 2005-05-10 20:13:24 +00:00
Andrey Hristov 0c268fa0f7 fix the test too 2005-05-10 15:27:49 +00:00
Andrey Hristov 2d4dcd5c35 fix NEWS 2005-05-10 14:36:29 +00:00
Dmitry Stogov e0b3a79e1e Fixed transparent SoapFault passing 2005-05-10 13:58:11 +00:00
foobar 84bdf9b0a0 MFB: - Fixed bugs #32800, #32830 (ext/odbc: Problems with 64bit systems) 2005-05-10 13:22:22 +00:00
Andrey Hristov f12b14078e rename math_std_dev to math_standard_deviation (the API wasn't published
yet)
2005-05-10 12:50:53 +00:00
foobar 924b4c016d ws 2005-05-10 12:19:33 +00:00
foobar 760b955dd1 MFB: - Fixed bug #32613 (ext/snmp: use of snmp_shutdown() causes snmpapp.conf
access errors). (Jani, ric at arizona dot edu)
2005-05-10 12:17:01 +00:00
Dmitry Stogov bd996f23f2 Fixed SIGSEGV 2005-05-10 10:20:58 +00:00
Dmitry Stogov 61ba13bf72 "<?xml ..." header is not required by SOAP specification 2005-05-10 08:16:14 +00:00
05c3801193 ChangeLog update 2005-05-10 00:34:01 +00:00
Andrey Hristov 8e97019a69 after throwing an warning bail out 2005-05-09 22:29:54 +00:00
Andrey Hristov b4464a2d6a mysqli won't compile with Zend2 API before 2001 - in these days there was
no Zend2
2005-05-09 22:29:21 +00:00
Andrey Hristov d5e0b8a628 MFB 2005-05-09 21:48:03 +00:00
foobar 8d00609794 - We skip tests when the extension is not loaded..in the php.ini 2005-05-09 21:16:49 +00:00
foobar db1a5ab243 revert pointless patch 2005-05-09 21:16:06 +00:00
Andrey Hristov 02d0f72596 also test shared builds 2005-05-09 16:23:22 +00:00
foobar 4b87d8360e - getlogin() / getgroups() are not necessarily available everywhere 2005-05-09 12:15:53 +00:00
30c554a0ac ChangeLog update 2005-05-09 00:36:19 +00:00
Rasmus Lerdorf 310dd4a214 Fix request_uri XSS on phpinfo() page 2005-05-08 17:24:38 +00:00
foobar fef305724b this check was not needed 2005-05-08 15:58:50 +00:00
foobar f2dd8f028b - Fixed bug #32932 (Oracle LDAP: ldap_get_entries invalid pointer) 2005-05-08 15:43:22 +00:00
foobar 0060548378 no tabs 2005-05-08 14:02:19 +00:00
Georg Richter b654b20ef6 Added new function mysqli_set_character_set_name 2005-05-08 08:39:56 +00:00
882bd85360 ChangeLog update 2005-05-08 00:34:53 +00:00
foobar e3dd556e37 this one needs to be upper.. 2005-05-07 16:14:27 +00:00
foobar b3f5a2dca4 ws + cs + proto fixes 2005-05-07 16:08:03 +00:00
Ilia Alshanetsky f8fd0898b7 MFB: Fixed memory leak on error in FTP wrapper. 2005-05-07 16:07:59 +00:00
foobar d24f853464 typofix 2005-05-07 15:43:55 +00:00
Wez Furlong 660afcaef4 MFB: Fix for #32974 2005-05-07 14:58:12 +00:00
Marcus Boerger 13ba056aff - Update 2005-05-07 13:54:02 +00:00
Andrey Hristov daae299653 revert this one till we have a better way to inform the user where the
truncation has occured
2005-05-07 12:46:29 +00:00
Andrey Hristov 8cd3409b30 update protos 2005-05-07 12:41:56 +00:00
Marcus Boerger 1fd4adb69e - Update: class File was renamed to FileObject 2005-05-07 12:25:48 +00:00
Marcus Boerger 1623537998 - Improved interactive mode of CLI (php -a) 2005-05-07 12:24:18 +00:00
Andrey Hristov 91b3b49f14 return MYSQLI_DATA_TRUNCATED if data happens to be truncated
#the manual has to be updated
2005-05-07 08:23:39 +00:00
Andrey Hristov 70da059cc0 return directly 2005-05-07 08:03:35 +00:00
Andrey Hristov b7df40a75a bail out when detecting incorrect number of parameters to be bound. 2005-05-07 07:44:41 +00:00
foobar 1ee0293680 - Install GD header files 2005-05-07 03:19:42 +00:00
foobar 626253940e - Added PHP_INSTALL_HEADERS() macro
- Fixed several VPATH build issues
- Changed all awk calls to use $AWK
- Changed all mkdir calls to use "$php_shtool mkdir"
2005-05-07 02:51:53 +00:00
deacfcefc2 ChangeLog update 2005-05-07 00:36:11 +00:00
foobar 9070204b93 Only test stuff if PDO is enabled 2005-05-06 22:58:42 +00:00
foobar 379394b82c cleanup 2005-05-06 22:51:05 +00:00
Ilia Alshanetsky 37f46251fb Check ftp user name for control characters. 2005-05-06 18:42:52 +00:00
Antony Dovgal 0a830b33fc fix off-by-one in _php_image_output()
and prevent such errors in php_do_open_temporary_file()
2005-05-06 16:48:30 +00:00
Andrey Hristov 60c0c8e95c initialize values because the call to zend_parse_parameters may not do it 2005-05-06 10:09:42 +00:00
Ilia Alshanetsky 3ae10919c4 Added max_redirects context option that specifies how many HTTP redirects
to follow.
2005-05-06 02:31:07 +00:00
Ilia Alshanetsky b874c94d81 Missing bit from previous patch. 2005-05-06 02:20:00 +00:00
Ilia Alshanetsky a63f5d1c3f Fixed bug #32936 (http redirects URLs are not checked for control chars). 2005-05-06 02:13:46 +00:00
d34e9a33a5 ChangeLog update 2005-05-06 00:34:56 +00:00
foobar cdb675cbcf <? should die.. 2005-05-06 00:30:36 +00:00
foobar c4de57e07c reorder 2005-05-06 00:29:30 +00:00
foobar f92c470827 - No need to add NEWS entries for bugs that do NOT exist in any released version of PHP 2005-05-06 00:23:57 +00:00
foobar 625d5ba4a3 typofix :) 2005-05-06 00:09:51 +00:00
foobar e76363aef7 verbose,order,etc. 2005-05-06 00:05:42 +00:00
foobar 31a8c58911 fix proto 2005-05-05 23:42:03 +00:00
Dmitry Stogov 79d6f11a4a Fixed bug #31525 (object reference being dropped. $this getting lost) 2005-05-05 17:37:25 +00:00
Georg Richter 929e3851f2 fixed memleak in mysqli_close
fixed bug #32956 (mysqli_bind_result doesn't support MYSQL_TYPE_NULL)
2005-05-05 13:02:32 +00:00
Georg Richter 5c99563615 fix for bug #32947 (Incorrect option for mysqli default password) 2005-05-05 12:22:48 +00:00
1ba54f5fca ChangeLog update 2005-05-05 00:36:44 +00:00
Marcus Boerger 99c72d0b94 - Update docu 2005-05-04 19:14:08 +00:00
Stanislav Malyshev 4dc7c06b2a add test 2005-05-04 16:39:09 +00:00
Stanislav Malyshev 1ef8064753 #32924 2005-05-04 16:20:04 +00:00
Stanislav Malyshev 7b34bb2be7 fix bug #32924: prepend does not add file to included files 2005-05-04 16:17:33 +00:00
Anantha Kesari H Y abf7b57160 NetWare LibC dlsym works perfectly only thing that each of the extension need to export a symbol with FULL capital prefix. 2005-05-04 13:26:28 +00:00
Dmitry Stogov b2d28102a8 Fixed bug #30641 (Compile error: error: symbol "zend_error" is used but not defined) 2005-05-04 12:38:49 +00:00
Dmitry Stogov 5e4d91582a Fixed bug #30707 (Segmentation fault on exception in method) 2005-05-04 11:17:30 +00:00
Dmitry Stogov 37d16df05c Fixed bug #30162 (Catching exception in constructor couses lose of $this) 2005-05-04 08:45:46 +00:00
95629a63df ChangeLog update 2005-05-04 00:34:21 +00:00
Rob Richards 6d2fd215e9 Fix bug #32930 (class extending DOMDocument doesn't clone properly) 2005-05-03 22:55:03 +00:00
Ilia Alshanetsky bdbce01588 Prevent double free. 2005-05-03 22:50:00 +00:00
Marcus Boerger d6d9b15ef7 - Add another note 2005-05-03 22:28:44 +00:00
Marcus Boerger 177ea26dc1 - Make line counting work with FileObject::fgetc()
- Add a test for FileObject::fgetc()
- Update docs
2005-05-03 22:18:19 +00:00
Marcus Boerger 287864a611 - Change FileObject's line counting to be zero based
- Make FileObject implement SeekableIterator
- Add tests
2005-05-03 21:11:26 +00:00
Dmitry Stogov b3a8a50581 Fixed notice message 2005-05-03 14:05:52 +00:00
Dmitry Stogov ed35225721 Fixed error message 2005-05-03 13:46:00 +00:00
Dmitry Stogov 69326a796e Fixed destruction of zval after returning from __call() 2005-05-03 12:47:27 +00:00
Marcus Boerger 51d100a27a - Fix speling
- Add links
2005-05-03 12:09:26 +00:00
foobar e49cebe157 - acconfig.h should not be installed. (it is only a template file..) 2005-05-03 11:34:32 +00:00
Marcus Boerger ec6db3d242 - Fix tests affected by fix 2005-05-03 09:52:01 +00:00
Dmitry Stogov 81b536f4a6 Fixed bug #32296 (get_class_methods output has changed between 5.0.2 and 5.0.3)
Now get_class_methods() shows accessible private and protected methods if it is called from class scope.
2005-05-03 08:52:04 +00:00
2ad6cacf7e ChangeLog update 2005-05-03 00:35:54 +00:00
Rob Richards 1a0579affa - now stable thanks to Pierre
- prep for release
2005-05-02 19:50:58 +00:00
Rob Richards fa65031982 - remove Experimental
- add Pierre to Credits
- update TODO
2005-05-02 19:39:53 +00:00
Marcus Boerger 56d543c161 - Extend API to support real existance test without the need to add any new
functions or change any behavior
2005-05-02 16:18:02 +00:00
Marcus Boerger 138c5457ac - Part 2 of #30126: Enhancement for error message for abstract classes 2005-05-02 15:57:35 +00:00
Marcus Boerger f44dc4c930 - Part 1 of #30126: Enhancement for error message for abstract classes 2005-05-02 15:55:05 +00:00
Andrey Hristov 7a0b3edbe0 fixed div by zero
#div by zero is bad...div by zero is bad...bad
2005-05-02 12:32:21 +00:00
Andrey Hristov 2c0959689b add possibility to calculate the standard deviation and the variance
on a sample - the formulae are slightly different.
2005-05-02 12:29:38 +00:00
Andrey Hristov 7a4eb25870 add also math_variance() which uses the same calculation as math_std_dev() 2005-05-02 12:12:04 +00:00
Andrey Hristov 6141c5690d fix division by zero. throw an warning if the array is empty. 2005-05-02 11:01:14 +00:00
Andrey Hristov f0c0f1ca41 FRN 2005-05-02 09:18:05 +00:00
Andrey Hristov fb0c19da1c add math_std_dev() 2005-05-02 09:17:49 +00:00
fe523b9a9b ChangeLog update 2005-05-02 00:36:00 +00:00
Ilia Alshanetsky 8209835e5a Fixed bug #32608 (html_entity_decode() converts single quotes even if
ENT_NOQUOTES is given).
2005-05-01 19:48:55 +00:00
Pierre Joye 90ee88e090 - MFB: #32891, init old y positions to non possible values. -1 being used
if the center start a (x,0)
2005-05-01 06:01:56 +00:00
b06fb51f89 ChangeLog update 2005-05-01 00:34:56 +00:00
Rob Richards eaf09df585 prep for release 2005-04-30 10:36:02 +00:00
foobar 073188c832 - Fix problems with phpized ext/imap 2005-04-30 09:29:09 +00:00
foobar 40b6c60d9d - Added man pages for "phpize" and "php-config" scripts. (Jakub Vrana) 2005-04-30 04:27:23 +00:00
foobar d7682085c6 Silence the warnings about weird characters in this man page 2005-04-30 04:12:01 +00:00
foobar 2c9bf19823 Moved phpextdist to dev/ 2005-04-30 02:40:19 +00:00
foobar e8f715af59 - No need to iterate through the options twice 2005-04-30 01:52:22 +00:00
ab3f962b8b ChangeLog update 2005-04-30 00:36:09 +00:00
foobar b85f0897a2 re2c 0.96 is the one that works (tm) 2005-04-30 00:15:07 +00:00
foobar bf85fd4f2b We do allow 2.0 now too. 2005-04-30 00:12:42 +00:00
Ilia Alshanetsky edd4860674 Attempt to eliminate seek() prior to every write. 2005-04-29 19:01:33 +00:00
foobar 217e89b124 compile fix 2005-04-29 10:40:01 +00:00
Andrey Hristov e640960186 multi_query is no more global
#thanks Sebastian!
2005-04-29 10:23:55 +00:00
foobar e57408a098 Make sure E_STRICT is set always 2005-04-29 08:54:16 +00:00
Dmitry Stogov 8b7a03c889 Fixed bug #30332 (zend.ze1_compatibility_mode isnt fully compatable with array_push()) 2005-04-29 07:59:04 +00:00
Dmitry Stogov 8db238b075 Fixed bug #32852 (Crash with singleton and __destruct when zend.ze1_compatibility_mode = On)
Fixed bug #31828 (Crash with zend.ze1_compatibility_mode=On)
Fixed bug #32080 (segfault when assigning object to itself with zend.ze1_compatibility_mode=On)
2005-04-29 07:03:54 +00:00
Dmitry Stogov 72b5173ac3 Fixed WSDL cache bug 2005-04-29 05:38:54 +00:00
foobar 5ae4d8e701 typofix 2005-04-29 01:55:52 +00:00
foobar 921c39f496 Add auto_globals_jit entry to php.ini-* (bug #29514) 2005-04-29 01:37:19 +00:00
foobar 3dcd8c26ee - Make sure E_STRICT is set when expecting Strict errors.. 2005-04-29 01:18:41 +00:00
foobar 96bc29839b - Unify error_reporting setting + make sure E_STRICT is set when wanted 2005-04-29 01:04:32 +00:00
foobar 8ba7d5dc53 Added test for bug #30578 2005-04-29 00:49:47 +00:00
56fb07e147 ChangeLog update 2005-04-29 00:43:01 +00:00
foobar c1748aa483 BFN 2005-04-29 00:33:40 +00:00
Ilia Alshanetsky 8abc1d3b9c e* allocation cannot fail. 2005-04-28 23:49:04 +00:00
Dmitry Stogov 9966587aaf Fixed bug #29015 (Incorrect behavior of member vars(non string ones)-numeric mem vars und others) 2005-04-28 17:40:11 +00:00
Antony Dovgal 06a9f28b17 add test for bug #32828 2005-04-28 14:34:02 +00:00
foobar 8c2cda1251 int != long 2005-04-28 14:23:57 +00:00
Antony Dovgal b0d5236605 fix #32828 (Throwing exception in output_callback function with ob_start and
ob_end_clean leads to segfault)
2005-04-28 14:20:28 +00:00
Antony Dovgal 5ca4b8383e handle unsupported datatype (OCIBindByName segfaults somewhere in OCI lib when
unknown type is provided)
2005-04-28 14:10:42 +00:00
foobar 03bdd1a5d4 - Added fastcgi.logging php.ini option to be able to disable
logging through the fastcgi connection
2005-04-28 13:14:26 +00:00
Rob Richards 1ed5c14fe2 - Fix bug #32245 (xml_parser_free() in function assigned to the xml parser
gives a segfault)
2005-04-28 12:16:32 +00:00
foobar 085f2a6980 - Reorder request shutdown calls: Call all __destruct() functions and
register_shutdown_function() callbacks before flushing output buffers
  and sending headers.
- Fixes bug #30578 and possibly others related to output buffering.

# Added some comments too about what happens and where
2005-04-28 07:50:53 +00:00
Wez Furlong 4625889764 consolidate the various tls get/set calls for the different platforms into
a single macro, at Andi's request.
2005-04-28 02:55:14 +00:00
099a7eb6b8 ChangeLog update 2005-04-28 00:35:07 +00:00
Ilia Alshanetsky 3be50385ab Allocation checks around persistent allocs that can fail. 2005-04-28 00:25:25 +00:00
foobar 56b3cac365 Better use zval_ptr_dtor() instead (thanks Andi) 2005-04-27 23:27:37 +00:00
Wez Furlong 6d978a62f1 Add three new TSRM api functions:
TSRM_API void *tsrm_new_interpreter_context(void);
TSRM_API void *tsrm_set_interpreter_context(void *new_ctx);
TSRM_API void tsrm_free_interpreter_context(void *context);

These can be used, with a suitable SAPI, to host multiple interpreters on
the same thread.
2005-04-27 22:19:54 +00:00
Andrey Hristov 396acbf64c rename 2005-04-27 21:24:37 +00:00
Andrey Hristov 3b3ce2b610 fix bug #32013(MySQLi bind_result causes fatal error: memory limit reached)
#this is a partial fix but it cannot be better. the user has to call
#$stmt->store_result() and for a BLOB/MEDIUTEXT (and larger) space will be
#allocated as big as the biggest column value.
2005-04-27 17:53:15 +00:00
Dmitry Stogov c81db6bc56 Fixed bug #29210 (Function: is_callable - no support for private and protected classes) 2005-04-27 15:45:36 +00:00
Dmitry Stogov abb07db4c6 Fixed bug #29104 (Function declaration in method doesn't work) 2005-04-27 13:30:53 +00:00
Anantha Kesari H Y 5d4230a7e7 check should be on host_alias rather than on target_alias, but somehow works on configure generated using autoconf 2.57. 2005-04-27 13:22:18 +00:00
foobar 39bcbfc306 - Made the libxml related stuff to error out if someone does --disable-all
or --disable-libxml. Better than silently just leave the ext out..
2005-04-27 13:12:55 +00:00
Dmitry Stogov aba79c268c Fixed bug #32833 (Invalid opcode) 2005-04-27 12:16:32 +00:00
Andrey Hristov f6b12b351e MFB (fixing bug 31668) 2005-04-27 12:12:58 +00:00
foobar 71adb81e96 nuking that file was not very good idea :) 2005-04-27 08:10:41 +00:00
Dmitry Stogov 28e68301dc Fixed bug #32674 (exception in iterator causes crash) 2005-04-27 06:47:08 +00:00
Ilia Alshanetsky d30a9ee96d removed debug code. 2005-04-27 03:12:18 +00:00
04b5f20be5 ChangeLog update 2005-04-27 00:38:26 +00:00
Dmitry Stogov a9a319b078 Fixed bug #30889 (Conflict between __get/__set and ++ operator) 2005-04-26 13:23:23 +00:00
Dmitry Stogov 1098d9bccb fix 2005-04-26 12:01:31 +00:00
Dmitry Stogov 5f600cdf57 Fixed bug #30702 (cannot initialize class variable from class constant) 2005-04-26 09:27:28 +00:00
Dmitry Stogov 694f7a9e90 Fixed bug #32427 (Interfaces are not allowed 'static' access modifier). 2005-04-26 08:48:23 +00:00
Dmitry Stogov 4f15b20b92 Fixed bug #32429 (method_exists() always return TRUE if __call method exists) 2005-04-26 08:47:31 +00:00
foobar 6e0da82528 Netware stuff 2005-04-26 08:20:44 +00:00
daf6b8303e ChangeLog update 2005-04-26 00:34:22 +00:00
Ilia Alshanetsky 8281f41f3e Fixed bug #32813 (parse_url() does not handle scheme-only urls properly). 2005-04-25 23:47:37 +00:00
foobar 87fc464c6b Fix test 2005-04-25 21:45:14 +00:00
foobar 87a70f10a7 Reorder 2005-04-25 21:23:49 +00:00
foobar 0783e0a358 Revert. (Nokia is not that important :) 2005-04-25 21:18:15 +00:00
John Coggeshall 669fd595fe Update 2005-04-25 20:54:44 +00:00
John Coggeshall 335742c2ef Adding new function tidy_get_opt_doc() to return option documentation at runtime. Thanks to nlopess for the patch 2005-04-25 20:46:16 +00:00
Andrei Zmievski 53e3b0fcb8 Reverting. Let's not introduce major BC breakage like this without a
good reason.
2005-04-25 20:41:26 +00:00
foobar d0f85d3e27 - Added test: For some reason this fails with ZTS mode and "outside-src-tree-build" 2005-04-25 14:04:00 +00:00
foobar 03593f89fb When an entry goes to the PHP_5_0 branch, no entry here 2005-04-25 13:01:41 +00:00
Stanislav Malyshev 92965de4ab oops 2005-04-25 12:45:52 +00:00
Stanislav Malyshev a1c24b238a fix 2005-04-25 12:44:55 +00:00
Stanislav Malyshev b86bab9735 @- Fix #32773 and make right fix for GMP FPEs (Stas)
Fix #32773 and make right fix for GMP FPEs
2005-04-25 12:18:50 +00:00
Pierre Joye f150ee9ab5 - do not use md5, png signature can change between libpng version
some floating points issue can end to different colors (+/- 1/255)
   tests should work again now.
2005-04-25 11:36:24 +00:00
Dmitry Stogov 35b38598cc Fixed bug #29944 (Function defined in switch, crashes). 2005-04-25 09:56:42 +00:00
Edin Kadribasic cbe6261882 Added T1LIB support on Windows (#32809) 2005-04-25 09:08:48 +00:00
foobar 9a020fce63 ws 2005-04-25 08:21:15 +00:00
Dmitry Stogov c78ec1615a Fixed call to estrndup() with invalid length 2005-04-25 06:13:57 +00:00
Sebastian Bergmann 11a91f04b2 Correct grammar. 2005-04-25 05:13:36 +00:00
c3da4c9102 ChangeLog update 2005-04-25 00:42:22 +00:00
Ilia Alshanetsky 320dd75443 MFB: zval** not zval* 2005-04-24 18:11:55 +00:00
Ilia Alshanetsky 409c3fd4a6 Fixed bug #32802 (General cookie overrides more specific cookie). 2005-04-24 17:52:21 +00:00
Marcus Boerger 20e67fd175 - Need to copy doc comments correct for properties 2005-04-24 17:32:05 +00:00
e5a1216c94 ChangeLog update 2005-04-24 00:33:38 +00:00
foobar 0eb271add6 - Fix memleak 2005-04-23 21:15:24 +00:00
foobar 815aff1caf - Fixed bug #32111 (Cookies can also be separated by colon) 2005-04-23 20:33:34 +00:00
foobar e642d180f6 ws, pval -> zval 2005-04-23 19:30:29 +00:00
Marcus Boerger 3080d49ed4 - Add new tests 2005-04-23 15:21:07 +00:00
Marcus Boerger 965b70c0bd - Change bison check to positive logic and allow bison 2.0 2005-04-23 11:30:11 +00:00
6bbd46b186 ChangeLog update 2005-04-23 00:35:03 +00:00
Joe Orton 7c5f5697ce Fixed bug #32797 (invalid C code in xmlrpc extension). 2005-04-22 11:06:53 +00:00
Antony Dovgal 755b027e8c fix C++ comments 2005-04-22 08:59:21 +00:00
Masaki Fujimoto ca7a649300 - Fix mbfl_encoding_detector_feed() and mbfl_mbfl_identify_encoding() behaviour 2005-04-22 05:03:10 +00:00
Wez Furlong 7dd430ff28 fix bug #32795 2005-04-22 02:40:48 +00:00
ace93a1de9 ChangeLog update 2005-04-22 00:45:41 +00:00
foobar f2d086127c - Fix birdstep support (no SQLDataSources() support in it) 2005-04-21 23:01:53 +00:00
Ilia Alshanetsky 8b8940ba84 php_error() -> php_error_docref(). 2005-04-21 21:11:23 +00:00
foobar 287a31e053 - Allow using --enable-versioning with any SAPI module
# It's only used if the php.sym file exists!
# Have fun Sara :)
2005-04-21 15:02:34 +00:00
foobar 9af93dbb41 Expose EXEEXT and use for cli/cgi binaries 2005-04-21 14:57:53 +00:00
foobar 4c3fdcaa4e - Fixed bug #32647 (Using register_shutdown_function() with invalid callback can crash PHP) 2005-04-21 14:44:29 +00:00
foobar 62a1f82e4a Fix test when register_long_arrays is off in your php.ini 2005-04-21 14:22:53 +00:00
foobar e6a70fd0d3 Added test for bug #32647 2005-04-21 14:17:52 +00:00
foobar 714080f10f bug => Bug 2005-04-21 14:04:12 +00:00
foobar e0c4f9b9be - Possible fix for bug #32778 2005-04-21 11:19:29 +00:00
Dmitry Stogov bd06b244a7 Fixed wrong SoapFault codes. The codes MUST be namespace qualified. 2005-04-21 11:16:48 +00:00
Antony Dovgal 1c4ca6a32e add *.php to cvsignore 2005-04-21 10:20:50 +00:00
c1b2990d0e ChangeLog update 2005-04-21 00:35:46 +00:00
Ilia Alshanetsky 4eccd5df70 Fixed ZTS build of fdf extension. 2005-04-20 22:51:45 +00:00
Brian France e836164570 Added support for .cc files in extensions. 2005-04-20 20:48:19 +00:00
Georg Richter 2bcae57b31 another fix for last commit (committed from wrong tree) :( 2005-04-20 13:24:08 +00:00
Georg Richter 9c1960c398 fixed typo in last commit :( 2005-04-20 13:03:01 +00:00
Georg Richter 649a8b18ef added support for data truncation (bind_result) for MySQL 5.0.5 2005-04-20 12:50:13 +00:00
Dmitry Stogov 9d2de24ab5 Fixed bug #32776 (SOAP doesn't support one-way operations) 2005-04-20 10:59:02 +00:00
Dmitry Stogov d8b50c8175 space -> tab 2005-04-20 08:44:05 +00:00
Dmitry Stogov 7288226dba Support for element's form and schema's elementFormDefault attributes (qualified/unqualified) 2005-04-20 08:30:43 +00:00
Dmitry Stogov c4a7ee45ad Some tests were fixed 2005-04-20 06:36:10 +00:00
f2ae989262 ChangeLog update 2005-04-20 00:43:11 +00:00
Marcus Boerger 67a226d910 - Add ReflectionProperty::getDocComment() 2005-04-19 22:04:59 +00:00
foobar b8ac8eeca6 - Never use Z_TYPE* macros on non-zvals. 2005-04-19 22:04:28 +00:00
Ilia Alshanetsky acbeba2a50 Removed unused var. 2005-04-19 20:55:02 +00:00
Ilia Alshanetsky 569138e0c0 removed unused var. 2005-04-19 20:53:54 +00:00
Andrey Hristov 5778fccbbb add INT_MAX and INT_SIZE constants.
#64bit machines are getting wider usage and these are needed
2005-04-19 17:30:07 +00:00
Andrey Hristov 2652762dcd MFB 2005-04-19 15:45:07 +00:00
Andrey Hristov eef94ff4bb add a test case for Bug #32405 (the previous commit incorporated a fix
for it).
2005-04-19 13:29:37 +00:00
Andrey Hristov 2a3c71b833 - nail down another 64bit problem. this will fix about 14 failing tests
on amd64 (probably other 64 bit arch).
- use ulong for this boolean variable, as it was before
- throw an warning if offset passed to mysqli_stmt_data_seek is negative
2005-04-19 13:28:41 +00:00
Andrey Hristov 155b90db20 - fixing all "long" into "int" fetching problems (cause memory corruption
on 64 bit)
- nail down a problem because of the new MYSQL_TYPE_NEWDECIMAL introduced
  in MySQL 5.0+
- Add more info to the autocommit test
2005-04-19 12:59:16 +00:00
foobar 0e57528666 No c++ comments in C code 2005-04-19 11:41:04 +00:00
foobar cb0c9ac022 - This is not C++ code 2005-04-19 11:28:02 +00:00
Wez Furlong 7013788711 merge from branch: fixes for #32758 and #32759 2005-04-19 06:14:56 +00:00
Ilia Alshanetsky e211d4e3ae Fixed bug #32753 (Undefined constant SQLITE_NOTADB). 2005-04-19 02:58:19 +00:00
aee0f87ccd ChangeLog update 2005-04-19 00:35:13 +00:00
Rob Richards 334d756ffa Fix bug #32755 Segfault in replaceChild() when DocumentFragment has no children
update test
2005-04-18 23:07:50 +00:00
Andrey Hristov 4033ad1dd2 don't null it - let the engine do its magic ;) 2005-04-18 21:01:05 +00:00
Wez Furlong 195f69f0c7 merge bug fixes from branch 2005-04-18 16:38:31 +00:00
Anantha Kesari H Y ea6d23b8c0 PHP_OS and PHP_UNAME need to be hardcoded for cross builds 2005-04-18 09:46:53 +00:00
Dmitry Stogov ba22efa25c Missing files were added 2005-04-18 07:54:46 +00:00
Dmitry Stogov 4e04b5b5fb Fixed memory leak in debug_backtrace() 2005-04-18 07:25:20 +00:00
Georg Richter 21cae3966c cursor support for 5.0.4 (STMT_ATTR_CURSOR_TYPE changed to enum) 2005-04-18 06:03:29 +00:00
Ilia Alshanetsky 0810696e50 removed unused vars. 2005-04-18 03:04:15 +00:00
Ilia Alshanetsky c17b18689c Checks not needed, done by ext/libxml already. 2005-04-18 02:43:42 +00:00
d28acc8452 ChangeLog update 2005-04-18 00:35:20 +00:00
Marcus Boerger 43a5cee728 - Add more tests 2005-04-17 20:33:20 +00:00
Marcus Boerger 7aad424332 - Fix special cases of property_exists() 2005-04-17 20:16:14 +00:00
Marcus Boerger 79b9084eef - Fix logic 2005-04-17 20:15:23 +00:00
Ilia Alshanetsky 6de75a77c6 Added missing safe_mode & open_basedir checks. 2005-04-17 18:05:03 +00:00
foobar 87c931695f - Fixed bug #30819 (Better support for LDAP SASL bind) 2005-04-17 16:25:59 +00:00
foobar a1127a736b - Removed unnecessary NEWS entry
# There is no need to have this kind of entries in NEWS file
# when the problem only exists in CVS for day or two..
2005-04-17 16:11:49 +00:00
foobar 36064e120e - Remove relic 2005-04-17 13:37:20 +00:00
Derick Rethans bb8988109d - Fixed bug #32735 (Compile error in GD extension). 2005-04-17 10:17:03 +00:00
foobar d5d9c6b8f3 - Fixed bug #31887 (Custom 5xx error does not return correct HTTP response message) 2005-04-17 03:37:05 +00:00
65c6833d66 ChangeLog update 2005-04-17 00:37:12 +00:00
Sara Golemon f838f8e37d method_exists() regression test 2005-04-16 15:36:22 +00:00
Sara Golemon 083795cbbf Fix method_exists(), pce is fetched, but ce is used 2005-04-16 15:24:56 +00:00
foobar b79838dab8 retype 2005-04-16 12:29:00 +00:00
Pierre Joye 58f441e2f7 - Typo 2005-04-16 12:26:16 +00:00
Pierre Joye 11c59f6d8f - Entry for imageconvolution addition 2005-04-16 12:25:32 +00:00
Pierre Joye 3963ba649d - export imageconvolution to userland, making people happy to do not
use the predefined ones :)
2005-04-16 12:12:24 +00:00
Rasmus Lerdorf 4162bd8b21 I think this is a cleaner emboss filter. Less fringing. 2005-04-16 09:20:59 +00:00
e6614e451d ChangeLog update 2005-04-16 00:34:23 +00:00
Rasmus Lerdorf d0f4028194 The emboss and edge detection matrices are swapped 2005-04-16 00:04:52 +00:00
Rasmus Lerdorf 802c8e83c9 Don't do PDO here if PDO is disabled 2005-04-16 00:04:27 +00:00
foobar b154e82d24 - Fixed bug #32719 (strval() fails to zero terminate strings) 2005-04-15 22:46:37 +00:00
foobar e5697cc0ad Add some more cases 2005-04-15 22:25:03 +00:00
foobar 5efe7cf99a Added test for strval() function 2005-04-15 22:19:53 +00:00
foobar 82819f3061 - Use correct type (bug #32720) 2005-04-15 22:06:03 +00:00
Marcus Boerger 5b21e48557 - Fix even though we already know that the function will be renamed 2005-04-15 18:53:42 +00:00
Andrei Zmievski 4fbddd03d7 Fix certain operations to stop relying on presence of read_property and
write_property handlers. They may be NULL'ed out by certain objects
pretending to be pure arrays, for example. Do checks first.
2005-04-15 17:15:18 +00:00
Uwe Schindler 91b587f884 Remove include_path support from md5_file/sha1_file again 2005-04-15 17:13:54 +00:00
Uwe Schindler 9cde55f8ed use streams api for md5_file and sha1_file. Added parameter use_include_path similar to other PHP file functions. Documentation update outstanding 2005-04-15 14:29:32 +00:00
Uwe Schindler c4e788b03c fix various solaris problems by replacing stdio with posix io where possible 2005-04-15 09:14:38 +00:00
6ead36dcf4 ChangeLog update 2005-04-15 00:39:27 +00:00
foobar 519f381fca - Regenerated with re2c 0.9.6 (fixes severe bugs) 2005-04-14 22:38:29 +00:00
foobar 172f3af8ed - Add support for latest Birdstep 2005-04-14 21:17:20 +00:00
Marcus Boerger 4f3b12b3fd - Rename class File to FileObject
# by popular demand
2005-04-14 21:02:09 +00:00
Andrey Hristov e23f62fc4f - don't use short tag
- detect CLI binary and don't print &lt ;br &lt; in this case
2005-04-14 16:05:05 +00:00
Ilia Alshanetsky 378776dc33 missing header (re2c 0.9.4 built .c file) 2005-04-14 14:01:11 +00:00
Ilia Alshanetsky e546162f2c Added missing header. 2005-04-14 14:00:39 +00:00
Ilia Alshanetsky e87127af69 MFB43: Fixed bug #31583 (php_std_date() uses short day names in
non-y2k_compliance mode).
Fixed bug #31689 (PHPAPI missing for php_std_date() and php_parse_date()).
2005-04-14 13:34:05 +00:00
dac4eb1c70 ChangeLog update 2005-04-14 00:42:29 +00:00
Ilia Alshanetsky fc51ec9e12 Removed unused vars. 2005-04-13 23:05:23 +00:00
Antony Dovgal 2c511712f7 disable pg_cmdtuples() too, if there is no pg_affected_rows() 2005-04-13 22:11:35 +00:00
Derick Rethans cba30657d9 - MFH43: Fixed bug #32699 (pg_affected_rows() was defined when it was not
available).
2005-04-13 21:48:33 +00:00
Antony Dovgal 36d13eb7c9 add testcase for bug #30833 2005-04-13 08:23:39 +00:00
ecf95a1e66 ChangeLog update 2005-04-13 00:34:35 +00:00
Frank M. Kromann 7bf2fe5296 Fix for #32682. Error on module shutdown when called from activescript 2005-04-12 17:45:30 +00:00
Ilia Alshanetsky d5847b9cf7 Fixed compiler warning. 2005-04-12 16:41:42 +00:00
Antony Dovgal a13b29add7 fix #30833 (array_count_values modifying input array) 2005-04-12 14:00:54 +00:00
Stanislav Malyshev 5ddf66e004 fix memory corruption if one on the on_modify handlers errors out 2005-04-12 13:06:39 +00:00
Ilia Alshanetsky ce73b66466 Fixed compiler warning. 2005-04-12 01:00:48 +00:00
68798e50ee ChangeLog update 2005-04-12 00:35:50 +00:00
Frank M. Kromann 81837f718b Don't truncate the .options file when a database is started without the optional options parameter. 2005-04-11 19:22:01 +00:00
Antony Dovgal 2a83dbdf1c revert the patch, the problem seems to be somewhere else 2005-04-11 15:19:27 +00:00
Harrie Hazewinkel e9224d0bd1 Converting the usage of the integer based internal commands into
MACROS to ease future extensions.
2005-04-11 14:59:42 +00:00
Harrie Hazewinkel 452b4cdba1 Adding support for a getbulk oriented walk.
The getbulk can only be used for SNMPv2c and SNMPv3.
2005-04-11 14:56:44 +00:00
Dmitry Stogov 37887f1bd0 Fixed SIGSEGV on serializing data with circular references 2005-04-11 11:58:19 +00:00
Dmitry Stogov 37eee73274 Support for encoding/decoding of private and protected members 2005-04-11 09:27:47 +00:00
0c6cd5f5f7 ChangeLog update 2005-04-11 00:35:20 +00:00
Andrey Hristov 8dcbeae90d news 2005-04-10 21:45:25 +00:00
Andrey Hristov d9f5f1ee08 fix memory corruption on 64bit in imagefttext(),
domdocument::load() and domdocument::loadxml()
2005-04-10 21:37:17 +00:00
Andrey Hristov 628b8cae7d fix proto. return true instead of null 2005-04-10 21:23:27 +00:00
Andrey Hristov ce36c5f3b1 simplify code (no need of local variable - return directly) 2005-04-10 20:57:31 +00:00
foobar 5fe1be8b5e - Say in the help too this is the handler module.. 2005-04-10 19:32:19 +00:00
foobar d7f848d069 Might not be obvious for everyone :) 2005-04-10 19:29:08 +00:00
foobar 8509f06056 - This was supposed to be escaped with \ 2005-04-10 19:23:59 +00:00
foobar 338bdf1587 Add more detailed failure msg. (bug #32649) 2005-04-10 19:18:37 +00:00
foobar 28ffae8ad0 - Make VC6 happy 2005-04-10 19:07:38 +00:00
Ilia Alshanetsky 6f539ae99e Added time_sleep_until() function, which is a high precision mechanism of
making a script sleep until specified timestamp.
2005-04-10 16:25:11 +00:00
de3a7cecc9 ChangeLog update 2005-04-10 00:39:16 +00:00
Sara Golemon dc8823b565 Fold validation into an inlined function per Andi's suggestion 2005-04-09 19:36:49 +00:00
6e58f898d5 ChangeLog update 2005-04-09 00:36:05 +00:00
foobar ac53cdfb2f - Nuked some PECLed extensions 2005-04-08 21:17:07 +00:00
foobar ab5072df2a Removed non-existing sapi/activescript dsp 2005-04-08 21:10:27 +00:00
foobar 7af1dfa8cb - Fixed bug #32587 (Apache2: errors sent to error_log do not include timestamps) 2005-04-08 20:32:14 +00:00
Rob Richards 5313e98b72 - Fixed bug #32615 (Segfault in replaceChild() using fragment when
previousSibling is NULL)
- add test
2005-04-08 15:58:24 +00:00
Ilia Alshanetsky 2fae7f1e71 Missing part of the patch for bug #32589 2005-04-08 15:04:34 +00:00
Marcus Boerger d100328de8 - Fix memory corruption found by rob 2005-04-08 14:33:00 +00:00
Marcus Boerger c4dbeca169 - Ensure we see all errors. No need for () in return 2005-04-08 14:06:05 +00:00
foobar 4f615d3cff remove duplicate entry 2005-04-08 13:36:23 +00:00
Marcus Boerger 53e5eb8032 - Add new test 2005-04-08 13:34:30 +00:00
Marcus Boerger 32182b190a - Add property_exits() 2005-04-08 13:33:15 +00:00
Marcus Boerger adb3d0197e - No E_ERROR when we just check (where did my 0->1 change go on first commit?) 2005-04-08 12:24:09 +00:00
Rob Richards 9c3919c3a3 fix test 2005-04-08 12:18:57 +00:00
Marcus Boerger 40cc0b7724 - No E_ERROR when we just check, here visibility simply means there is none 2005-04-08 12:15:24 +00:00
Marcus Boerger 698d301c1c - Simplify getting property info and make it an api function 2005-04-08 11:35:11 +00:00
5921e6c039 ChangeLog update 2005-04-08 00:37:35 +00:00
Jon Parise 34785cf602 Spell "overridden" correctly. 2005-04-07 23:33:03 +00:00
Ilia Alshanetsky 5355bdc788 Fixed bug #32533 (proc_get_status() returns the incorrect process status). 2005-04-07 23:07:45 +00:00
foobar d57f08147d - Fixed bug #32591 (ext/mysql: Unsatisfied symbol: ntohs with HP-UX) 2005-04-07 22:23:15 +00:00
foobar f3ee713a42 Fix the echo/backquote issues + aclocal 2005-04-07 22:03:02 +00:00
foobar aea6208e9e - Cleanup a bit. And make use of shtool mkdir 2005-04-07 20:39:02 +00:00
foobar ce36ef5787 - Reword the send-report-part a bit. (bug #32624) 2005-04-07 20:22:55 +00:00
foobar 355eefe5f9 - Nuke the code duplication 2005-04-07 20:15:21 +00:00
foobar 9356d7fc64 Fix build when USE_ZEND_ALLOC is 0 2005-04-07 16:22:15 +00:00
Dmitry Stogov d976e3d165 Fixed indentation 2005-04-07 16:17:08 +00:00
Dmitry Stogov b14271dbfa Fixed wrong result of cal_days_in_month() with bad dates 2005-04-07 16:12:27 +00:00
Zeev Suraski 779f5c5c19 Fix strdup() bug when USE_ZEND_ALLOC is disabled 2005-04-07 13:59:45 +00:00
Uwe Schindler cd47b3c542 Bug #32614 - prevent from crahsing with segfault on solaris if fdopen() fails - this fixes NOT the stdio-problem on solaris! 2005-04-07 07:29:14 +00:00
foobar e2e53b6511 - Added the $PHP_AUTOCONF/$PHP_AUTOHEADER usage to phpize 2005-04-07 06:25:28 +00:00
a85e6ea0d4 ChangeLog update 2005-04-07 00:34:35 +00:00
foobar 7adac251e3 - Not every OS has ldd.. 2005-04-06 22:14:27 +00:00
foobar 1b3b55a858 Regenerated with re2c 0.9.4 2005-04-06 19:42:36 +00:00
foobar 4ad9f76523 Keep removed stuff in top.. 2005-04-06 16:07:24 +00:00
Marcus Boerger 733aa2e949 - Make class_parentS() and class_implements() accepts class names as well 2005-04-06 15:16:45 +00:00
Ilia Alshanetsky 1d60050312 Removed php_check_syntax() function, it never worked properly. For now
use shell_exec("php -l script_name") or similar.
2005-04-06 14:19:14 +00:00
Ilia Alshanetsky a7ae41bf89 Fixed bug #31363 (broken non-blocking flock()).
# Patch by ian at snork dot net
2005-04-06 13:57:30 +00:00
Christian Stocker 997690b132 - Added optional first parameter to XsltProcessor::registerPHPFunctions to only
allow certain functions to be called from XSLT.
2005-04-06 12:26:29 +00:00
Antony Dovgal e7a2efe053 do not try to read after EOF 2005-04-06 08:26:06 +00:00
Georg Richter f6ecb58448 fix for bug #32282 (segfault in mysqli_fetch_array on 64-bit) 2005-04-06 06:47:12 +00:00
e89235fa17 ChangeLog update 2005-04-06 00:36:12 +00:00
Antony Dovgal 33677ddb95 remove proto, it's internal func 2005-04-05 20:31:10 +00:00
Ilia Alshanetsky 6f13b138a7 Added another search patch for magic file (fixes bug #3232). 2005-04-05 15:12:52 +00:00
Ilia Alshanetsky cb8d20760c Fixed bug #32589 (Possible crash inside imap_mail_compose, with charsets). 2005-04-05 14:47:47 +00:00
Marcus Boerger 7e7775a328 - Register class File
- Remove superflous ;
- Stop spl_autoloading on pending exception
2005-04-05 09:24:53 +00:00
Marcus Boerger 2f8d672bfc - Use correct var name 2005-04-05 09:23:50 +00:00
Marcus Boerger 58d45bfe2e - Add new test 2005-04-05 09:23:14 +00:00
Marcus Boerger d77945ef78 - Just return FAILURE & allow NULL without emmidiate error 2005-04-05 09:16:27 +00:00
Ilia Alshanetsky d9aea604b3 Fixed bug #30362 (stream_get_line() not reading data correctly). 2005-04-05 03:00:04 +00:00
0b0fc93a55 ChangeLog update 2005-04-05 00:35:37 +00:00
Sara Golemon 51852db0df BugFix #32563
This could have been done in stream_wrapper_register()
without introducing the slight performance hit on
wrapper registration since anyone registering a wrapper
in an extension should know better.

The important thing is that since locate_wrapper makes
the assumption that all schemes will be /^[a-z0-9+.-]+$/i
Anything which registers them should make the same assumption as well.
2005-04-04 19:34:32 +00:00
foobar 760439567a Update credits 2005-04-04 18:50:54 +00:00
foobar 2887f89075 remove empty lines 2005-04-04 18:14:27 +00:00
foobar 28b13f50e6 Added testcase for bug #30362 2005-04-04 18:06:16 +00:00
Stanislav Malyshev 95f860d025 MF50: fix backtraces - non-Zend classes have names too 2005-04-04 17:23:38 +00:00
Rui Hirokawa 8235a70ef9 added a server variable PHP_AUTH_DIGEST to support HTTP Digest Authentication. 2005-04-04 15:06:36 +00:00
Uwe Schindler 4558cdade6 Bug #32491 (File upload error - unable to create a temporary file) - Changing file upload from stdio to posix 2005-04-04 14:59:40 +00:00
Antony Dovgal f2a3b12445 fix #32560 (configure looks for incorrect library - libdb2.so instead of libdb2.a,
which is used actually)
2005-04-04 10:50:32 +00:00
foobar 25dd01d428 - If this is supposed to be the configuration we recommend,
we've been recommending to not use short-open-tag for a long time.
  E_STRICT too for 5.1 since it promotes the right ways (tm) to do things.
#
# This is for 5.1, 5.1, 5.1, 5.1...
#
2005-04-04 07:55:13 +00:00
Jon Parise 3ac5ec3b7e Adding the ability to override the autotools executables used by the
buildconf script via the PHP_AUTOCONF and PHP_AUTOHEADER environmental
variables.
2005-04-04 07:16:01 +00:00
b30fd67736 ChangeLog update 2005-04-04 00:35:42 +00:00
foobar f20c5ce7e1 MBFN2B 2005-04-03 21:57:34 +00:00
Uwe Schindler 3fb36bf08e Add sapi.get_request_time() to NSAPI 2005-04-03 19:16:23 +00:00
Ilia Alshanetsky ca10457a58 Fixed bug #32530 (chunk_split() does not append endstr if chunklen is
longer then the original string).
2005-04-03 18:08:40 +00:00
George Schlossnagle 1d25fc5c7b actually commit the SOAP interop tests this time. 2005-04-03 15:51:22 +00:00
George Schlossnagle 55c25c7275 Fix qualified names for attributes according to attributeFormDefault.
Add SOAP Interop tests from Dmitry.
2005-04-03 15:39:56 +00:00
Antony Dovgal 1c4eb9b684 fix typo 2005-04-03 13:06:08 +00:00
Antony Dovgal b2858fb449 fix output_reset_rewrite_vars() returning false everytime 2005-04-03 12:19:23 +00:00
foobar c67da24e31 Fix another title 2005-04-03 11:17:54 +00:00
foobar 0ee465d2a0 fix description 2005-04-03 11:15:39 +00:00
4ff40069af ChangeLog update 2005-04-03 01:39:51 +00:00
foobar fc883fd477 Partial fix test: It is still possible to use expat libs with ext/xml.. 2005-04-03 00:12:26 +00:00
Greg Beaver 48f4e4bb87 update to support local install, remove -n switch 2005-04-02 23:50:53 +00:00
foobar 9f21d8e72c Fix the name (and thus make sure PEAR will not install atm) 2005-04-02 23:47:54 +00:00
foobar bf3286cd6c Fixed: [PEAR] Archive_Tar: XML error: not well-formed (invalid token) at line 22 2005-04-02 23:16:46 +00:00
foobar c45a0c918f Make sure php_mbstring.dll is first to getting loaded..(bug #32552) 2005-04-02 23:04:02 +00:00
foobar b543778fed fix tests 2005-04-02 22:57:42 +00:00
f1b024668f ChangeLog update 2005-04-02 01:33:42 +00:00
Greg Beaver 62f305e5a7 add missing file 2005-04-01 22:03:59 +00:00
foobar 7f4e28d2bd - Fixed bug #32504 (shtool problem on make test) 2005-04-01 13:40:46 +00:00
Joe Orton d17ccbdeee Use PHP_LIBDIR. 2005-04-01 11:12:45 +00:00
1d5691e2cc ChangeLog update 2005-04-01 01:39:40 +00:00
Marcus Boerger 7adb2b0c0b - Add RecursiveDirectoryIterator::getSubPathname() 2005-03-31 23:02:20 +00:00
Marcus Boerger d383735978 - Add RecursiveDirectoryIterator::getSubPath() 2005-03-31 21:51:46 +00:00
Marcus Boerger 530917b463 - Make iterator_to_array() accept Traversable 2005-03-31 21:49:47 +00:00
foobar a119050ebb These tests require register_long_arrays=1 2005-03-31 19:47:19 +00:00
foobar 1f3419a4db fix some skip conditions.. 2005-03-31 19:43:48 +00:00
Marcus Boerger 3eb4162122 - Bugfix #32521 (apache2handler accidental crashes caused by SPL) 2005-03-31 17:17:38 +00:00
foobar 3a947f256a C++ fix 2005-03-31 07:37:39 +00:00
d5b2c5e286 ChangeLog update 2005-03-31 01:32:08 +00:00
Joe Orton 6974b5ecce Mark more private functions as static. 2005-03-30 13:43:36 +00:00
Edin Kadribasic 2d45bbb9cf Updated install instructions from the documentation project (Philip Olson) 2005-03-30 13:15:05 +00:00
Joe Orton 5aa95520cd Mark private functions as static. 2005-03-30 12:56:58 +00:00
11e0ab6a93 ChangeLog update 2005-03-30 01:32:45 +00:00
Antony Dovgal e499a1c296 fix segfault & buffer overrun when there is no PDO drivers plugged in
(patch by su1d@phpclub.net)
2005-03-29 17:23:36 +00:00
Sara Golemon 29ede46872 BugFix #31137 stream_filter_remove() segfaults when stream already closed 2005-03-29 04:02:03 +00:00
1a356bc40e ChangeLog update 2005-03-29 01:32:11 +00:00
Ilia Alshanetsky 6071843d4c Proper fix for the memory leak. 2005-03-28 18:46:57 +00:00
Ilia Alshanetsky ec841c8e12 Fixed memory leak when variables_order does not contain 'S'. 2005-03-28 18:09:28 +00:00
Dmitry Stogov caeeebebc1 Fixed handling of attributes' namespaces 2005-03-28 18:06:29 +00:00
Greg Beaver d78d3ac210 update to current bundle ideal 2005-03-28 17:04:00 +00:00
Greg Beaver 9752cbde12 merge in PEAR 1.3.5 2005-03-28 16:38:59 +00:00
Dmitry Stogov a3f2a3aab5 Fixed handling of attributes' namespaces 2005-03-28 16:28:04 +00:00
Dmitry Stogov 8dff99116d Fixed wrong SOAP headers encoding/decoding. 2005-03-28 15:21:50 +00:00
Pierre Joye d8824f2d5c - remove "debug" code 2005-03-28 08:17:17 +00:00
Pierre Joye 6d46acfc70 - MFB, imagerectangle draws 2x each corners (alpha channel uglyness) 2005-03-28 08:14:30 +00:00
Joey Smith 4e10995140 Adding comments to .ini files at philip@php.net's request. 2005-03-28 07:26:06 +00:00
039bd86987 ChangeLog update 2005-03-28 01:34:07 +00:00
Edin Kadribasic e923407cc5 Reshufle includes to make it compile on windows 2005-03-28 00:07:24 +00:00
Pierre Joye c8ce18c155 - allow to keep or ignore the transparent color in imagerotate (thx
Ken Coar to report this "bug")
- be sure to restore alphablending in imagefill
- use zend_parse_parameter in imagerotate
2005-03-27 23:43:52 +00:00
Ilia Alshanetsky f95651e338 revert copy patch. 2005-03-27 15:52:49 +00:00
e707137ed3 ChangeLog update 2005-03-27 01:34:12 +00:00
Edin Kadribasic 35f051b502 Use PEAR bundle from the build template 2005-03-26 21:32:20 +00:00
Edin Kadribasic 2e0ddb39bc Script that creates PEAR bundle dir for distribution 2005-03-26 21:14:19 +00:00
foobar a8b29a2e8f - Made it possible to build ext/xmlrpc with libxml2 2005-03-26 03:13:58 +00:00
foobar 24eb2bfabc - Prevent compiling shared extensions when --enable-versioning is used
- Fix -export-symbols in Linux in the bundled libtool.m4:
  o http://lists.gnu.org/archive/html/libtool/2002-07/msg00029.html
# more about this:
# http://marc.theaimsgroup.com/?l=php-dev&m=106629582813118&w=2
2005-03-26 03:09:09 +00:00
foobar da53094765 BFN 2005-03-26 02:44:04 +00:00
foobar fcba5e099c - Fixed bug #28839 (SIGSEGV in interactive mode (php -a))
(kameshj at fastmail dot fm)
2005-03-26 02:43:02 +00:00
foobar d203f88665 - Fix windows build (using config.w32 and keeping sync with config.m4) 2005-03-26 02:19:56 +00:00
2a256d5114 ChangeLog update 2005-03-26 01:37:31 +00:00
foobar 4e3b8c61dd Fix path 2005-03-26 01:29:43 +00:00
foobar 69cad0226d These entries do not belong in NEWS file (internal issues) 2005-03-25 23:16:28 +00:00
Andi Gutmans bba731e66b - Increment year in copyright notice 2005-03-25 16:13:47 +00:00
Christopher Kings-Lynne 030ebaaa45 (PHP pg_unescape_bytea) Use libpq version of PQunescapeBytea if it exists.
# The version in libpq is newer and faster than the one in PHP, but it is
# necessary for me to add a string copy for freeing purposes.  This copy
# is only needed in Windows AFAIK, how can I detect that?
2005-03-25 06:26:31 +00:00
8817f64457 ChangeLog update 2005-03-25 01:34:02 +00:00
Ilia Alshanetsky e8bd3b9b4f Slightly safer code. 2005-03-25 00:30:43 +00:00
Marcus Boerger 3f16ad98c9 - Second part of removing temp solution 2005-03-24 23:56:14 +00:00
Marcus Boerger bfd0e28e5c - Remove potential bad solution for now
# This seemed to be necessary since there were cases where exceptions were
# ignored by exit() with the result of a silent exit without showing the
# pending exception. Since atm we cannot reproduce it anymore we drop it.
2005-03-24 23:52:34 +00:00
foobar f370582500 Remove: Has not existed for ages.. 2005-03-24 17:16:34 +00:00
Marcus Boerger d27be11233 - Fix null handling found by thies 2005-03-24 12:32:06 +00:00
Marcus Boerger 2906d6570c - Add new test 2005-03-24 12:31:37 +00:00
0a65a3d505 ChangeLog update 2005-03-24 01:35:55 +00:00
Andi Gutmans b6554f5ad7 - Fix typos 2005-03-24 01:11:11 +00:00
Antony Dovgal 76e07faf87 fix leak when register_long_arrays is off 2005-03-24 00:17:16 +00:00
Moriyoshi Koizumi 2cba0ab304 - Fix bug #32311 (mb_encode_mimeheader() does not properly escape characters.) 2005-03-23 23:22:16 +00:00
Moriyoshi Koizumi 3b39b2237f - Add test case for iconv_mime_encode(). 2005-03-23 23:07:42 +00:00
Moriyoshi Koizumi 8f14211e13 - Add sanity check in iconv_mime_encode(). Leaving the third parameter
unspecified would yield bus error.
2005-03-23 23:06:38 +00:00
Andrei Zmievski 992c28db75 Consolidate: call _get_zval_ptr_var() for IS_VAR case in
_get_zval_ptr().
2005-03-23 21:05:56 +00:00
Dmitry Stogov 2283e471f8 windows compatibility fix 2005-03-23 15:12:54 +00:00
Christopher Kings-Lynne 3e6fce84bb - Use a replacement for PQunescapeBytea so that linking against a pre-7.3
libpq is possible.  This is exactly what ext/pgsql currently does.

# I hope this is an acceptable improvement.
2005-03-23 08:52:40 +00:00
Dmitry Stogov e31bc5a643 Allow define connection timeout throught "connection_timeout" option in SoapClient constructor. 2005-03-23 08:08:54 +00:00
Marcus Boerger 15ed825d6e - Notices shouldn't be treatedas errors and thus not being conidered to be
converted to exceptions.
2005-03-23 07:54:22 +00:00
Dmitry Stogov 4ecbf1792b Fixed bug #31695 (Cannot redefine endpoint when using WSDL) 2005-03-23 07:11:55 +00:00
Christopher Kings-Lynne 63ed4a1996 - Ensure that ext/pgsql tests work when linked against 7.2 or lower libpq 2005-03-23 03:24:41 +00:00
9b1c9891fc ChangeLog update 2005-03-23 01:35:05 +00:00
foobar 8865ae43c2 Missing line 2005-03-23 00:44:13 +00:00
foobar 35cfbee1ae - Missing file 2005-03-23 00:39:43 +00:00
foobar a3e46ecde5 clean 2005-03-23 00:37:34 +00:00
Moriyoshi Koizumi 542901d705 - Add Armenian encoding / NLS (patch by Hayk Chamyan) 2005-03-22 22:22:11 +00:00
foobar a075b651be Added SKIPIF 2005-03-22 16:03:10 +00:00
foobar 77910ec63f Addded test for locale aware sort 2005-03-22 15:38:25 +00:00
Antony Dovgal 9ba5535993 fix #28803 (enabled debug causes bailout errors with CLI on AIX
because of fflush() called on already closed filedescriptor)
2005-03-22 15:08:52 +00:00
Ilia Alshanetsky 7af2c5e44b Fixed compiler warning. 2005-03-22 14:44:23 +00:00
Marcus Boerger dce82da87d - Add function pdo_drivers() 2005-03-22 10:36:25 +00:00
Marcus Boerger 73a6a31053 - the driver's key name is not zero terminated, hence we need to either
estrNcpy() it or use the driver struct.
- table headers do not support single column mode so change to two cols
- there should be only one table header
2005-03-22 10:26:51 +00:00
Dmitry Stogov fedbd2145a Fixed bug #30106 (SOAP cannot not parse 'ref' element. Causes Uncaught SoapFault exception) 2005-03-22 10:19:08 +00:00
Derick Rethans 5d0281d060 - Changed to reflect "current practise" 2005-03-22 09:01:13 +00:00
Christopher Kings-Lynne e2b87e6230 Tweak some #if's to be more orthogonal.
(PHP pg_set_error_verbosity) New function to set PostgreSQL error verbosity

(PHP pg_copy_from) Use non-deprecated API if it is available

(PHP pg_copy_to) Use non-deprecated API if it is available
2005-03-22 08:51:23 +00:00
Ilia Alshanetsky b30d8beebf Simplify argument checking code for array_combine(). 2005-03-22 01:45:17 +00:00
3b7f8ef5a1 ChangeLog update 2005-03-22 01:34:26 +00:00
Marcus Boerger 041524feee - Fix Bug #32394 offsetUnset() segfaults in a foreach 2005-03-21 20:07:33 +00:00
Dmitry Stogov 756c5784c1 Support for <soap:body> "parts" attribute 2005-03-21 15:52:53 +00:00
Andrei Zmievski 1a3677ea27 Define PHP_ABSTRACT_ME 2005-03-21 06:43:28 +00:00
Andrei Zmievski 9bf6a7f229 internal_function->fn_flags is not initialized at this point 2005-03-21 06:20:17 +00:00
John Coggeshall c590531c07 Added three new properties to the node: line, column and if it is propreitary or not 2005-03-21 03:54:29 +00:00
0ac2c94ffa ChangeLog update 2005-03-21 01:42:27 +00:00
Wez Furlong 6895ef99c0 fix my silly typo 2005-03-21 01:24:36 +00:00
Marcus Boerger 06a96fdfe5 - Fix test (warnings are expected since there is no support for this) 2005-03-21 00:32:48 +00:00
Marcus Boerger a66e14645c - Add new tests 2005-03-21 00:29:25 +00:00
Marcus Boerger c9108bba25 - Simplify code (only implement handlers that are necessary)
- Fix handling of read only property 'queryString'
- Fix overloading
- Move class init code to their defining .c files for simplification
- Mark class PDORow as final until there's a need to inherit this and
  someone implements the handlers correct then.
2005-03-21 00:29:06 +00:00
Marcus Boerger 29b4277e2d - Added missing description (thanks jani) 2005-03-20 22:08:16 +00:00
Marcus Boerger d7a7913476 - Add new test 2005-03-20 20:14:27 +00:00
Ilia Alshanetsky 978f50c046 Detect shtool properly when build-dir != php source dir. 2005-03-20 19:47:13 +00:00
Marcus Boerger 9c3164e487 - Update 2005-03-20 19:45:36 +00:00
Dmitry Stogov 713622d363 Fixed SoapFault::details passing 2005-03-20 09:55:47 +00:00
Zeev Suraski 18f4a3f9ff Merge 2005-03-20 09:03:40 +00:00
foobar 4d46234912 - Fixed a warning (might also be an error with some exotic compiler) 2005-03-20 02:57:10 +00:00
Christopher Kings-Lynne 721d34bebc Two of the diagnostic definitions were added in 8.0. Add appropriate #ifdefs. 2005-03-20 02:46:02 +00:00
1b42ccfbff ChangeLog update 2005-03-20 01:35:48 +00:00
Marcus Boerger 6a6eaf2b72 - More fixes to gracefully act on exception thrown in overload methods 2005-03-19 15:32:18 +00:00
Marcus Boerger 6735e8c2a7 - Update test 2005-03-19 15:15:32 +00:00
Marcus Boerger fec4937052 - Add new test 2005-03-19 15:09:11 +00:00
Marcus Boerger cf020f1334 - Fix #31185 2005-03-19 15:06:39 +00:00
foobar 5f7f88949b less wordy 2005-03-19 14:37:09 +00:00
Marcus Boerger 7b3813ea11 - We don't need to block those here (works as it works with normal error
overloading)
2005-03-19 14:27:17 +00:00
Marcus Boerger 32c2e664a6 - Fix all incarnations of bug #30266
# most probably we should emit a fatal error here but that has to be
# discussed first
2005-03-19 14:25:42 +00:00
Marcus Boerger e38141478a - Check another incarnation of bug #30266 2005-03-19 14:24:17 +00:00
Antony Dovgal f27fb2d715 fix #32373 (segfault in bzopen('/wrong/path')) 2005-03-19 13:56:00 +00:00
Marcus Boerger d23781e08d - Add missing skipif part 2005-03-19 10:58:44 +00:00
Frank M. Kromann 17264461f9 fix build when the pecl module is part of the php source tree 2005-03-19 10:55:47 +00:00
Marcus Boerger 360fbc09b7 - Interface name was changed 2005-03-19 10:55:35 +00:00
Marcus Boerger 7b2bee1d5b - Fix warnings by doing it the Zend way 2005-03-19 10:51:42 +00:00
Marcus Boerger cd3de28357 - ext/pgsql was updated 2005-03-19 10:08:57 +00:00
Christopher Kings-Lynne 3dd44c3018 Another oversight - make sure constants related to pg_result_error_field are #if'd as well as the function itself 2005-03-19 09:21:51 +00:00
Christopher Kings-Lynne e4570cdbd2 Add regression tests for pg_transaction_status and pg_result_error_field 2005-03-19 09:20:52 +00:00
Christopher Kings-Lynne 28ec3abf87 Minor oversight in #if for an internal function 2005-03-19 09:07:20 +00:00
Rui Hirokawa c30f4ab6ec oniguruma updated to 3.7.1 and changed UChar to OnigUChar. 2005-03-19 08:52:23 +00:00
Christopher Kings-Lynne 1168c30635 Added several new functions to support the PostgreSQL v3 protocol
introduced in PostgreSQL 7.4.

(PHP pg_transaction_status) New function to get in-transaction status of
                            a database connection.

(PHP pg_query_params) New function to allow execution of parameterized
                      queries.

(PHP pg_prepare) New function to allow preparing named queries.

(PHP pg_execute) New function to allow execution of named prepared
                 queries.

(PHP pg_send_query_params) New function that is the async equivalent of
                           pg_query_params.

(PHP pg_send_prepare) New function that is the async equivalent of
                      pg_prepare.

(PHP pg_send_execute) New function that is the async equivalent of
                      pg_execute.

(PHP pg_result_error_field) New function that allows highly detailed
                            error information, most importantly the
                            SQLSTATE error code

# Regression tests are included for all but 2 functions, the rest will
# follow shortly.  Docs will also follow shortly.
2005-03-19 08:46:56 +00:00
43fc6b2254 ChangeLog update 2005-03-19 01:35:34 +00:00
Andi Gutmans e9dbeabd38 - Fix typos 2005-03-19 01:11:48 +00:00
foobar fd03f4f056 Added config.w32 (modified version, original by: Grant.Croker at ca dot com) 2005-03-18 23:24:15 +00:00
Marcus Boerger 23b3d1ca24 - Readd revised version of Jani's fix:
'errors with -d having a check for invalid ini entries'
- Add -v for verbose mode
2005-03-18 22:43:40 +00:00
foobar a98460beac Revert bad idea. (no more error for invalid -d options) 2005-03-18 22:11:53 +00:00
foobar bbe98a88f3 revert 2005-03-18 22:09:31 +00:00
foobar 1524d4890f Fix stupid typos 2005-03-18 21:59:59 +00:00
foobar ebb8d72d88 Fix errors with -d having a check for invalid ini entries 2005-03-18 21:59:06 +00:00
George Schlossnagle d2731eb575 doc should not be freed here, as it is used later in the code path. 2005-03-18 15:40:04 +00:00
Greg Beaver 6a74f0a1b0 update to Archive_Tar 1.3.1 2005-03-18 01:55:10 +00:00
8197b6b678 ChangeLog update 2005-03-18 01:37:52 +00:00
Antony Dovgal 646bb71503 fix typo in error message 2005-03-17 18:12:06 +00:00
Ilia Alshanetsky 1f06bb94c6 MFB: Fixed build of exif extension on win32. 2005-03-17 17:20:52 +00:00
Ilia Alshanetsky fed3058fba Fixed compiler warning on win32. 2005-03-17 17:16:43 +00:00
Rasmus Lerdorf 00832b763f Silence a warning here on systems where off_t is a long long. 2005-03-17 16:26:24 +00:00
foobar 9c2c04b580 - Made CLI option -d output error and exit if an non-existing (or unmodifyable) entry is passed 2005-03-17 13:43:32 +00:00
Rob Richards 04d44c8a5c export php_dl to fix windows cli build 2005-03-17 12:37:18 +00:00
foobar e8895d86b3 Removed unused DEFS subst 2005-03-17 08:16:51 +00:00
foobar 37d1a4f9d3 Fixed build properly 2005-03-17 08:15:50 +00:00
foobar 2d521a73c8 Revert bad fix 2005-03-17 08:15:23 +00:00
Derick Rethans 42b9b26e45 - ZTS fixes
#- Andrei, it would be nice if you could test ZTS builds too before you
#  commit...
2005-03-17 07:31:22 +00:00
e5f7f63d36 ChangeLog update 2005-03-17 01:43:26 +00:00
Rasmus Lerdorf eb253ab571 Build fixes 2005-03-17 01:14:10 +00:00
Rasmus Lerdorf effa111c5e Fix Jani breakage 2005-03-16 22:00:07 +00:00
Ilia Alshanetsky d247e074a7 Fixed bug #32326 (Check values of Connection/Transfer-Encoding
case-incentively).
2005-03-16 20:30:17 +00:00
Harrie Hazewinkel e6ae6fc62d Adding SNMPv2 community based (i.e. protocol version) functions. 2005-03-16 14:29:40 +00:00
foobar 5d190e6b5e - Remove these relics from era when TSRM was optional. 2005-03-16 06:36:44 +00:00
Wez Furlong 7de1d279cc don't call rshutdown twice for dl()'d modules.
Spotted by Andrei.
2005-03-16 04:18:42 +00:00
9d5b3e55e3 ChangeLog update 2005-03-16 01:38:05 +00:00
Wez Furlong 35b0b8de99 fix shutdown so that dl()'d modules are unloaded after all the dtors have
been called.
2005-03-15 23:46:29 +00:00
Andrei Zmievski 06667585b5 Make it possible to load shared extensions from command line via
-dextension= mechanism.
2005-03-15 22:41:12 +00:00
Wez Furlong 5ab7264189 remove debuging code 2005-03-15 15:58:04 +00:00
Wez Furlong 6090964157 I'm a PECL citizen; even though I am HEAD of pecl/sqlite, don't assume that I
am being built against HEAD of php-src.
2005-03-15 15:57:49 +00:00
03aa52bae6 ChangeLog update 2005-03-15 01:43:31 +00:00
Ilia Alshanetsky 8c38ac19bf Fixed possible usage of str without being initialized. 2005-03-15 00:27:52 +00:00
Greg Beaver abb724a6b3 this needs updating 2005-03-14 23:57:07 +00:00
foobar a879957d43 - Fixed bug #32200 (prevent using both --with-apxs2 and --with-apxs2filter) 2005-03-14 21:11:33 +00:00
foobar 005b2d77bf - Fixed bug #18613 (Multiple OUs in x509 certificate not handled properly) 2005-03-14 21:00:03 +00:00
Rasmus Lerdorf 3c0411c496 Fix for bug #32263
This adds proto_num to request_info.  It is defaulted to HTTP 1.0 (1000)
such that it has a valid value even if the underlying sapi doesn't set it
correctly.  It is then used to determine if a 302 or a 303 should be sent
on a Location redirect.  Any non GET/HEAD HTTP 1.1 redirect will get a 303
instead of a 302 to be compatible with the HTTP spec.
2005-03-14 19:25:39 +00:00
Zeev Suraski 1dbc47c43f Clarify logic 2005-03-14 12:53:34 +00:00
Zeev Suraski 6e6a1f0e69 Merge registry fix 2005-03-14 12:42:05 +00:00
foobar 5a4c0afe31 - Back to stone-age 2005-03-14 09:47:31 +00:00
Stanislav Malyshev 7b6ec9178f ws 2005-03-14 09:21:04 +00:00
foobar 5718cb15a3 - Fixed bug #30609 (cURL functions bypass open_basedir) 2005-03-14 09:02:23 +00:00
81629076f8 ChangeLog update 2005-03-14 01:42:08 +00:00
foobar 3795a90741 *sigh* 2005-03-14 01:16:43 +00:00
Moriyoshi Koizumi 6437bc056d - Turn off incorrect case folding to let test over. 2005-03-14 01:11:54 +00:00
foobar bde0661ef6 - Move stuff that belongs in Makefile into Makefile.frag 2005-03-14 01:09:49 +00:00
Marcus Boerger 7c4cd04229 - Update tests 2005-03-13 22:35:34 +00:00
Stanislav Malyshev dd64e6dede Do not convert ZEND_HANDLE_FP to ZEND_HANDLE_STREAM but allow using reader/closer
on it
2005-03-13 17:48:45 +00:00
Ilia Alshanetsky 5bd7be94a4 Fixed compiler warning. 2005-03-13 17:03:55 +00:00
Marcus Boerger dd54f36d49 - Fix signature definition 2005-03-13 16:35:01 +00:00
Marcus Boerger c6e39471de - More exact signatures (even though complete correct not possible atm) 2005-03-13 16:34:37 +00:00
Stanislav Malyshev c3957fe1e8 Fix get_extension_funcs() - extension names are now lowercased, so should
be function arguments.
2005-03-13 15:30:10 +00:00
Andrey Hristov 96cd8a9ce6 credits to Ilia 2005-03-13 14:17:17 +00:00
Marcus Boerger d8db1c2cc5 - Actually this is a much better error decription 2005-03-13 13:22:02 +00:00
Marcus Boerger 565e832edf - Bugfix #32290 2005-03-13 13:15:08 +00:00
83c13d22e9 ChangeLog update 2005-03-13 01:36:01 +00:00
Marcus Boerger 5880260c78 - Update docu 2005-03-12 23:21:41 +00:00
Marcus Boerger 6f668d4978 - Fix extension to be .inc 2005-03-12 23:05:03 +00:00
Marcus Boerger f9de3fd02b - Allow to hook into RecursiveIteratorIterator's child handling
- Better=faster function caching for RecursiveIteratorIterator
- Check for exceptions and fix check for illegal return values
- Add UnexpectedValueException
- Add docu
2005-03-12 23:03:33 +00:00
Marcus Boerger 6dc04d98f2 - If an exception is pending we don't bail out but show the unhandled exception 2005-03-12 22:42:37 +00:00
Ilia Alshanetsky f56e5c045c A more performance friendly version of Andrey's patch. 2005-03-12 17:51:19 +00:00
Andrey Hristov 53823a7d7f FRN 2005-03-12 14:46:41 +00:00
Andrey Hristov f15c24d44c added an optional third parameter to str_word_count(), which is used as
a list of characters which are considerd "is_alpha()". Thus V14GR4 can
be extracted as one word if the user supplies "14" as charlist.
FR #31560
# Nuno, are you wishing to document this one too? :)
2005-03-12 14:41:20 +00:00
Wez Furlong 07fd652824 it's 2005 already
# and we're all too lazy to go through and update all the copyright years :)
2005-03-12 14:07:35 +00:00
Andrey Hristov 1236cfa38a - type is either 1 or 2 if second parameter is set. if not set then type
is 0.
- use the lvalue for the second rvalue
2005-03-12 13:08:19 +00:00
Andrey Hristov cc39b51d2d add a test file 2005-03-12 12:59:53 +00:00
Andrey Hristov c449002566 add test
#forgot to add this one
2005-03-12 12:58:06 +00:00
Andrey Hristov 9e939133d2 FR 32275 - fifth parameter to preg_replace() to count number of replaces
made.
#it would be nice if someone of the doc team documents it. thanks!
2005-03-12 12:03:50 +00:00
Andrey Hristov 070147105f Fixed #30871 2005-03-12 10:11:46 +00:00
Marcus Boerger 016a39195e - Fix test 2005-03-12 01:52:48 +00:00
Marcus Boerger f3a5d430fc - Fix another memleak 2005-03-12 01:46:47 +00:00
Marcus Boerger 6c73805c45 - Fix memleak 2005-03-12 01:44:04 +00:00
73aec110ce ChangeLog update 2005-03-12 01:35:45 +00:00
Wez Furlong 5248f59d1a show list of PDO drivers in phpinfo.
Highlight a possible problem area; iterator leaks when used in foreach(),
at least with sqlite2 driver.
2005-03-12 01:16:59 +00:00
Wez Furlong d88b4c734f build pdo statically on win32, so sqlite2 driver will build.
Alternatively, we could build sqlite as a shared ext, but that has more
of an impact to people upgrading.
2005-03-12 01:15:37 +00:00
Wez Furlong cbcd4271d2 build sqlite2 pdo driver on win32 2005-03-12 01:14:21 +00:00
Marcus Boerger 5985098b98 - Add tests 2005-03-12 00:51:39 +00:00
Marcus Boerger c7ec6d0ce1 - Errcode might be empty 2005-03-12 00:50:20 +00:00
Wez Furlong 9619c3b811 Fix crappy whitespace 2005-03-12 00:07:44 +00:00
Wez Furlong 52dd9f028e Implement a PDO driver for sqlite 2 2005-03-11 23:57:01 +00:00
Marcus Boerger b4a961a234 - Add new test 2005-03-11 02:32:07 +00:00
Marcus Boerger 5a94bb642f - Do not touch return_valu's refcount or is_ref 2005-03-11 02:11:44 +00:00
Marcus Boerger 4e390892b7 - Do not touch return_valu's refcount or is_ref 2005-03-11 01:52:24 +00:00
5727828651 ChangeLog update 2005-03-11 01:50:54 +00:00
Marcus Boerger 45212809b5 - Irrelevant 2005-03-11 01:32:20 +00:00
Marcus Boerger 299a17ba37 - Fix #30266 2005-03-11 01:11:54 +00:00
Marcus Boerger b924ef8796 - Don't touch refcount/is_ref 2005-03-11 00:44:34 +00:00
Marcus Boerger 1d85c3fe80 - Times have changed - php 5 relevant version now 2005-03-11 00:22:28 +00:00
Marcus Boerger faae6ac159 - Do not touch return_valu's refcount or is_ref 2005-03-11 00:14:02 +00:00
Marcus Boerger 04a08c757a - Allow to work under php 5 2005-03-11 00:11:35 +00:00
Marcus Boerger df56c39bda - Cosmetics 2005-03-10 23:52:43 +00:00
Marcus Boerger 4172ec995c - Do not touch return_valu's refcount or is_ref 2005-03-10 23:42:15 +00:00
Ilia Alshanetsky ff80321587 Final set of fixes for bug #27633.
# Many thanks to Edin for helpind analyze and resolve this bug.
2005-03-10 23:37:45 +00:00
Rob Richards e6034763ca require libxml 2.6.0 or higher 2005-03-10 22:35:18 +00:00
Rob Richards 8462621bd7 add workaround for libxml bug when using next() method
remove some no longer needed windows specific code
2005-03-10 22:32:47 +00:00
Marcus Boerger cdb042f632 - Fix fetching bound vars & tests 2005-03-10 18:48:01 +00:00
Marcus Boerger 92af2b6194 - Update tests 2005-03-10 17:55:36 +00:00
Marcus Boerger 1b93629fb8 - Fix test name 2005-03-10 15:54:52 +00:00
Zeev Suraski b31c44d0fd Oops, revert. 2005-03-10 14:33:53 +00:00
Zeev Suraski 1b5d558f91 Fix prototype 2005-03-10 14:32:16 +00:00
Marcus Boerger 38a9516a8a - Rename test script 2005-03-10 14:04:54 +00:00
Marcus Boerger 7473600dba - Make this work under 5 2005-03-10 14:02:46 +00:00
Marcus Boerger 0a93d54c53 - Bugfix #28442 2005-03-10 13:20:26 +00:00
Joe Orton 3796738681 Fix /*-within-comment warning from GCC. 2005-03-10 11:19:32 +00:00
Joe Orton bef3202d9e - Fixed bug #31717: Reject PATH_INFO if "AcceptPathInfo off" is used. 2005-03-10 11:09:32 +00:00
Magnus M��tt� e65d57535f Add tests for firebird. 2005-03-10 02:43:44 +00:00
Magnus M��tt� 72276d013a Add NOT NULL to create so the tests work with Firebird too. 2005-03-10 02:37:20 +00:00
Marcus Boerger e4599c6944 - #31562 2nd part 2005-03-10 02:32:00 +00:00
Marcus Boerger affc9bb69b - Fix #31562 2005-03-10 02:29:45 +00:00
d0d268c405 ChangeLog update 2005-03-10 01:35:35 +00:00
Marcus Boerger bd13b72164 - Wrong order of action - touch 2005-03-10 00:17:17 +00:00
Marcus Boerger 22fcd1aac7 - Fix #31442 unserialize broken on 64-bit systems
- Fix one warning
2005-03-10 00:10:21 +00:00
Marcus Boerger 34c432de7e - Fix #31442 unserialize broken on 64-bit systems
- Fix one warning
2005-03-09 23:58:44 +00:00
Antony Dovgal 3e2dd57c0a fix compile warnings 2005-03-09 21:58:20 +00:00
Magnus M��tt� 0844446176 More tests. 2005-03-09 21:02:31 +00:00
Ilia Alshanetsky 21ff96859e Fixes to ascii downloads on win32. 2005-03-09 20:52:38 +00:00
Wez Furlong a826ded3cc re-enable deps for HEAD 2005-03-09 18:21:41 +00:00
Wez Furlong e162e80d31 prep for pecl release 2005-03-09 18:21:10 +00:00
Wez Furlong 584abff629 update extension version 2005-03-09 18:18:53 +00:00
Wez Furlong 5984f7f3e1 prep for release 2005-03-09 18:14:49 +00:00
Marcus Boerger 56235c6cc8 Fix the fix 2005-03-09 10:29:27 +00:00
Derick Rethans 16d67ab9f5 - MF43: Fixed bug #28067 (partially incorrect utf8 to htmlentities mapping). 2005-03-09 10:13:05 +00:00
Antony Dovgal a2413c32ce fix build 2005-03-09 09:19:27 +00:00
Wez Furlong 95b67c9763 update in readiness for release 2005-03-09 06:04:21 +00:00
Wez Furlong f7ebff804d "thou shalt not throw exceptions except in really exceptional circumstances."
The only allowed places to throw them directly are from within the PDO class
constructors or when dealing with transaction level attributes, where
"hard-failure" is a feature.

All other errors should use the PDO error handling mechanism and respect the
users selected error mode.
2005-03-09 05:50:03 +00:00
Magnus M��tt� 591fb2d97c Add one more test. 2005-03-09 05:29:57 +00:00
Wez Furlong de1d8b91f0 prep package file for release.
fix my favourite typo.
fix compile warnings
2005-03-09 05:03:58 +00:00
Magnus M��tt� 4b4975f1f8 Add test 020 and 021 for PDO_SQLite. 2005-03-09 04:45:08 +00:00
Magnus M��tt� 27c43d5991 Since in_array is case sensitive we need to convert the names to lowercase
otherwise it won't run tests for extensions where the case of the name differ from the
extension name.
2005-03-09 04:23:02 +00:00
Magnus M��tt� d49ecd51c1 Add more tests. 2005-03-09 03:50:10 +00:00
Magnus M��tt� d06dec1ac0 Remove old test. 2005-03-09 03:45:24 +00:00
Marcus Boerger f0a3e5be17 More line count fixes 2005-03-09 03:07:42 +00:00
Marcus Boerger b79e8759fc Add documentation 2005-03-09 03:07:07 +00:00
Marcus Boerger ef17168fd1 No double line counting 2005-03-09 02:54:36 +00:00
Wez Furlong 3efc383a07 probably fix for ? placeholders not working with oci 2005-03-09 02:13:06 +00:00
Magnus M��tt� 088972feee Fix segv when einfo->errcode is not available.
Add missing NULL entry to oci_methods.
2005-03-09 01:56:43 +00:00
da2cb43507 ChangeLog update 2005-03-09 01:40:19 +00:00
Marcus Boerger b06d0ef758 Add description for interface Serializeable 2005-03-09 01:21:04 +00:00
Dan Scott e90582a990 Add test for PDOStatement::getColumnMeta().
Note that PDO_ODBC test fails as it is currently unimplemented.
2005-03-09 00:20:07 +00:00
Magnus M��tt� ddde4497b2 Add more tests. 2005-03-08 23:00:34 +00:00
foobar d0bb8f5f12 This makes more sense. (Someone might actually use php_error_docref0() :) 2005-03-08 21:42:10 +00:00
Johannes Schlüter 0e9e0f62fc - Fix #32238 (spl_array.c: void function cannot return value) 2005-03-08 21:33:15 +00:00
foobar e17ad42e38 - This was not needed (said Marcus) 2005-03-08 21:22:03 +00:00
Ilia Alshanetsky 0dbe348d1d Improve the performance of htmlspecialchars_decode() by 20-30%. 2005-03-08 21:13:03 +00:00
Dan Scott 83dfcbf3f6 Add simple tests for insert through PDO::prepare/PDOStatement::execute.
Tests both question mark placeholders and named parameters.
2005-03-08 18:12:22 +00:00
Dan Scott 570976d236 Add a test for PDOStatement::columnCount(). 2005-03-08 17:39:41 +00:00
foobar 7c1d94a702 update 2005-03-08 06:40:05 +00:00
foobar 360381583d reorder 2005-03-08 06:38:58 +00:00
7ab5b4ff42 ChangeLog update 2005-03-08 01:42:09 +00:00
Marcus Boerger 7b64727519 - Add/Correct parameter info and protos 2005-03-08 00:42:49 +00:00
Marcus Boerger bbccc37f84 - Add new tests 2005-03-07 22:43:27 +00:00
Marcus Boerger efb3529b7f - Add new tests 2005-03-07 22:36:12 +00:00
Marcus Boerger 9c08e3ccae - Update signature 2005-03-07 22:27:29 +00:00
Marcus Boerger 6200cdba7c - Add some more news 2005-03-07 22:26:53 +00:00
Marcus Boerger 1a67f846d6 - Add test 2005-03-07 22:24:18 +00:00
Marcus Boerger 757da1eed5 - New Interface Serializeable
- Change signature of unserialize() callback to ease inheritance and
  support code reuse of handlers
2005-03-07 22:23:14 +00:00
Marcus Boerger 9b8725a967 - Add more methods
- Avoid exceptions in iterator access
- Do not read in rewind8) or next() instead read in iteration if neccessary
- Correctly count line numer on reading
2005-03-07 22:18:40 +00:00
Marcus Boerger 6bd8257607 - Fix proto
- Do not try to write zero bytes
2005-03-07 22:10:08 +00:00
Marcus Boerger cf6711abfa - Length needs to be positive 2005-03-07 21:54:08 +00:00
Marcus Boerger 97655f8a3b - Make maic qutes runtime work if length is specified too 2005-03-07 21:52:34 +00:00
Marcus Boerger 85ebbd28a0 - Delay memory allocation, speeds up faiure case 2005-03-07 21:28:38 +00:00
Ilia Alshanetsky 975ff6f5d5 Added htmlspecialchars_decode() function for fast conversion from
htmlspecialchars() generated entities back to characters.
2005-03-07 19:37:27 +00:00
Marcus Boerger 4ae4b63f44 - Add updated description 2005-03-07 19:31:44 +00:00
Marcus Boerger 6f00c1b73b - Fix #32226 2005-03-07 19:28:10 +00:00
Zeev Suraski 118b7b567a Revert // </script> patch 2005-03-07 16:48:49 +00:00
Ilia Alshanetsky 0c9610fc9d Fixed bug #32210 (proc_get_status() sets "running" always to true). 2005-03-07 16:17:12 +00:00
Magnus M��tt� 12e60c9c1e Add test 017. 2005-03-07 15:52:58 +00:00
Marcus Boerger 1d54f897ca - Fix problem with some plain c pedantic compilers 2005-03-07 08:04:47 +00:00
Marcus Boerger 37e2436b6f - Add new test 2005-03-07 01:43:02 +00:00
Marcus Boerger 7bbbfa3f15 - Add new tests 2005-03-07 01:39:12 +00:00
b25b123467 ChangeLog update 2005-03-07 01:33:24 +00:00
Marcus Boerger 3960865e8e - In File::fgetcsv() use max length from object 2005-03-07 01:00:29 +00:00
Marcus Boerger 40bf907541 - Add File object 2005-03-07 00:40:57 +00:00
Marcus Boerger 7fbc91acce - Allow length 0 as default (e.g. skip param) 2005-03-07 00:16:18 +00:00
foobar 84e560435e MFB: Fix VPATH build 2005-03-06 23:16:44 +00:00
Marcus Boerger 89f320755d - Use new objects 2005-03-06 23:09:21 +00:00
Marcus Boerger 16f0329a52 - Fix problem with exception in other methods, too 2005-03-06 23:07:43 +00:00
Marcus Boerger f3970b8076 - Add intefaces from zend_interface.h as macros 2005-03-06 22:57:45 +00:00
Marcus Boerger 0d1e43711a - Fix problem with exceptions in hasChildren calls 2005-03-06 22:57:05 +00:00
Marcus Boerger ef64180c90 - Actuall the comments were correct 2005-03-06 22:18:09 +00:00
Marcus Boerger 86ac9559be - Fix by Tim 2005-03-06 22:15:35 +00:00
Marcus Boerger 5830e46a84 - Bugfix #28840 __destruct of a class that extends mysqli not called 2005-03-06 21:40:01 +00:00
Ilia Alshanetsky 96d7eebce8 Make html_entity_decode() 15-20% faster by avoiding pointless string
duplication.
2005-03-06 19:36:51 +00:00
foobar 6d6e939f9b - Moved ext/fam and ext/mnogosearch to PECL 2005-03-06 19:24:21 +00:00
Ilia Alshanetsky c8687cdb79 Fixed bug #29424 (width and height inverted for JPEG2000 files). 2005-03-06 17:03:43 +00:00
foobar 0344652b38 Fixed compile warning (bug #32046) 2005-03-06 16:22:02 +00:00
foobar ede98577e2 Fix compile warning (bug #32047) 2005-03-06 15:55:41 +00:00
1d3c79a8a6 ChangeLog update 2005-03-06 01:46:24 +00:00
Dan Scott 8a3cc406be Usually a good idea to have .cvsignore around. 2005-03-05 21:52:04 +00:00
Dan Scott 48a6151051 Test PDO::beginTransaction and PDO::rollBack. 2005-03-05 21:03:12 +00:00
John Coggeshall 81c161d0a7 Opps. 2005-03-05 17:55:45 +00:00
Moriyoshi Koizumi 5e33c04e95 - Fixed bug #32109 ($_POST is not populated in multithreaded environment). 2005-03-05 16:41:13 +00:00
Dan Scott fc825e2071 Missed this one... 2005-03-05 15:48:54 +00:00
Dmitry Stogov eff0d65240 Fixed bug #32115 (dateTime encoding of timezone incorrect) 2005-03-05 13:27:13 +00:00
Marcus Boerger e4ce3e36ef - Negative seeking is not supported 2005-03-05 11:35:13 +00:00
7fc626f89b ChangeLog update 2005-03-05 01:34:31 +00:00
John Coggeshall 5fe241ff64 Starting tests.... 2005-03-05 01:13:10 +00:00
Andrei Zmievski f8fc9a3256 Check that object can actually return a class entry. I need this for a
class-entry-less helper objects that should not be present in the class
table.
2005-03-05 00:45:47 +00:00
Rob Richards d42656b033 use php streams for uri I/O under PHP 4 2005-03-04 15:41:33 +00:00
foobar a942bcd669 Merge from sapi/apache/config.m4 and cleanup 2005-03-04 15:15:26 +00:00
foobar 4c883c79bb Do not set apache stuff if not building apache 2005-03-04 15:14:47 +00:00
foobar ba5479a099 This did not work for some reason, better revert it 2005-03-04 15:13:03 +00:00
foobar e891278f1d Add missing subst 2005-03-04 14:34:24 +00:00
eafd1c4678 ChangeLog update 2005-03-04 01:35:53 +00:00
Marcus Boerger f76f510185 - Add tests
- Fix testname
- Drop unnecessary include line (was wrong anyway)
2005-03-04 01:29:27 +00:00
Dan Scott 5ce920f189 One more PDO_ODBC test (tested with DB2 V8.2). 2005-03-03 20:30:38 +00:00
Dan Scott dc4501cf99 Next three tests for PDO_ODBC (tested with DB2 V8.2). 2005-03-03 20:23:29 +00:00
Dan Scott 12f1993f8e Next batch of tests for PDO_ODBC (tested against DB2 V8.2). 2005-03-03 13:53:55 +00:00
Dan Scott 49d1349b9a Begin porting standard PDO tests to PDO_ODBC, testing against DB2. 2005-03-03 11:49:35 +00:00
Marcus Boerger d9145daa61 - Rename test 14 to 16 (which is a new one) and MFB 14 again 2005-03-03 10:48:02 +00:00
Marcus Boerger 7cca51e97e - Fix bug #32134 2005-03-03 10:35:34 +00:00
Zeev Suraski baf717472e New egg 2005-03-03 09:55:10 +00:00
Ilia Alshanetsky 09a8f38e39 Fixed bug #32160 (file truncation in copy() when source & destination are
the same).
2005-03-03 03:29:23 +00:00
c2eed8e950 ChangeLog update 2005-03-03 01:36:08 +00:00
Marcus Boerger a50157121d - Finish work on spl_autoload*() 2005-03-03 00:20:57 +00:00
Marcus Boerger 30ee47c1d8 - Let spl_autoload_extensions() always return what's registered 2005-03-02 20:59:06 +00:00
Moriyoshi Koizumi e628f2d9fa - Add testcases for bug #32001 2005-03-02 19:27:37 +00:00
Rob Richards 7d7ca3b713 BFN 2005-03-02 18:28:31 +00:00
Rob Richards c90305cb2e Fixed bug #31033 (php:function(string, nodeset) with xsl:key crashes PHP)
- only in 5.1 branch for now due to significance of change
2005-03-02 18:27:25 +00:00
Stefan Esser 4d5599f6e0 Fixed possible bufferoverflow 2005-03-02 18:21:45 +00:00
Rob Richards bd5e6e6232 Fixed bug #32001 (xml_parse_into_struct() exceeds maximum execution time) 2005-03-02 18:13:34 +00:00
37ab4fe1b2 ChangeLog update 2005-03-02 01:35:54 +00:00
Marcus Boerger 0246835860 - Update .cvsignore 2005-03-02 01:15:54 +00:00
Marcus Boerger 5cb7104630 - Add new functions 2005-03-02 01:14:41 +00:00
Marcus Boerger f33adafab7 - Update docu 2005-03-01 23:44:05 +00:00
Marcus Boerger 0b3ed59fb6 - Support statuc methods/functions 2005-03-01 23:41:49 +00:00
Ilia Alshanetsky 71b9b512cc Fixed bug #31792 (getrusage() does not provide ru_nswap value). 2005-03-01 21:32:25 +00:00
Magnus M��tt� 865c23e947 Add Oracle tests for PDO. 2005-03-01 21:09:12 +00:00
Andrei Zmievski 584f64ed62 Allow = sign in long option argument.
Fixes PEAR bug #1831.
2005-03-01 18:19:12 +00:00
Anantha Kesari H Y 033a45903c NetWare allows directory seperator as \ and / 2005-03-01 14:59:37 +00:00
Stefan Esser 14abc19a76 Handle last or broken JP2 boxes correctly. 2005-03-01 13:53:02 +00:00
Antony Dovgal 6dac68f669 fix SIGFPE in gmp_powm(), gmp_sqrt() & gmp_sqrtrem() when using negative values
do not allow negative value to be passed to gmp_fact()
2005-03-01 13:09:33 +00:00
Marcus Boerger 67fd1f2654 - MFB 2005-03-01 10:14:18 +00:00
Marcus Boerger 9001280387 - Fix #32130 (ArrayIterator::seek() does not throw an Exception on invalid index) 2005-03-01 10:06:11 +00:00
Marcus Boerger 76c5d53993 - Need to store class entry 2005-03-01 10:05:12 +00:00
foobar c61608ef35 update 2005-03-01 09:26:28 +00:00
foobar 0b7435f590 ws 2005-03-01 09:25:36 +00:00
foobar 143d62a179 Fix the fix for one line comments with <script..> </script> tags 2005-03-01 02:17:41 +00:00
foobar 3f320607ab touch 2005-03-01 01:45:34 +00:00
87528d9138 ChangeLog update 2005-03-01 01:41:19 +00:00
Johannes Schlüter f28e72b06a - Change comment: Syntax highlighter uses <span> instead of <font> 2005-03-01 00:23:31 +00:00
Marcus Boerger a4521139da - Reserve some bits for flags 2005-02-28 22:37:13 +00:00
Ilia Alshanetsky 8eab7ab62e Added notes about ignore_user_abort to php.ini* 2005-02-28 22:09:22 +00:00
Marcus Boerger 6ce9bcc31e - Need to drop ce until engine gets fixed 2005-02-28 19:23:56 +00:00
Marcus Boerger ddd62f2b07 - Add support for methods dynamically added through object handlers 2005-02-28 18:53:33 +00:00
Marcus Boerger eb330a95f6 - Fix warning 2005-02-28 18:44:14 +00:00
Marcus Boerger d072f6de54 - Changing handler table definitively results in SEGVs 2005-02-28 18:40:02 +00:00
foobar cfecb1face reorder 2005-02-28 16:47:52 +00:00
Stefan Esser e2f1b375a2 This way around for correct error messages 2005-02-28 16:32:49 +00:00
Stefan Esser b7476a5bd6 Drop invalid arrays 2005-02-28 16:22:39 +00:00
Joe Orton bc1c0c2e12 Fix type mismatch. 2005-02-28 13:30:50 +00:00
Rasmus Lerdorf 99f832a206 If pdo is disabled, skip all the pdo extensions. 2005-02-28 08:18:47 +00:00
Pierre Joye ee49617830 - WS 2005-02-28 08:16:47 +00:00
Pierre Joye 4901a8e2b8 - create LIBXML_VERSION and LIBXML_DOTTED_VERSION constants 2005-02-28 08:13:35 +00:00
Wez Furlong 401f813383 Let's install the mbstring headers.
Fixes PECL #3516
2005-02-28 05:21:35 +00:00
Wez Furlong 742b0ab676 build bundled sqlite on win32 2005-02-28 03:23:56 +00:00
Wez Furlong c145e5a7e3 juggle around a bit; commit generated file 2005-02-28 03:21:52 +00:00
4832e83a1d ChangeLog update 2005-02-28 01:39:43 +00:00
Wez Furlong f58e2006d5 fix for PECL Bug #3452 2005-02-28 01:30:14 +00:00
Marcus Boerger fdc3fce335 - Fix missapplied logic inversion 2005-02-28 01:08:07 +00:00
Marcus Boerger f7d2317ce7 - Fix typo 2005-02-28 00:07:16 +00:00
Marcus Boerger 8de753f09e - Add tests 2005-02-27 23:15:52 +00:00
Marcus Boerger fef7cb4e29 - Disable direct serializing for PHP 5.0 2005-02-27 22:58:08 +00:00
Marcus Boerger 6b18b88b2c - Allow default fetch mode to contain fetch flags 2005-02-27 22:48:14 +00:00
Marcus Boerger d0a76e992b - Add new test 2005-02-27 22:39:35 +00:00
Marcus Boerger 03a4a8c11d - Add some fetch column related capailities
- Add direct (classtype based) unserializing capabilities
2005-02-27 22:32:11 +00:00
Marcus Boerger 893e9c0498 - Add new test 2005-02-27 22:25:11 +00:00
Marcus Boerger a586cecf35 - If silence if wanted we do not error out 2005-02-27 22:22:26 +00:00
Marcus Boerger c4bc32ff7b - Add two new methods
- Fix signature, no need to cast it
2005-02-27 22:21:17 +00:00
Marcus Boerger c087f07233 - These must be initailized 2005-02-27 22:18:55 +00:00
Hartmut Holzgraefe f7e8fcb8e0 fully distinguish between database and statement level errors 2005-02-27 20:34:36 +00:00
Rasmus Lerdorf 86994c3357 Add a comment to remind me to have a look at this at some point. 2005-02-27 18:45:07 +00:00
Ilia Alshanetsky 0367674517 Fixed compiler warnings. 2005-02-27 17:08:18 +00:00
Marcus Boerger 8324d21955 - Update method_exists to new handlers and allow first parameter as string 2005-02-27 15:03:09 +00:00
foobar 3f57b46f67 cs fix (really annoying :) 2005-02-27 12:50:22 +00:00
Hartmut Holzgraefe dd7d41e938 use fetch_fields only once and remember the result 2005-02-27 12:43:23 +00:00
foobar 0ec872a153 - Cache the version check results
# ..and prepare for --enable-developer-mode
2005-02-27 12:42:28 +00:00
Hartmut Holzgraefe 04f2f981e0 changed the error checks on result set retrieval
UPDATEs not modifying anything are not actually bugs
2005-02-27 12:15:47 +00:00
Hartmut Holzgraefe 81770f3c39 no need to check for execution status, always free a result set if there
is one
2005-02-27 12:05:46 +00:00
Hartmut Holzgraefe fa5070b39c just to be sure ... 2005-02-27 11:55:39 +00:00
Hartmut Holzgraefe beb7151936 cols 2005-02-27 11:46:38 +00:00
Hartmut Holzgraefe 8725ed75cd CS / whitespace 2005-02-27 11:42:18 +00:00
Hartmut Holzgraefe d3fcc41be7 use auto generated error -> state mappings 2005-02-27 11:39:15 +00:00
Hartmut Holzgraefe 4c4ec3c5db line endings 2005-02-27 11:36:07 +00:00
Hartmut Holzgraefe 409a94ffea error code mapping (generated from mysql 5 sql_state.h file using
the get_error_codes.php script)
2005-02-27 11:31:49 +00:00
Stanislav Malyshev 634a5ec6f8 fix typo 2005-02-27 11:30:41 +00:00
Hartmut Holzgraefe 49a383ef4f initial checkin 2005-02-27 11:29:17 +00:00
Sara Golemon 00c6078ff1 Enum filters in phpinfo() 2005-02-27 08:12:12 +00:00
Wez Furlong ae5649598d upgrade bundled sqlite to sqlite 3.1.3 2005-02-27 05:20:19 +00:00
58f61a16ee ChangeLog update 2005-02-27 01:35:00 +00:00
Wez Furlong cbe40ddd2d fix comma 2005-02-27 01:30:58 +00:00
Wez Furlong 2c5b2fc105 Alan: moved your fields away, but reserved you a pointer.
Changed PDO::lastInsertId() to have following proto:

	string PDO::lastInsertId([string name])

this allows arbitrary unique identitifers to be returned from the driver.

The optional name parameter is for databases that require additional contextual
information to be able to return the correct identifier.  None currently use
it, but pgsql will be on the list of drivers that do.
2005-02-26 17:27:51 +00:00
Wez Furlong 31239f2130 *cough* 2005-02-26 16:03:55 +00:00
Wez Furlong 09fee0bf21 and the generated file 2005-02-26 15:45:43 +00:00
Wez Furlong b4ad599df2 fix for PECL #3545 2005-02-26 15:44:38 +00:00
Wez Furlong 31f5f8f907 fix line endings 2005-02-26 15:41:54 +00:00
Wez Furlong 8be87fbab0 fix broken line endings 2005-02-26 15:35:41 +00:00
Wez Furlong b38f21b99c let the test-suite run from an alternate build dir 2005-02-26 15:23:10 +00:00
Marcus Boerger f6bf9e67a8 - Make detection work for macros 2005-02-26 02:15:00 +00:00
Marcus Boerger ec2babc448 - Simplify 2005-02-26 02:06:49 +00:00
4e66bbdfb7 ChangeLog update 2005-02-26 01:34:35 +00:00
Greg Beaver a247bf01ba use 1.3.5 2005-02-26 01:27:49 +00:00
Edin Kadribasic b8a6661c81 Allow arbitrary files to be added to distro with ADD_DIST_FILE(filename) 2005-02-26 01:07:48 +00:00
Marcus Boerger 74dba52933 - Prepare for db1.85 emulation with db3 2005-02-26 01:05:33 +00:00
Edin Kadribasic bf3ec794f1 Added .reg files to the disto (were added manually) 2005-02-26 00:37:10 +00:00
Marcus Boerger 9ffeb12c4c - Add support for db1 through emulation
# Most probably db4 requires a slightly different detection since functions
# are macros which most probably doesn't work with current configure check.
2005-02-25 23:51:53 +00:00
Frank M. Kromann 28dbc778d8 FreeTDS does not have support for DBTEXTLIMIT 2005-02-25 23:24:18 +00:00
Frank M. Kromann 9d0e081c56 Kill warnings. There should be no need for this flag as it's already defined in libxml headers. 2005-02-25 22:59:26 +00:00
Marcus Boerger d907a500bd - Align 2005-02-25 20:02:45 +00:00
Antony Dovgal 4707b43193 fix bug preventing from building oci8 as shared module
(patch by stanislav dot voroniy at portavita dot nl)
2005-02-25 11:31:10 +00:00
Georg Richter 2e2bfb83c4 fix for bug #31939 2005-02-25 08:43:41 +00:00
Anantha Kesari H Y 5ecdba358c changing the windows style path seperator in netinet\in.h to netinet/in.h 2005-02-25 06:31:06 +00:00
Anantha Kesari H Y 147dab1b57 time.h is available in NetWare LibC.
path sperator has been changed from \ to / while including netware\sendmail_nw.h
2005-02-25 05:57:41 +00:00
896efd3a13 ChangeLog update 2005-02-25 01:35:47 +00:00
Marcus Boerger 5b1af1c1ed - Change to enable (synch with unix build system) 2005-02-25 01:17:45 +00:00
Edin Kadribasic dec1c86ab6 Added --enable-debug-pack which will create a zip file with *.pdb debug
symbol files. Could be used to allow windows users to use free Microsoft
debugging tools to generate useful backtraces.

Debug tools can be found at:
http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx

CLAGS used described in:
http://support.microsoft.com/default.aspx?scid=kb;en-us;291585

Only tested on VC 6.0.
2005-02-25 00:20:19 +00:00
Ilia Alshanetsky a3085602d0 Fixed bug #32081 (default socket value is not being used). 2005-02-24 23:58:59 +00:00
Edin Kadribasic e2974d755d Offical zip files have -Win32 suffix 2005-02-24 23:28:49 +00:00
Marcus Boerger 89d75d5c9c - Little speed up 2005-02-24 20:22:40 +00:00
Marcus Boerger 72dc2d1025 - This must be == 1 2005-02-24 20:22:18 +00:00
foobar 34805e8d39 - Fixed all buildconf warnings + cross-compiling issues 2005-02-24 19:27:10 +00:00
Andi Gutmans ac63e8c2c1 - Make one line comments work the same with <script ...> </script> as with
- other tags. This will break scripts that have whitespace at the end
- of the closing tag </script    > but this is barely used as it is
- and I doubt ppl used whitespace. (patch by Jani)
2005-02-24 19:25:44 +00:00
foobar 9a3c0eca4b - cross-compile fix 2005-02-24 19:05:01 +00:00
Andi Gutmans 74b722f14c - This part of the patch was right 2005-02-24 18:40:19 +00:00
foobar 2a6da0f24c - Restructured and added a few comments here and there.
- Made macros of couple of tests previously littering configure.in
  (e.g. PHP_PROG_AWK, PHP_PROG_LEX, PHP_PROG_BISON..)
- Moved all PHP_SUBST() calls into their respective macros.
  (no point adding empty entries in Makefile if macro is not used)
2005-02-24 18:11:36 +00:00
foobar 129a8a7607 - Generated with re2c 0.9.4 2005-02-24 17:50:20 +00:00
Pierre Joye a6b93ee6a0 - we do not use any global 2005-02-24 15:35:56 +00:00
Pierre Joye ec93388662 - we do not need this function anymore 2005-02-24 15:30:24 +00:00
Pierre Joye 19c1535ae5 - revert previous commit, use libxml version to enable or not a function
(safer)
- add xmlwriter_flush, flush the buffer, works with both file and mem
  buffer, BC kept
- use ifdef for the function implementation
(Rob, Pierre)
2005-02-24 15:08:37 +00:00
Stanislav Malyshev 8919a7ae08 fix typo 2005-02-24 10:58:16 +00:00
Dmitry Stogov f3f8792b9b Fixed bug in ZEND_POST_INC/ZEND_POST_DEC handlers.
These opcodes assume IS_TMP_VAR as result.
2005-02-24 08:52:11 +00:00
Andi Gutmans de9206a9e9 - Need zend_Compile.h for struct _zend_arg_info definiton (thanks to Joe
Orton)
2005-02-24 03:11:29 +00:00
Andi Gutmans f4cdd366e1 - Fix comment 2005-02-24 03:04:57 +00:00
Andi Gutmans 8140f095c6 - Revert following patch until we decide what is the right way to handle
- this:
 - Fix signatures they are all meant to be able to deal with any type in any
    object storage (though we are still missing several parts)
2005-02-24 02:35:59 +00:00
5caddd66ba ChangeLog update 2005-02-24 01:35:08 +00:00
Marcus Boerger f982890a58 - Missed during last committs somehow 2005-02-24 00:14:50 +00:00
Marcus Boerger 30f870f957 - Prevent superflous memory allocation 2005-02-24 00:12:15 +00:00
Marcus Boerger b89fda667f - Drop driver name from generic tests and reserve those names for driver
specific tests.
# Well a little design correction
2005-02-24 00:11:16 +00:00
Ilia Alshanetsky fac3e54ad9 Additional safety checks.
# More to follow
2005-02-23 23:39:36 +00:00
Marcus Boerger b786b93b7a - Delay ctor call so that it can overwrite everything and the data can
already be accessed from the ctor.
2005-02-23 23:28:30 +00:00
Marcus Boerger 03c03f5890 - Checks for older versions of libxml2 2005-02-23 23:02:01 +00:00
Marcus Boerger 3f5e714d7b - Slightly redesign
# More to follow, explanation follows at more public place
2005-02-23 22:49:32 +00:00
Rasmus Lerdorf 06aede5b5d Filter skeleton code. No actual filters yet. 2005-02-23 22:41:43 +00:00
Ilia Alshanetsky 8aaafb1ae9 Increase maximum mmapable file size to 2mb from 1mb. 2005-02-23 22:41:05 +00:00
Ard Biesheuvel f21ab2f60f Fixed bug #31597: ibase_connect() - incorrect warning 2005-02-23 20:20:25 +00:00
Ilia Alshanetsky bd0d48f7a5 Fixed compiler warning. 2005-02-23 18:53:09 +00:00
Ilia Alshanetsky 5ffe5a485d MFB_4_3: Fixed bug #29521 (compress.bzip2 returns error when used with http
wrapper).
2005-02-23 18:48:49 +00:00
Stefan Esser 0ef1f50383 Correcting bounds check before someone uses this code 2005-02-23 18:26:39 +00:00
Ard Biesheuvel b9b03a7feb Added search for libfbclient 2005-02-23 17:44:22 +00:00
Moriyoshi Koizumi d2627b5107 - Synch with the latest checkouts. (include fix by Joe Orton. Thanks.) 2005-02-23 13:35:34 +00:00
Derick Rethans 30d9fd6bba - Fixed bug #32076 (ReflectionMethod :: isDestructor() always return true)
(Patch by Antony Dogval)
2005-02-23 12:20:04 +00:00
Rob Richards 6966023564 fix libxml versions for comments 2005-02-23 11:25:32 +00:00
Stanislav Malyshev db3fdce304 Custom object serializer infrastructure - PHP implementation
# The detailed announce on the list will follow
2005-02-23 11:17:52 +00:00
Stanislav Malyshev 5b98a09219 Custom object serializer infrastructure
# The detailed announce on the list will follow
2005-02-23 11:15:51 +00:00
Joe Orton 630955304a Ignore generated files. 2005-02-23 11:14:28 +00:00
Anantha Kesari H Y 73ef0fd315 NetWare can make use of Autoconf generated header file 2005-02-23 11:02:12 +00:00
Anantha Kesari H Y d25d507bec NetWare LibC has mkstemp implementation 2005-02-23 10:54:06 +00:00
Anantha Kesari H Y fc7bbdddbd NetWare can make use autoconf generated header file 2005-02-23 10:31:44 +00:00
Anantha Kesari H Y f04b1e97bb NetWare LibC has pwd.h 2005-02-23 08:56:47 +00:00
foobar 775cfd708e Hack the planet 2005-02-23 07:50:28 +00:00
a5806375b5 ChangeLog update 2005-02-23 01:36:05 +00:00
Marcus Boerger e0c445d9b1 - Update docu 2005-02-23 01:34:14 +00:00
Marcus Boerger d02a2df3f0 - Use PHP not C semantics 2005-02-23 01:16:21 +00:00
Marcus Boerger 3f1738f96d - Add new tests 2005-02-23 01:13:13 +00:00
Marcus Boerger 72c1baa9d8 - Allow to convert Traversable into Aggregate 2005-02-23 01:09:10 +00:00
Marcus Boerger 5f1c3f4a7e - Allow to convert traversable into Iterator 2005-02-23 01:03:16 +00:00
Marcus Boerger 3cb441df9a - Add new tests 2005-02-23 00:56:34 +00:00
Marcus Boerger 40d180a87d - Reorganize ctor_args handling (fixes some bugs) 2005-02-23 00:52:46 +00:00
Marcus Boerger effe989d91 - Show that PDOStatement implements Traversable 2005-02-23 00:52:14 +00:00
Marcus Boerger 77cf78caa1 - Make ctor args optional 2005-02-23 00:29:44 +00:00
Marcus Boerger 994006abd4 - Need to also revert operator 2005-02-22 21:22:23 +00:00
Marcus Boerger d235a2bf4a - Put this back in (forgot to revert) 2005-02-22 20:59:52 +00:00
Marcus Boerger cb9658feef - Revert signature of PDO:prepare()
old: proto object PDO::prepare(string statment [, array driver_options [, string classname ]])
  now: proto object PDO::prepare(string statment [, array options])
  param 'classname' and and 'ctor_args' are now set through options
  using index PDO_ATTR_STATEMENT_CLASS
- Change all deriver_options parameters to 'options' to reflect the fact
  that they may contain statement as well as driver specific flags
2005-02-22 20:25:56 +00:00
Marcus Boerger 3c743e3a98 - Allow to derive PDOStatement
- Verify fetch modes
- Add last fetch mode PDO_FETCH_FUNC (only valid inside fetchAll()) that
  allows to completley customize the way data is treated on the fly
2005-02-22 19:27:34 +00:00
Ilia Alshanetsky d97da3e222 Fixed bug #31288 (Possible crash in mysql_fetch_field(), if
mysql_list_fields() was not called previously).
2005-02-22 14:58:49 +00:00
Marcus Boerger 237cd7e511 - We cannot provide this fallback becuase it requires zend_object ptr's.
# Found that out after discussing with Stas. As a consequence still every
# extension that provides specialised class types is responsible for
# calling its __destruct. This is currently not done for several exts.
2005-02-22 14:53:57 +00:00
foobar f180478aad Fix cross-compile 2005-02-22 13:52:51 +00:00
foobar 2926bed9f2 Fix build (it was #ifNdef NETWARE..) 2005-02-22 13:49:52 +00:00
Marcus Boerger 3096f1edac - Fix signatures they are all meant to be able to deal with any type in any
object storage (though we are still missing several parts)
2005-02-22 12:06:59 +00:00
Marcus Boerger 93e13aff05 - Force calling of dtors unless otherwise specified (fixes several __destruct bugs) 2005-02-22 11:43:05 +00:00
Marcus Boerger 18985accc4 - Call dtor 2005-02-22 11:37:53 +00:00
Moriyoshi Koizumi 20f709f339 - Update libmbfl (fixes bug #32063). 2005-02-22 09:57:45 +00:00
Anantha Kesari H Y 8eb3b715d1 NetWare can include autoconf generated config headers 2005-02-22 08:48:33 +00:00
Pierre Joye 0802829ad4 - ifdef all (protos and functions) and using the correct version
- fix protos ending
- ws
2005-02-22 08:05:05 +00:00
Anantha Kesari H Y d00a304f0e NetWare can make use of the configure script generated header file. 2005-02-22 06:13:49 +00:00
Anantha Kesari H Y 295f8d918f NetWare can use Autoconf based build system. 2005-02-22 06:05:20 +00:00
Moriyoshi Koizumi b19d28907e - Silly typo. 2005-02-22 05:07:37 +00:00
4fd1d7e85a ChangeLog update 2005-02-22 01:36:03 +00:00
Ilia Alshanetsky c7b931d80d Fixed bug #31515 (Improve performance of scandir() by factor of 10 or so). 2005-02-22 00:24:13 +00:00
foobar 498cce1f80 Nuke unused variables when PCRE is not compiled in 2005-02-21 21:00:04 +00:00
foobar 42599f8191 Remove the useless TSRM_FETCH calls 2005-02-21 20:57:18 +00:00
Marcus Boerger ab8f1f316b - Add new test 2005-02-21 18:55:51 +00:00
Marcus Boerger 74b1cee57f - Show warnings 2005-02-21 18:54:45 +00:00
Hartmut Holzgraefe 0ef339df92 "SET SESSION" is not supported by MySQL 3.23, as session is the default
scope for SET anyway we can drop the SESSION specifier (PECL Bug #3470)
2005-02-21 16:10:03 +00:00
Pierre Joye ec684f72f8 - examples usage, initial commit 2005-02-21 15:31:35 +00:00
Moriyoshi Koizumi ffa8233ed9 - BFN 2005-02-21 15:17:00 +00:00
Moriyoshi Koizumi 3093ceb3da - WS fix. 2005-02-21 15:14:32 +00:00
Moriyoshi Koizumi 0d7845384f - Fix bug #28568 (known_post_content_types is not thread safe).
# What is eventually necessiated is entire SAPI redesign, I think.
2005-02-21 15:14:02 +00:00
Moriyoshi Koizumi 38dfd6886d - Add missing entry. 2005-02-21 15:10:19 +00:00
Pierre Joye 46eb3e977c - add xmlTextWriterStartComment and xmlTextWriterEndComment support 2005-02-21 15:05:54 +00:00
Ard Biesheuvel bafbe90392 Fixed PECL bug #3527: Missing quotation marks in php_pdo_firebird_int.h 2005-02-21 13:57:02 +00:00
Moriyoshi Koizumi 01c0d589ef - Fix bug #30868 (evaluated pointer comparison in mbregex causes compile
failure).
2005-02-21 10:19:11 +00:00
Anantha Kesari H Y 91b48c2a89 NetWare LibC has lstat implementation 2005-02-21 10:13:07 +00:00
Moriyoshi Koizumi e8901dc170 - Fix bug #30573 (compiler warning due to invalid type cast) 2005-02-21 10:12:43 +00:00
Anantha Kesari H Y 787cf59dee NetWare can make use of autogenerated config header file 2005-02-21 10:07:28 +00:00
Anantha Kesari H Y e32ae40fbf NetWare has pthreads implementation 2005-02-21 10:05:07 +00:00
Anantha Kesari H Y ba980b12ad NetWare can use the tsrm_config.h 2005-02-21 10:01:34 +00:00
Anantha Kesari H Y 3b4d482055 NetWare LibC has a lstat implementation 2005-02-21 09:56:28 +00:00
Anantha Kesari H Y 459313c26d In NetWare LibC WTERMSIG is avaliable as WIFTERMSIG 2005-02-21 09:50:48 +00:00
Anantha Kesari H Y bf427d4a0d NetWare LibC has pwd.h. Removed unwanted extern basic_globals_id declaration for Netware. 2005-02-21 09:44:58 +00:00
Moriyoshi Koizumi d7d7ca62d4 - Fix bug #29989 (type re_registers redefined in oniguruma.h) 2005-02-21 09:43:55 +00:00
Anantha Kesari H Y 3e204f3e07 NetWare has pwd.h and removed unwanted check on NEW_LIBC while including param.h 2005-02-21 09:17:30 +00:00
Anantha Kesari H Y 8bd83a53ac NetWare LibC has pwd.h 2005-02-21 09:12:44 +00:00
Anantha Kesari H Y f43386764f In NetWare statfs f_bavail member is known as f_bfree 2005-02-21 09:08:54 +00:00
Moriyoshi Koizumi 8d73dc7bfc - Fix compiler warnings. 2005-02-21 07:57:08 +00:00
Moriyoshi Koizumi df3c2b5808 - Add testcases for bug #28220 and #30549. 2005-02-21 07:45:37 +00:00
5a9e110bf9 ChangeLog update 2005-02-21 01:33:58 +00:00
Hartmut Holzgraefe fd39b78b39 fix for PECL bug #3529 2005-02-20 23:56:14 +00:00
Hartmut Holzgraefe 5f3dd68ac5 fix for PECL bug 3530 2005-02-20 23:08:34 +00:00
Pierre Joye 7eaece85a8 - zend_bool for boolean arg 2005-02-20 22:56:32 +00:00
Moriyoshi Koizumi a796dc2b81 - Forgot to add this one. 2005-02-20 22:20:23 +00:00
Moriyoshi Koizumi 5b5e012bc2 - Update libmbfl (fixes bug #30549 and #31911).
- Update oniguruma to 3.7.0
2005-02-20 22:18:09 +00:00
Rob Richards 8913ddc295 use new error handling when not throwing exceptions 2005-02-20 22:01:24 +00:00
Rob Richards b7cf6f4539 add function to allow extensions to use new error handling if set by user 2005-02-20 21:49:45 +00:00
Pierre Joye f67803801e - more zend_bool.
Fix flush buffer in output_memory
  Fix isparm in start_dtd_entity
2005-02-20 19:31:52 +00:00
Marcus Boerger a455c7abcb - Shutup notices 2005-02-20 19:26:27 +00:00
Marcus Boerger 5a48f0ec38 - Add tests 2005-02-20 19:26:05 +00:00
Marcus Boerger fc2276c955 - Change tests to use ' instead of " for string values becuase that is
working for more SQL dialects.
2005-02-20 19:25:17 +00:00
Marcus Boerger f607beb486 - Forgot to change extension name 2005-02-20 19:12:55 +00:00
Pierre Joye 3e5b42a291 - int is not zend_bool, fixed indented output 2005-02-20 19:00:25 +00:00
Ilia Alshanetsky 1aab604198 Simplify Code. 2005-02-20 18:23:33 +00:00
Marcus Boerger 776144866c - Add tests 2005-02-20 18:23:12 +00:00
Marcus Boerger 37e2d03763 - Missed that file in last commit 2005-02-20 17:57:00 +00:00
Marcus Boerger 94c286f2ef - Attempt at an unified test suite 2005-02-20 17:56:19 +00:00
Marcus Boerger 26677dd2a2 - Add test 2005-02-20 16:16:45 +00:00
Marcus Boerger d56ce00b85 - Add fetch flag PDO_FETCH_CLASSTYPE 2005-02-20 16:12:57 +00:00
Marcus Boerger 567fd3159d - Update tests 2005-02-20 15:28:31 +00:00
Marcus Boerger 3239a56526 - Only call the ctor once 2005-02-20 15:28:09 +00:00
Marcus Boerger dcf89ff197 - Bump API 2005-02-20 15:07:29 +00:00
Marcus Boerger 5a2620349e - Fix memleak and optimize PDO_FETCH_CLASS 2005-02-20 14:31:44 +00:00
Marcus Boerger 883ee83478 - Call ctor after initializing the props like regular db exts do 2005-02-20 13:42:03 +00:00
Marcus Boerger 44ab1ef86c - Update test 2005-02-20 13:37:04 +00:00
Marcus Boerger 07a8ea220f - Need to specify class_entry in PDO_FETCH_CLASS mode 2005-02-20 13:33:45 +00:00
Dmitry Stogov 57d2c2bb83 Fixed possible memory corruption 2005-02-20 10:19:11 +00:00
8f2cfb9d4e ChangeLog update 2005-02-20 01:36:02 +00:00
Marcus Boerger 96e8cca9bc - Add test 2005-02-19 23:58:03 +00:00
Marcus Boerger 6045a3a5e1 - Add test 2005-02-19 23:48:47 +00:00
Marcus Boerger b788dc9d2a - Add fetch mode PDO_FETCH_UNIQUE 2005-02-19 23:48:30 +00:00
Marcus Boerger a452a445cf - Simplify 2005-02-19 23:36:58 +00:00
Marcus Boerger 422e2b639e - Add PDO_FETCH_GROUP test 2005-02-19 23:12:24 +00:00
Marcus Boerger 474fcab623 - Add PDO_FETCH_GROUP to fetchAll() 2005-02-19 23:11:23 +00:00
Marcus Boerger 1fee3962b0 - Update/Add tests 2005-02-19 21:50:46 +00:00
Marcus Boerger 41674da59f - Add full PDO_FETCH_CLASS capabilities to fetchAll() 2005-02-19 21:49:42 +00:00
Marcus Boerger e6a5ebbdab - Default to stdClass in PDO_FETCH_CLASS mode if no classname is given 2005-02-19 21:35:31 +00:00
Marcus Boerger 89f1128cf4 - Add first tests 2005-02-19 19:52:41 +00:00
Rui Hirokawa 539b81e03a fixed #31987 zend-multibyte in ZTS. 2005-02-19 14:33:41 +00:00
Marcus Boerger 253cd12753 - Regroup and add a test 2005-02-19 14:02:24 +00:00
dc4c0cfac1 ChangeLog update 2005-02-19 01:35:15 +00:00
Wez Furlong cdbe7b7afa add this note. 2005-02-18 15:39:22 +00:00
Wez Furlong 9653864fbd prep for release 2005-02-18 15:32:14 +00:00
Wez Furlong 86708673fb Fix connecting to remote host, patch by Tim Friebe 2005-02-18 15:11:27 +00:00
Derick Rethans ff1687731d - Fixed bug #32021: Crash caused by range('', 'z') 2005-02-18 13:37:23 +00:00
Rob Richards b1157ff8d9 Fragment must have associated document to append xml otherwise it is read-only 2005-02-18 11:57:24 +00:00
Rob Richards e46e7309f8 Fixed bug #32011 (Fragments which replaced Nodes are not globaly useable) 2005-02-18 11:47:20 +00:00
Wez Furlong 3f0f701639 Update for pending PEAR release. 2005-02-18 01:39:36 +00:00
81ef9ee5ee ChangeLog update 2005-02-18 01:36:34 +00:00
Ilia Alshanetsky 6af3197b90 Improved search paths. 2005-02-17 22:56:47 +00:00
Marcus Boerger c17d3dbbb7 - A little optimization to prevent problems when trying to reimplement an
interface inherited from an interfaces that was just implemented......
2005-02-17 21:05:04 +00:00
Marcus Boerger c88da2bd92 - No C++ ruleZ here 2005-02-17 20:54:56 +00:00
Marcus Boerger 82ccc25113 - Actually we must do this in two steps: 1st resize the table and set all
interfaces, 2nd implement the interfaces
2005-02-17 20:49:56 +00:00
Marcus Boerger 02c35975c0 - Incrementation is done elsewhere 2005-02-17 20:28:46 +00:00
Marcus Boerger a7e4f84c5d - Fix windows build (funny MS compiler) 2005-02-17 20:15:40 +00:00
Andi Gutmans 27b13ba47c - Fix Bug #31960: msql_fetch_row() and msql_fetch_array() dropping columns with NULL values 2005-02-17 20:11:20 +00:00
Ilia Alshanetsky f2eb0acfcf Fixed bug #27633 (Double \r\r problem on ftp_get in ASCII mode on Win32). 2005-02-17 15:37:24 +00:00
Joe Orton 4f4cb65300 Declare error_mapping array as static and more const. 2005-02-17 15:05:16 +00:00
Anantha Kesari H Y 5f243d7af7 NetWare LibC has pwd.h 2005-02-17 13:57:21 +00:00
Anantha Kesari H Y 67a2998335 NetWare libc has pwd.h 2005-02-17 13:56:49 +00:00
Wez Furlong 9296eb0fd2 George too 2005-02-17 04:50:49 +00:00
Wez Furlong ede312933c ran ./scripts/dev/credits to update credits to reflect recent removals and
additions.
2005-02-17 04:49:52 +00:00
foobar 640bc001e5 - Compile fix for systems without int32_t typedef 2005-02-17 04:44:52 +00:00
Ilia Alshanetsky ed9e8c7c81 Fixed bug #31440 ($GLOBALS can be overwritten via GPC when register_globals
is enabled).
2005-02-17 04:44:11 +00:00
Wez Furlong 55f53a5a96 symlinked pdo drivers under ext.
Enabled PDO and PDO_SQLITE by default.
Fixup PDO header detection so that it searches in the correct order, and
correctly picks up the headers when building from outside of the source
tree.

TODO: make pdo_XXX auto-enable when XXX is enabled.  Volunteers welcome.
2005-02-17 04:23:15 +00:00
foobar 4585c15cb0 - Fixed bug #29554 (compile failure when using --with-pspell=/usr/local) 2005-02-17 03:51:19 +00:00
0b9addb57b ChangeLog update 2005-02-17 01:37:26 +00:00
Marcus Boerger 80af3ac83d - Add version information 2005-02-17 00:24:57 +00:00
Marcus Boerger e9b635b6e7 - For now we need the simple way 2005-02-17 00:16:00 +00:00
foobar 3f9dc8814e PHP_WIN32 is defined or not defined. 2005-02-16 23:47:38 +00:00
Wez Furlong 7215b2b8fb use a number here, fixes PECL #3493 2005-02-16 18:09:26 +00:00
Edin Kadribasic d388e4dc16 Enable mbstring use on windows. We were linking against mbstring for
some time now, but have never actually used it on Windows.
Fixes #31980.
2005-02-16 09:53:26 +00:00
f4ea74d828 ChangeLog update 2005-02-16 01:35:10 +00:00
Ilia Alshanetsky 43d1785ea1 Fixed bug #31986 (Max nesting limit set too low). 2005-02-15 21:56:17 +00:00
Marcus Boerger 7956ca0211 - SQLite depends on SPL if it is present
- Add SQLiteResult::count()
- SQLiteResult implements Countable if present
2005-02-15 21:09:42 +00:00
Edin Kadribasic 8ff4a1002c Really disable zend multibyte by default. mbstring is using #ifdef all over the place so defining to '0' doesn't help much 2005-02-15 13:57:49 +00:00
Edin Kadribasic 2c306869c5 Fixed bug #3478: handling of 64bit return values on 32bit machine 2005-02-15 12:41:24 +00:00
foobar 3f5055efab - Applied some patches to fix issues with e.g. ia_64 and s390 2005-02-15 08:51:10 +00:00
foobar 67a965a7e0 No tabs here 2005-02-15 01:44:10 +00:00
1eb0693385 ChangeLog update 2005-02-15 01:34:46 +00:00
foobar 731b04dd54 Missing .libs entry 2005-02-15 01:30:40 +00:00
Ilia Alshanetsky 7ee1fdb657 Prune uploaded file names to \ on all OSes, read comments for explanation. 2005-02-15 00:25:38 +00:00
foobar b6b3659224 - More sock->error resets 2005-02-14 23:44:23 +00:00
Edin Kadribasic 4a133ae725 ws fix 2005-02-14 23:40:24 +00:00
Edin Kadribasic 70e0849416 Added pg_field_type_oid() function 2005-02-14 23:36:16 +00:00
Edin Kadribasic 84a6e90b7d Added missing defines (#31751) 2005-02-14 23:01:57 +00:00
foobar a66b053ac9 - Removed duplicate error + reset error in new sockets 2005-02-14 22:16:06 +00:00
Marcus Boerger 3ab88a4718 - Disallow illegal class names (.c part) 2005-02-14 21:03:09 +00:00
Marcus Boerger ff8055fc5c - Disallow illegal class names 2005-02-14 20:58:22 +00:00
Wez Furlong 6c1c64c2e7 experimental hooks for alan.
Off limits to everyone else... pretend they are not there :)
2005-02-14 15:52:06 +00:00
Antony Dovgal 47e1961561 add markers for nice vim foldings 2005-02-14 13:38:09 +00:00
Antony Dovgal 7d4bf3ccd9 free errmsg & prevent leaks 2005-02-14 13:31:34 +00:00
Antony Dovgal ff23184893 fix indentation and add check for PDO includes 2005-02-14 12:52:34 +00:00
Anantha Kesari H Y 3c1e2e15b8 NetWare Libc has php.h so no need of having netware specific block here 2005-02-14 11:10:07 +00:00
foobar d20e2cf0fc Nuke non-existing ini option 2005-02-14 08:23:54 +00:00
foobar 28f0397803 Nuke unused code 2005-02-14 08:21:34 +00:00
0992be8577 ChangeLog update 2005-02-14 01:39:25 +00:00
Edin Kadribasic 6ff3368e1b Simplify 2005-02-13 23:40:30 +00:00
Edin Kadribasic 14819d0f14 Allow pdo to be statically compiled in, while modules remain dynamic 2005-02-13 23:19:00 +00:00
Wez Furlong 06cf185298 fix pdo_mssql.dll build 2005-02-13 23:13:14 +00:00
Marcus Boerger a57b6bad69 - Be more gracious in reflection API 2005-02-13 23:04:49 +00:00
Wez Furlong a92ae61cb8 fix snaps 2005-02-13 21:38:39 +00:00
Ilia Alshanetsky cd0435b15a Fixed test. 2005-02-13 19:23:53 +00:00
Marcus Boerger 21705a45bf - Little code reordering 2005-02-13 18:30:26 +00:00
Marcus Boerger f04134aee0 - Drop unneccessary rinit/rshutown,mshutdown
- Add protos
2005-02-13 18:14:34 +00:00
Marcus Boerger ef2b59f772 - Expand tests to have it work inside PHP 5.0 2005-02-13 18:13:44 +00:00
foobar 3ca8ad73a4 - Missing $Id$ tags 2005-02-13 17:54:04 +00:00
Ilia Alshanetsky f57b8d6dc5 Set auto-commit after establishing the connection, otherwise we have a crash. 2005-02-13 17:16:24 +00:00
Marcus Boerger f860c70362 - In fetch mode PDO_FETCH_CLASS handle constructor args
- Add PDOStatement::fetchObject
2005-02-13 17:04:04 +00:00
Marcus Boerger 746d5490cf - Use runtimeException as base if present (synch with other dbs) 2005-02-13 15:40:15 +00:00
Hartmut Holzgraefe aedea8539c no need to check for all functions of a group,
added check for prepared statement functions
2005-02-13 14:42:46 +00:00
Marcus Boerger d308d6d462 - Rename 2005-02-13 13:57:51 +00:00
Marcus Boerger e3a5c9f1d7 - Fix doc comment handling 2005-02-13 13:50:48 +00:00
Marcus Boerger 0a9e940ab7 - Add new test 2005-02-13 13:50:30 +00:00
Rui Hirokawa c7ebef660a added --enable-zend-multibute for win32 2005-02-13 13:03:03 +00:00
foobar 7281cd8082 MFB_4_3: cvs diff -r1.84.2.5 -r1.84.2.6 php_session.h 2005-02-13 07:55:27 +00:00
Hartmut Holzgraefe 1f98a966c5 fix aclocal "underquoted argument" warnings 2005-02-13 07:31:02 +00:00
Hartmut Holzgraefe fc20765c5e fix aclocal warning (newer versions are more strict about this) 2005-02-13 07:17:06 +00:00
Hartmut Holzgraefe e087455493 add function existance check 2005-02-13 07:15:02 +00:00
Wez Furlong 427c5e0e4f tidy up error case 2005-02-13 07:00:29 +00:00
Wez Furlong 0be93c95c9 prep for release 2005-02-13 06:56:16 +00:00
Hartmut Holzgraefe b6828f5949 Fixed domain socket / named pipe handling 2005-02-13 06:52:45 +00:00
Wez Furlong 81999fdeba Fix variable declaration 2005-02-13 06:42:19 +00:00
Wez Furlong f2d2da300f zts 2005-02-13 06:41:46 +00:00
Wez Furlong 47d1c2ad65 autocommit flag gets set always by PDO before invoking this method;
we should unconditionally inspect it here.
2005-02-13 06:37:29 +00:00
Wez Furlong 078b77619a commit generated version of the .re 2005-02-13 06:30:36 +00:00
Wez Furlong 0da6a84edf implement mapping of :name to ? parameters for drivers that only support ?
placeholders.
The current restriction is that you may not use the same named parameter
more than one in a given query, as there is a danger of scary things happen
with the zval if it gets bound multiple times.
2005-02-13 06:29:35 +00:00
Wez Furlong 2a32b478f9 typo-fix error message 2005-02-13 06:27:03 +00:00
Wez Furlong 5edd570b94 Correct the pdo header search order 2005-02-13 06:26:48 +00:00
Wez Furlong fc51fd11b6 it's only an error in emulation mode; rewrite happens in prepare, which
happens before bindParam
2005-02-13 04:00:22 +00:00
Edin Kadribasic ab9821d8c3 Do not shout :) 2005-02-13 03:27:48 +00:00
Wez Furlong 1051e7076f Fixes the crash part of PECL Bug #3434. 2005-02-13 03:26:43 +00:00
Wez Furlong 0aa82c3c83 same fix here 2005-02-13 03:15:11 +00:00
Wez Furlong bee7f3d0ac correct backwards logic 2005-02-13 03:01:38 +00:00
Wez Furlong 08f683a645 Probably fix pecl vs bundled-shared build 2005-02-13 02:51:11 +00:00
Wez Furlong 4d80aaf47a try to handle OSX issues more gracefully 2005-02-13 01:54:59 +00:00
b0ca477655 ChangeLog update 2005-02-13 01:38:06 +00:00
Wez Furlong 4dc3b75569 possible fix for snaps box 2005-02-13 01:32:27 +00:00
Edin Kadribasic 68de0d75b0 Unix line endings 2005-02-13 01:02:18 +00:00
Antony Dovgal 175bf7e9a3 set username && password only if they were specified 2005-02-13 00:57:48 +00:00
Hartmut Holzgraefe 486370dc7c autocommit setting done right 2005-02-13 00:55:16 +00:00
Hartmut Holzgraefe 5d4fb518ae added MySQL transaction support 2005-02-13 00:51:17 +00:00
Hartmut Holzgraefe c6761bfe11 DOS -> Unix line endings 2005-02-13 00:48:00 +00:00
Ilia Alshanetsky 5904d59ffd Fixed compiler warnings. 2005-02-12 20:58:29 +00:00
Ilia Alshanetsky 9b394af973 Simplify code and fix compiler warning. 2005-02-12 20:55:28 +00:00
Ilia Alshanetsky e5a906dcb9 Updated version without compiler warnings. 2005-02-12 20:34:20 +00:00
Marcus Boerger 1a35bcfcbc - Add new test 2005-02-12 18:40:19 +00:00
foobar f485fc1a83 Missed one place.. 2005-02-12 18:29:42 +00:00
foobar 751712628a This was not good idea. 2005-02-12 18:27:22 +00:00
foobar 30deea4d30 Remove unused set_h_errno 2005-02-12 18:14:03 +00:00
Marcus Boerger 6159f69023 - Bugfix #30682 (autoconversion from false/true to 0/1 missing in case of
static property default value)
2005-02-12 16:38:47 +00:00
Wez Furlong 9e31b10531 prep for release 2005-02-12 08:23:32 +00:00
Wez Furlong 002545fffb Fix bundled sqlite build (doh!) 2005-02-12 08:20:17 +00:00
33347d3264 ChangeLog update 2005-02-12 01:32:51 +00:00
Marcus Boerger a29f5391db - Cleanup foreach handling 2005-02-11 22:26:45 +00:00
Wez Furlong 91eab3e5bc typo 2005-02-11 02:05:05 +00:00
foobar 59db0751fc Revert previous patch 2005-02-11 02:03:51 +00:00
a29e968e1e ChangeLog update 2005-02-11 01:37:02 +00:00
Wez Furlong 1f06eb1c5c update in anticipation of a release later tonight 2005-02-11 01:22:44 +00:00
Wez Furlong ccd242665b Fix PDO::query() for drivers that emulate bound parameters. 2005-02-11 01:20:59 +00:00
Rob Richards bb9ba8e36e fix segfault when retval_ptr is empty - such as when exception thrown 2005-02-10 22:59:26 +00:00
Hartmut Holzgraefe 2c6b600a90 test case for Bug #30266 2005-02-10 22:55:52 +00:00
foobar 378817d367 - Fixed bug #31920 (zend_strtod.c error: conflicting types for 'int8_t') 2005-02-10 22:19:32 +00:00
Antony Dovgal 5b78e4c025 hm..
fix #28324 _properly_
2005-02-10 20:22:07 +00:00
Antony Dovgal 94982058b6 fix bug #28324 (HTTP_SESSION_VARS appear when register_long_arrays is Off) 2005-02-10 19:38:11 +00:00
Rob Richards 4967138514 initial cut of new error handling 2005-02-10 15:52:38 +00:00
Pierre Joye 162b91136c - fix #30745 and #31853 (php-bugs at demark dot org, pierre) 2005-02-10 14:31:32 +00:00
Ilia Alshanetsky f257e10d48 Removed unused vars. 2005-02-10 14:11:06 +00:00
Dmitry Stogov 5764d6f41b Fixed bug #30407 (Strange behaviour of default arguments) 2005-02-10 11:45:24 +00:00
Wez Furlong 877a2bd690 prep for release 2005-02-10 02:06:49 +00:00
Wez Furlong 69cbb7f958 prep for release 2005-02-10 01:56:20 +00:00
Wez Furlong e9f5fb53f3 only do this magic on non-win32 platforms 2005-02-10 01:34:39 +00:00
042f9081a8 ChangeLog update 2005-02-10 01:33:08 +00:00
Wez Furlong 3b857ea987 rename ancient method 2005-02-09 23:34:53 +00:00
Frank M. Kromann d2ae18d76e change return value from false to true, when a statement was executed with warnings 2005-02-09 19:32:03 +00:00
Frank M. Kromann 4b0d9e2319 Check for warnings and return the warning texts 2005-02-09 18:49:38 +00:00
Ilia Alshanetsky ee0e2d0ea3 Touch file. 2005-02-09 17:06:13 +00:00
Ilia Alshanetsky cd6d5fb18f Fixed compile warnings. 2005-02-09 16:33:00 +00:00
Rasmus Lerdorf 4909775f04 Fix for bug #31901 2005-02-09 16:22:48 +00:00
Ilia Alshanetsky 2196c4335b kill unused var 2005-02-09 16:14:50 +00:00
Ilia Alshanetsky 1b3dd5db8b remove unused vars. 2005-02-09 15:56:27 +00:00
Wez Furlong 94d5261f73 cosmetic changes 2005-02-09 15:12:41 +00:00
Wez Furlong ad60999858 proper fix for PECL Bug #3412 2005-02-09 14:32:04 +00:00
Rob Richards 08592b38da Fixed bug #31878 (Segmentation fault using clone keyword on nodes) 2005-02-09 11:46:43 +00:00
Wez Furlong 1cdde9e3ed update with changes 2005-02-09 07:02:00 +00:00
Wez Furlong 211206b2e4 Add PDO_ATTR_TIMEOUT support.
Fix PECL Bug #3391
2005-02-09 07:00:00 +00:00
Wez Furlong f6aa8f5d90 keep a log here for now 2005-02-09 06:44:08 +00:00
Wez Furlong 902ca8c1cf Expose the quoter method of the driver as PDO::quote().
Closes PECL Bug #3393
2005-02-09 06:43:15 +00:00
Wez Furlong d57a169500 typo fix 2005-02-09 06:14:48 +00:00
Wez Furlong dbaa3bfdfa hope it works! 2005-02-09 05:26:38 +00:00
Wez Furlong c28a0b9fcb disable dep 2005-02-09 05:18:02 +00:00
Wez Furlong 44cec3d456 disable dep for pecl release 2005-02-09 05:12:41 +00:00
Wez Furlong 201ec3dc02 prep for release 2005-02-09 05:04:40 +00:00
Wez Furlong 3047ced496 prep for possible release 2005-02-09 05:00:58 +00:00
Wez Furlong 229ea4bbfc update ready for release.
Disable dependency macro for compatibility with existing PHP 5.0.x releases.
2005-02-09 04:57:32 +00:00
Wez Furlong b9a951aa1a be realistic... 2005-02-09 04:56:10 +00:00
Wez Furlong 5a2cb4154a update ready for release
# includes big hack to help guide people into running "make install" so
# that the headers get installed; works around a pear bug.
2005-02-09 04:54:56 +00:00
5f026d026a ChangeLog update 2005-02-09 01:33:26 +00:00
Moriyoshi Koizumi 352fc43ec9 - Complement for Jani's fix. Likely fix the iconv issue. 2005-02-09 00:49:45 +00:00
Wez Furlong 5304374fc5 fix typo 2005-02-09 00:38:11 +00:00
Marcus Boerger 3fb1c65a41 - Initial Observer implementation 2005-02-08 20:42:48 +00:00
Marcus Boerger 2e8b9c005b - Update to 2005 2005-02-08 19:10:06 +00:00
Marcus Boerger 2f9662d156 - Fix year and speling 2005-02-08 19:05:25 +00:00
Marcus Boerger e5fe40eac9 - Actually these are private 2005-02-08 19:00:19 +00:00
Ilia Alshanetsky 891745776e Removed pointless operations/declarations. 2005-02-08 15:30:42 +00:00
Ilia Alshanetsky 55fd7ac601 Added optional maxlen parameter to file_get_contents(). 2005-02-08 15:25:45 +00:00
Antony Dovgal bc27a2af7a move ext/cpdf to PECL 2005-02-08 13:40:37 +00:00
Rasmus Lerdorf bf7cb1179a Don't need MSHUTDOWN either here 2005-02-08 05:25:48 +00:00
d8ad6ff49b ChangeLog update 2005-02-08 01:35:38 +00:00
Rasmus Lerdorf 3baf795c17 Get rid of more useless RINIT/RSHUTDOWN calls 2005-02-07 23:04:00 +00:00
Ilia Alshanetsky aa6cb1055b Fixed bug #31527 (crash in msg_send() when non-string is stored without
being serialized).
2005-02-07 22:31:19 +00:00
Rasmus Lerdorf 9c530d79e7 No reason to call empty RINIT, RSHUTDOWN and MSHUTDOWN functions here 2005-02-07 22:16:46 +00:00
Dmitry Stogov c91218ae8a Fixed bug introduced with foreach() optimization patch 2005-02-07 17:54:58 +00:00
Dmitry Stogov 625e06f454 Fixed FE_RESET/FE_FETCH bug.
Now FE_RESET instruction takes jump-address from itself, not from the following FE_FETCH instruction.
2005-02-07 16:44:00 +00:00
Marcus Boerger a8552cb2f9 - Add missing '?>' 2005-02-07 16:27:41 +00:00
Dmitry Stogov fc96c7f7fa foreash($a as $key => $val) optimization
Removed temorary array creation on each iteration.
2005-02-07 16:09:54 +00:00
Marcus Boerger 2d13dd0ef0 - Remove part of the cleanup which causes a problem with unnormal code
like tests/lang/040.phpt
# However there is a memleak introduced somewhen after august 04 for such
# code now, 5.0 and 4.3 are fine though.
2005-02-07 15:22:38 +00:00
Marcus Boerger d1fc7ad4d9 - Add new test 2005-02-07 15:16:08 +00:00
Antony Dovgal 96610aee08 fix leaks on shutdown
fix leaks appearing when trying to open several "databases"
2005-02-07 13:30:45 +00:00
foobar 066d1b4d53 - Fixed bug #31858 (--disable-cli does not force --without-pear) 2005-02-07 12:48:11 +00:00
Wez Furlong dbcf51b5a8 a working implementation of LOB input parameters for ODBC.
however: when sending in a string from the script, we get a 1 byte overflow
of the pdo parameter structure... Need to install valgrind on the test box
2005-02-07 04:13:32 +00:00
Wez Furlong ac018c38a8 This might allow piecewise sending of LOB data for input parameters. 2005-02-07 03:27:54 +00:00
149d9e8407 ChangeLog update 2005-02-07 01:33:17 +00:00
Wez Furlong ae5958570b update 2005-02-07 01:21:58 +00:00
Wez Furlong 29380a8e54 update for input/output parameters change 2005-02-07 01:17:24 +00:00
Wez Furlong 501000f129 Implement input/output parameters 2005-02-07 01:16:16 +00:00
Wez Furlong 36e3ea8cb2 add input/output parameter type flag 2005-02-07 01:12:49 +00:00
Wez Furlong 504afcfc5a and the generated file 2005-02-07 00:26:38 +00:00
Wez Furlong 2bd3536041 handle input LOBs (which are passed as streams) in bound parameter emulation.
Update error handling.
2005-02-07 00:26:22 +00:00
Wez Furlong af162668e5 fix pointer indirection (and thus leak) 2005-02-07 00:04:20 +00:00
Wez Furlong 7279fe8ab0 centralize this define 2005-02-07 00:02:51 +00:00
Wez Furlong 61981912f8 hmmm 2005-02-06 23:58:53 +00:00
Zeev Suraski 17537ac500 Correct fix for #28804 2005-02-06 23:51:59 +00:00
Wez Furlong 668740aada even less noise 2005-02-06 23:23:05 +00:00
Wez Furlong d134fb2a8d update for api changes 2005-02-06 23:22:37 +00:00
Wez Furlong 0569078901 Avoid bug where stream_copy_to_stream() call for precisely 2000000 bytes would
result in entire resource being copied.
The mmap brake is already present inside mmap_range() and is set to 1MB.
2005-02-06 23:17:09 +00:00
Wez Furlong 1069cefada support sucking data from streams in file_put_contents() 2005-02-06 23:05:24 +00:00
Ilia Alshanetsky 917648a232 Fixed possible un-initialized var on error. 2005-02-06 22:58:46 +00:00
Wez Furlong c3eae192dc less noise 2005-02-06 22:48:36 +00:00
Edin Kadribasic 22ff90f7ba Adjust for the new get_col api 2005-02-06 22:48:35 +00:00
Wez Furlong d87c5ec288 update for api changes 2005-02-06 22:34:53 +00:00
Wez Furlong 3130ed3066 make configure smarter.
Update for new get_col() signature
2005-02-06 22:25:33 +00:00
Wez Furlong ccf0a6a557 add a caller_frees parameter to get_col() to allow drivers that need
to allocate data on demand to do so without worrying about cleaning it up.

Spec out how LOB parameters are returned.
2005-02-06 22:11:12 +00:00
Wez Furlong f400f0e665 add an open mode for the memory streams that allows the stream to take
ownership of the passed-in buffer
2005-02-06 21:41:36 +00:00
Wez Furlong e3ba31e899 better handling of pdo-level errors 2005-02-06 21:05:59 +00:00
Wez Furlong ec98e744be touch again 2005-02-06 21:05:28 +00:00
Wez Furlong 474a65e277 update todo 2005-02-06 19:59:32 +00:00
Wez Furlong c56419ed78 support getting some more attributes 2005-02-06 17:49:48 +00:00
Wez Furlong ca4dc0361c this one too 2005-02-06 17:33:12 +00:00
Wez Furlong 9ba84360e3 handle some generic attributes here 2005-02-06 17:25:09 +00:00
Wez Furlong b2126a848a This will probably fix PECL Bug #3273 2005-02-06 16:46:18 +00:00
Wez Furlong 257dfcdde7 touch file 2005-02-06 16:29:33 +00:00
Timm Friebe 5eb673d1cb - Made error handler not output anything if error was not in error_reporting() mask 2005-02-06 14:08:11 +00:00
Timm Friebe ca250d16dc - Fixed error handler for situations in which an error
was raised in an include file
2005-02-06 14:06:21 +00:00
Timm Friebe 6a4d498af4 - Initial release
# Used for being able to run .phpt-files in a webserver environment
# Incomplete and pretty basic but serves its purpose ATM
2005-02-06 13:35:09 +00:00
Timm Friebe 57fa001979 - Prefixed all temporary names with "phpt_" 2005-02-06 12:59:03 +00:00
Timm Friebe 2a595d116e - Initial release
# Works perfectly with php-cli
2005-02-06 11:58:53 +00:00
Timm Friebe e47835b90e - "Unified" test name 2005-02-06 11:58:18 +00:00
ba9e818d57 ChangeLog update 2005-02-06 01:43:36 +00:00
Edin Kadribasic accdde8c19 Finalized pgsql LOB support using native pgsql bytea type.
If paramater is bound with type PDO_PARAM_LOB the quoter function
gets a hint that specific LOB type quoting should be used:

$stmt->bindParam(":lob", $lob, PDO_PARAM_LOB);
2005-02-06 01:27:27 +00:00
Edin Kadribasic 0d9b0606b9 Don't segault when we have placeholders but no bound params 2005-02-06 00:46:17 +00:00
Edin Kadribasic bf77a39349 Decode pgsql LOB objects (bytea type) on fetch 2005-02-05 22:55:23 +00:00
Edin Kadribasic 64e8c3105c Return lobs as strings for now 2005-02-05 22:46:26 +00:00
Wez Furlong 74821473e2 update separately 2005-02-05 21:30:19 +00:00
Wez Furlong 15e754201f pass param type to quoter functions 2005-02-05 21:29:42 +00:00
Edin Kadribasic 95cc208464 Removed unused variebles.
Return OID as int.
2005-02-05 20:38:47 +00:00
Marcus Boerger 662cd8262e - Cleanup foreach statement 2005-02-05 14:01:59 +00:00
Georg Richter ef6f0f00a6 fix for bug #29329 2005-02-05 10:59:38 +00:00
9321218742 ChangeLog update 2005-02-05 01:34:50 +00:00
foobar 71b9c41a6b fix test 2005-02-04 23:23:34 +00:00
Hartmut Holzgraefe d88c2b18d4 added some missing zend_[declare|update]_property_...() convenience
functions for bool, double and binary safe string data
2005-02-04 20:24:21 +00:00
Dmitry Stogov 625b79c3ba Fixed bug #31832 (SOAP encoding problem with complex types in WSDL mode with multiple parts) 2005-02-04 15:42:46 +00:00
Derick Rethans 0242ae498e - Fixed bug #31754 (dbase_open() fails for mode = 1). (Mehdi, Derick) 2005-02-04 14:28:50 +00:00
foobar b61a63d008 - Fixed bug #31842 (*date('r') does not return RFC2822 conforming date string). 2005-02-04 13:08:56 +00:00
foobar 951eb23e9a - Fixed bug #28227 (PHP CGI depends upon non-standard SCRIPT_FILENAME)
# patch by: lukem at NetBSD dot org
2005-02-04 10:39:33 +00:00
Edin Kadribasic 1a962e9d98 Get OID of the last inserted row 2005-02-04 01:48:01 +00:00
443dcdbb60 ChangeLog update 2005-02-04 01:34:25 +00:00
Ilia Alshanetsky 779edcb01d Proper fix for bug #31796 . 2005-02-04 00:21:50 +00:00
Ilia Alshanetsky 5879c5cf21 Fixed bug #31796 (readline completion handler does not handle empty return
values).
2005-02-03 22:45:36 +00:00
Ilia Alshanetsky 996b464e30 Use the created connection string. 2005-02-03 22:24:50 +00:00
foobar 996c9d85d7 - Fix buildconf with BSD make 2005-02-03 17:42:42 +00:00
Magnus M��tt� fda27b4465 Fix typos. 2005-02-03 17:02:42 +00:00
foobar fe0e3b39f8 cleanup 2005-02-03 15:46:15 +00:00
foobar 77ee4950dd - Fixed bug #28804 (ini-file section parsing pattern is buggy). 2005-02-03 03:01:56 +00:00
foobar 91962aafad ws fix 2005-02-03 02:58:21 +00:00
4d0f0d308f ChangeLog update 2005-02-03 01:33:55 +00:00
Ilia Alshanetsky e55938b6a8 Fixed bug #31514 (open_basedir uses path_translated rather then cwd for .
translation).
2005-02-02 23:43:17 +00:00
Zeev Suraski 11339ee42e Removing this file has been long due...
API's and functionality are stable.
2005-02-02 17:22:19 +00:00
foobar ebd3f9673d pecl movement 2005-02-02 14:44:36 +00:00
foobar 75b4e2c832 - Moved ext/w32api to PECL. 2005-02-02 14:43:26 +00:00
foobar c919fac568 PECL 2005-02-02 14:33:53 +00:00
foobar 0741be6f3c - Moved ext/yp to PECL. 2005-02-02 14:33:23 +00:00
foobar 51ba2cdce9 NEWS 2005-02-02 14:32:23 +00:00
foobar 439c5f4f33 - Moved ext/dio to PECL. 2005-02-02 14:29:58 +00:00
Stanislav Malyshev 7b241027fa fix memory leak if function call fails 2005-02-02 10:37:50 +00:00
Stanislav Malyshev 3925337a55 Fix #31720 Invalid object callbacks not caught in array_walk() (patch from Antony Dovgal) 2005-02-02 10:36:02 +00:00
Dmitry Stogov 3c31410074 Fixed bug #31747 (SOAP Digest Authentication doesn't work with "HTTP/1.1 100 Continue" response) 2005-02-02 10:34:39 +00:00
Stanislav Malyshev d38eed95ea test for Bug #31720 2005-02-02 10:31:53 +00:00
Dmitry Stogov 83e6e40438 Fixed bug #31755 (Cannot create SOAP header in no namespace) 2005-02-02 09:11:46 +00:00
Dmitry Stogov fd4fe1c8d3 Fixed bugs #29767 and #31683 (__get and __set methods must not modify property name). 2005-02-02 07:19:22 +00:00
24a834dfa4 ChangeLog update 2005-02-02 01:33:27 +00:00
Ilia Alshanetsky 8c97b9dc73 Fixed bug #31797 (exif_read_data() uses too low nesting limit). 2005-02-01 23:27:33 +00:00
Stanislav Malyshev 1088e28dfa Fix debug_trace with eval (patch from Antony Dovgal) 2005-02-01 19:05:56 +00:00
Stanislav Malyshev 13cd138683 test for eval debug_backtrace bug 2005-02-01 19:03:50 +00:00
Anantha Kesari H Y bcbca0e397 NetWare has a compliant pthread implementation 2005-02-01 13:04:26 +00:00
Ilia Alshanetsky d179e6aa40 Final version of filename upload handling. 2005-02-01 02:33:07 +00:00
38775706eb ChangeLog update 2005-02-01 01:33:19 +00:00
Marcus Boerger 0bb81ce1d6 - Add ReclectionClass:hasProperty(), ReflectionClass::hasConstant()
to complete api (johannes@php.net)
2005-01-31 22:56:01 +00:00
Dmitry Stogov fea1b5b3a0 Fixed SIGSEGV when restoring WSDL without functions from cache 2005-01-31 15:08:24 +00:00
Antony Dovgal 5e8cd3a2da fix segfault when failed to open magic file 2005-01-31 15:01:47 +00:00
Dmitry Stogov 950632519b Empty "detail" was removed from SoapFault object. 2005-01-31 14:26:06 +00:00
Dmitry Stogov 6e8d3e9023 Fixed memory allocation bug 2005-01-31 14:02:19 +00:00
4a77ca046a ChangeLog update 2005-01-31 01:34:53 +00:00
Ilia Alshanetsky 112eb3b35d Fix handling of INF/NAN in unserialize(). 2005-01-30 16:38:53 +00:00
c73882617e ChangeLog update 2005-01-29 01:38:40 +00:00
Marcus Boerger 0236e31313 - Fix severity (found by johannes) 2005-01-28 20:24:20 +00:00
Georg Richter 32aaa6a7be fixed a bug in mysql_affected_rows and mysql_stmt_affected_rows
in case affected_rows function returns (my_ulonglong) -1 for errors.
(Thanks to Antony Dovgal for reporting this bug)
2005-01-28 17:35:37 +00:00
Antony Dovgal 999c63d9d7 improve CS & error messages 2005-01-28 16:42:26 +00:00
Antony Dovgal c61ce71a01 MFB: explain why ftok() failed 2005-01-28 16:36:46 +00:00
Dmitry Stogov d5d127c3ad Memory leak was fixed 2005-01-28 10:33:46 +00:00
Antony Dovgal f7326d6279 MFB: fix #31732 2005-01-28 02:00:39 +00:00
Antony Dovgal 3ff7f46fd4 change return type from NULL to FALSE when parameter parsing failed
(as was requested by Ilia)
2005-01-28 01:38:56 +00:00
968bd31c92 ChangeLog update 2005-01-28 01:35:59 +00:00
Antony Dovgal 75725c57a5 MFB: fix posix_getsid() & posix_getpgid() 2005-01-28 00:27:48 +00:00
Frank M. Kromann a13734d2f7 Hack to fix crash caused by FBCAccess not returning errors when creating an index that exists in the database. 2005-01-27 20:13:04 +00:00
Ilia Alshanetsky 42155f6028 Fixed bug #31705 (parse_url() does not recognize http://foo.com#bar) 2005-01-27 16:37:34 +00:00
Antony Dovgal 6ffd569410 MFB: fix leak in mysqli_fetch_array() 2005-01-27 14:41:48 +00:00
Georg Richter 7148919940 fix for bug #31710 (return value for mysql_rollback is reverted)
fixed also same behaviour for mysql_commit and mysql_autocommit
2005-01-27 10:18:28 +00:00
969860b570 ChangeLog update 2005-01-27 01:35:48 +00:00
Antony Dovgal 9d9e4379af MFB: fix segfault when invalid field offset is passed to mysqli_fetch_field_direct() 2005-01-27 01:14:43 +00:00
Marcus Boerger 5cabd2f12b - Move tests to proper location now that the tested classes are hardcoded 2005-01-27 00:34:13 +00:00
Marcus Boerger faba10853f - Unify 2005-01-27 00:26:13 +00:00
Marcus Boerger f1e34911a9 - Add new test 2005-01-27 00:22:28 +00:00
Marcus Boerger f18aa85252 - Know whether ew refer to an external array (is_ref) or not 2005-01-27 00:22:06 +00:00
Derick Rethans 7b27263e16 - There is no --with-apache2, only apxs2 2005-01-26 18:03:04 +00:00
Ilia Alshanetsky 4a5294788e Fixed bug #31699 (unserialize() float problem on non-English locales). 2005-01-26 16:55:17 +00:00
51ca0e7bbb ChangeLog update 2005-01-26 01:42:26 +00:00
Ilia Alshanetsky c85a9abc4c Fixed bug #29733 (printf() handles repeated placeholders wrong).
# Original patch by bugs dot php dot net at bluetwanger dot de
2005-01-26 00:01:26 +00:00
Andrei Zmievski 9ab8deb33c Don't depend on empty_string. 2005-01-25 23:58:22 +00:00
Ilia Alshanetsky 8c22d51070 Fixed bug #31465 (False warning in unpack() when working with *). 2005-01-25 22:50:39 +00:00
Andrei Zmievski 27b1a27faf MFB (Fix several egregious leaks in ext/browscap and sapi/embed). 2005-01-25 21:33:58 +00:00
Marcus Boerger 1c2b14b92f - Proto fix 2005-01-25 19:08:38 +00:00
Antony Dovgal c404bdb9f8 check body for NULL before using and prevent segfaults 2005-01-25 14:20:02 +00:00
foobar af854a8409 - Fixed bug #31684 (dio_tcsetattr(): misconfigured termios settings) 2005-01-25 13:42:52 +00:00
foobar 601140cbe9 New versions of glibc support a RTLD_DEEPBIND flag to dlopen. The
effect of this flag when loading a "foo.so" with undefined symbols is
that the search that symbol starts at foo.so and its dependencies
*before* the loading process' global symbol table.

This is an effective workaround for symbol namespace collisions between
various modules and the libraries on which they depend (where fixing the
respective modules or libraries is not possible e.g. due to API
constraints).

(By: Joe Orton)
2005-01-25 13:08:05 +00:00
foobar 25ab28c48f - Fix macosx shared extension build 2005-01-25 13:02:25 +00:00
foobar 0576cdc942 - Return of the automake requirement.
# Unfortunately we can't control what macros are used by the 3rd party
# extensions so..
2005-01-25 12:53:43 +00:00
Dmitry Stogov 2d8e73b963 Fixed bug #28041 (SOAP HTTP Digest Access Authentication was implemented) 2005-01-25 11:03:20 +00:00
Marcus Boerger 82193adc09 - Bugfix #26229 (getIterator() segfaults when it returns arrays or scalars) 2005-01-25 10:40:51 +00:00
Marcus Boerger 14e54cdc1e - Fix dependency 2005-01-25 10:39:49 +00:00
Marcus Boerger ccca7df1ea - Use correct freeing (thx Dmitry) 2005-01-25 10:07:52 +00:00
838ab371d9 ChangeLog update 2005-01-25 01:34:05 +00:00
foobar 91f68f0130 massage 2005-01-25 00:09:44 +00:00
Ilia Alshanetsky 25fd4c3bc2 Fixed ZTS build 2005-01-24 23:53:00 +00:00
Ilia Alshanetsky 71695f8159 Use multibyte specific code for handling files and generic basename based
code in all other instances.
2005-01-24 22:35:23 +00:00
Marcus Boerger b570ad759b - Unify 2005-01-24 21:28:56 +00:00
Marcus Boerger e1737ca88a - Bugfix #31346 2005-01-24 21:27:36 +00:00
Marcus Boerger 06dbcb22a1 - Update 2005-01-24 21:13:52 +00:00
Marcus Boerger 36e6841ef5 - Add new test 2005-01-24 20:22:56 +00:00
Marcus Boerger 3c36e73b95 - bugfix 31348 2005-01-24 20:21:11 +00:00
Marcus Boerger 3cf4eae4aa - Second and last part of #30725 fix 2005-01-24 20:02:55 +00:00
Marcus Boerger 5206e9c9cf - Allow getIterator() to fail 2005-01-24 19:18:37 +00:00
Marcus Boerger be86e1696e - Add new test 2005-01-24 19:16:06 +00:00
Marcus Boerger 2f55df7d10 - mysqli/sqlite changes 2005-01-24 18:49:01 +00:00
Marcus Boerger 7ec2fe9dcd - Synch with MYSQLi extension and use RuntimeException as base for
SQLiteException if SPL is present.
2005-01-24 18:46:50 +00:00
Moriyoshi Koizumi 76d91f2a3d - Revert irrelevant part. 2005-01-24 16:47:18 +00:00
Antony Dovgal 5a559e9a57 add test 2005-01-24 14:19:53 +00:00
Antony Dovgal 9e55579cb0 fix msg_recieve() returning TRUE instead of FALSE when unserialize failed
(patch by Andrey Hristov)
2005-01-24 14:12:01 +00:00
Joe Orton 62121a1840 Fixed regression #31645 - only flush before running the subrequest. 2005-01-24 11:44:56 +00:00
66a24ad4f5 ChangeLog update 2005-01-24 01:35:53 +00:00
Wez Furlong ebaf95b13a make this the right size... 2005-01-23 15:34:48 +00:00
Sergey Kartashoff 618b7c267c - A bug in mnogosearch module in ispell loading code was fixed 2005-01-23 15:01:20 +00:00
Edin Kadribasic 60f5e66aa9 Add support for fetching meta data 2005-01-23 14:50:06 +00:00
Edin Kadribasic d8aa131ca0 Store pgsql_type, intval and boolav per column 2005-01-23 10:57:11 +00:00
8839b8b3ec ChangeLog update 2005-01-23 01:36:14 +00:00
Edin Kadribasic 902c2b43cb Remove debug stuff 2005-01-22 23:51:09 +00:00
Edin Kadribasic e58a8671a2 Support for native nulls, bools and ints 2005-01-22 23:31:19 +00:00
foobar 5264cfb853 - Remove also autom4te.cache dir with phpize --clean 2005-01-22 20:30:05 +00:00
foobar af1f60e601 - Compile fix for systems without uint32_t typedef 2005-01-22 20:28:17 +00:00
Marcus Boerger 1d5c13bdad - Fix #31651 (ReflectionClass::getDefaultProperties segfaults with arrays.) 2005-01-22 12:23:01 +00:00
Marcus Boerger bad986232b - Update after fixing it 2005-01-22 12:22:01 +00:00
Marcus Boerger a01e3435de _ Add test for bug 31651 2005-01-22 11:46:56 +00:00
Edin Kadribasic afcd94f22d Generate files needed for php5ts.dll build 2005-01-22 03:36:38 +00:00
Andi Gutmans 8838c0f860 - Two new API calls for Derick (retreive CV name and value) by Dmitry 2005-01-22 02:29:18 +00:00
eba6a36290 ChangeLog update 2005-01-22 01:34:16 +00:00
foobar f8a540d105 - Typofix + removed unnecessary unsets caused by it 2005-01-22 01:31:54 +00:00
Andrei Zmievski ecb9f8668d MFB (bugfix for 24851) 2005-01-22 00:01:33 +00:00
Stefan Esser 581265f4d1 Correctly initialize ZVAL 2005-01-21 16:03:47 +00:00
Antony Dovgal 5e1b127864 destruct return_value 2005-01-21 10:55:41 +00:00
Wez Furlong 0162d0093d picky picky.
Lets make those OUTPUT rather than INPUT-OUTPUT.
We need some flag from the user if they want that.
2005-01-21 06:11:10 +00:00
Wez Furlong e5b6b0dbee Allow static build (better detection of PDO headers).
Copy error code into driver code, so PDO can handle it correctly.
Less leaks
2005-01-21 04:43:06 +00:00
Wez Furlong 7a137a5f84 fix leak 2005-01-21 04:41:52 +00:00
Wez Furlong 8ebcbfdf1b hrmm. Really really really really touch the timestamp in CVS to avoid
crappy makefile annoyance.
2005-01-21 04:34:41 +00:00
Wez Furlong bc55e7f3e2 make use of the query rewriter (even though it doesn't do anything yet) 2005-01-21 04:22:06 +00:00
Wez Furlong 53af3dc4f2 update 2005-01-21 04:02:41 +00:00
Wez Furlong dede3c59fe fix encoding nastiness that snuck in from the copy-n-paste of error code
descriptions from a web page.
2005-01-21 03:59:41 +00:00
Wez Furlong 88640832be and check in the generated c file later, to avoid remaking it in fresh checkouts. 2005-01-21 03:58:09 +00:00
Wez Furlong 6ddbfa0733 Revise query parser so that it can rewrite from one bind syntax to another.
Expose it as PDO_API.  No drivers utilize this feature yet.
2005-01-21 03:57:06 +00:00
1c0479f3f9 ChangeLog update 2005-01-21 01:36:01 +00:00
Wez Furlong 26f97a911b Eliminate unused parameter.
Don't start a transaction when asking for a cursor with pgsql.
Fix parameter binding for sqlite3
2005-01-21 00:39:03 +00:00
Wez Furlong dcd3d84ddb Eliminate unused parameter 2005-01-21 00:38:09 +00:00
Wez Furlong 08fa032b80 fix backslash 2005-01-21 00:04:50 +00:00
Antony Dovgal d0427feee4 fix bug #31623 (OCILogin does not support password grace period) 2005-01-20 18:39:48 +00:00
Antony Dovgal 84a8849a3a fix error message 2005-01-20 18:08:08 +00:00
Antony Dovgal 4f3e113e38 fix segfault in imap_sort() - it segfaults when options is less than 0.
it looks like c-client bug, but we still need a workaround.
also, convert_to_string search criteria.
2005-01-20 18:03:35 +00:00
Ilia Alshanetsky 844cc09cd1 Fixed bug #31398 (When magic_guotes_gpc are enabled filenames with '
get cutoff).
2005-01-20 17:44:58 +00:00
Dmitry Stogov a343fc848d Support for HTTP error codes 2005-01-20 17:29:16 +00:00
Edin Kadribasic 93e4213bfe Add support for the 'official' build machine layout 2005-01-20 15:54:35 +00:00
Dmitry Stogov c35353ea20 Fixed bug #30901 (can't send cookies with soap envelop).
void SoapClient::__setCookie(string name [, string value])
2005-01-20 14:29:19 +00:00
Antony Dovgal 9812f55289 fix segfault in imap_headerinfo() when fromlength or subjectlength are less than 0
+ fix protos
2005-01-20 14:04:50 +00:00
Dmitry Stogov a830b0fc6b Fixed bug #31422 (No Error-Logging on SoapServer-Side). 2005-01-20 12:48:01 +00:00
Rob Richards dd2f5ed142 Fixed bug #28817 (Var problem when extending domDocument). 2005-01-20 11:47:05 +00:00
Antony Dovgal 6a9579bd7e fix typos in error messages 2005-01-20 09:59:23 +00:00
Antony Dovgal 5aa42a202a fix typos in error messages & resource name 2005-01-20 09:57:57 +00:00
Dmitry Stogov 56025c6a1a Support for HTTPS with digital certificates. 2005-01-20 06:08:04 +00:00
Wez Furlong 1312fe469e Fix segfault on stmt close.
Make scrollable cursors actually work
2005-01-20 06:06:26 +00:00
Wez Furlong e21e1c65e3 Juggle/enhance mssql library detection 2005-01-20 05:09:06 +00:00
Wez Furlong 84aa902015 Generate pdo_oci.dll for modern SDKs and pdo_oci8.dll for ye-olde oci805 libs.
I'm told that oci805 is required for connectivity to oci805 servers, which are
no longer supported in more recent SDK releases.

Edin: please grab:

http://download.oracle.com/otn/nt/instantclient/instantclient-basic-win32-10.1.0.3-20050113.zip
http://download.oracle.com/otn/nt/instantclient/instantclient-sdk-win32-10.1.0.3-20050113.zip

and extract them under php_build, so that you end up with php_build/instantclient10_1
2005-01-20 03:33:17 +00:00
Wez Furlong 9fe37737f9 generate dblib and mssql variants in the same build 2005-01-20 03:29:53 +00:00
Wez Furlong 968d2ef830 A couple more adjustments for building multiple output variants of the same
extension source.
2005-01-20 03:24:50 +00:00
foobar 2c65e09a4b - Revert the weird change of ZEND_STRS() macro and use the correct
ZEND_STRL() macro.
# ZEND_STRS was changed to be same as ZEND_STRL..someone on crack? :)
2005-01-20 02:02:09 +00:00
foobar 480a3b08d5 - Changed phpize not to require automake and libtool.
- Fixed build system to always use bundled libtool files.
2005-01-20 01:41:20 +00:00
aaf344e642 ChangeLog update 2005-01-20 01:35:55 +00:00
foobar 76906e0443 - Add --with-libdir to phpized builds too 2005-01-20 00:54:18 +00:00
foobar 39b7569614 - Removed obsolete AC_PROG_RANLIB (AC_PROG_LIBTOOL does it)
- configure --help output cleanup for --with-libdir
2005-01-20 00:51:41 +00:00
foobar 52e00b8f03 Added --debug option to buildconf 2005-01-19 23:03:29 +00:00
foobar ed25ab62f5 Revert the multiple autoconf versions patch 2005-01-19 22:27:39 +00:00
Ilia Alshanetsky e8300c82a0 Stricter cc header check. 2005-01-19 18:54:23 +00:00
Derick Rethans c5b7fe878c - Add the patched libtool.m4 from snaps so that Jani can play with it. 2005-01-19 17:52:32 +00:00
foobar 9feb47d70e - Fixed bug #28976 (use From: from headers if sendmail_from is empty) 2005-01-19 17:38:20 +00:00
foobar 6faa433d58 - Fix the pic patch 2005-01-19 17:35:55 +00:00
Wez Furlong e28d2c8032 Take a stab at implementing out parameters for odbc 2005-01-19 05:27:15 +00:00
Wez Furlong a39d50c95f don't propogate an unspecified length to the driver.
Drivers will used a 0 length as a hint that the parameter is an in-out or out
parameter.
2005-01-19 05:25:40 +00:00
Wez Furlong 769d399be5 add dep 2005-01-19 03:50:32 +00:00
Wez Furlong ffd35bb63d allow static linkage.
Avoid segv when no username is passed
2005-01-19 03:45:21 +00:00
Wez Furlong a536e31fb1 leak/segv less 2005-01-19 03:44:49 +00:00
foobar 20be664666 - Fixed bug #29183 (Undefined symbol zend_check_private with Solaris CC) 2005-01-19 01:46:26 +00:00
57463e1509 ChangeLog update 2005-01-19 01:34:40 +00:00
foobar 91ea475f4d - Fixed bug #29136 (make test - libtool failure on MacOSX) 2005-01-19 01:30:23 +00:00
Wez Furlong 434d068994 *compile before commit *
*compile before commit *
*compile before commit *
2005-01-19 01:17:13 +00:00
Wez Furlong af8bb16ec1 implement nextRowset for ODBC
# this might even work first time
2005-01-19 01:13:39 +00:00
Wez Furlong 544d61873d proto bool PDOStatement::nextRowset()
Advances to the next rowset in a multi-rowset statement handle. Returns true if
it succeded, false otherwise
2005-01-19 01:12:52 +00:00
Marcus Boerger 406e85a8d8 - Fix memleak 2005-01-19 00:55:56 +00:00
Wez Furlong 9b36089838 let it compile again 2005-01-19 00:33:56 +00:00
foobar c245e1f0f7 - ldap_start_tls() requires ldapv3 protocol -> force it 2005-01-19 00:27:21 +00:00
Ilia Alshanetsky c78db34489 Fixed bug #31142 (crash, memory leak and data loss by imap_mail_compose). 2005-01-18 23:36:08 +00:00
Frank M. Kromann 736ff0319a Set the MSSQL_VERSION to FreeTDS when that lib is used 2005-01-18 22:39:01 +00:00
Frank M. Kromann 4b4cde0702 Rename php_freetds.dll to php_dblib.dll (still using the freetds libs).
Allow the build of both versions in the same process
2005-01-18 22:38:24 +00:00
Frank M. Kromann e296197362 Allow the build system to generate multiple extensions from the same extension directory 2005-01-18 22:37:12 +00:00
Antony Dovgal 84fe72612e add checks for libs & headers required by IBM DB2 2005-01-18 21:16:32 +00:00
Ilia Alshanetsky 023c1bccb3 Fixed bug #31480 (Possible infinite loop in imap_mail_compose()). 2005-01-18 16:32:53 +00:00
Ilia Alshanetsky 1e6454a67b Fixed bug #31479 (Fixed crash in chunk_split(), when chunklen > strlen). 2005-01-18 15:47:57 +00:00
foobar 64e40c2271 - Make sure FD_CLOEXEC is always defined. 2005-01-18 15:44:33 +00:00
Antony Dovgal 63fbc27466 fix bug #30430 (odbc_next_result() doesn't bind values and that results in segfault)
fix protos
2005-01-18 15:03:51 +00:00
Dmitry Stogov 57a0c3e159 Fixed patch for bug #31478 (SegFault/Memory Leak with empty()) 2005-01-18 12:01:31 +00:00
foobar 0503943150 - Sanitize output 2005-01-18 11:53:49 +00:00
foobar 197711bb7d Add test for bug #31402 2005-01-18 11:36:44 +00:00
foobar bed68d8828 Touch the generated file. 2005-01-18 10:57:05 +00:00
Dmitry Stogov ea6ea21939 Fixed bug #31190 (exceptions in call_user_func_array()) 2005-01-18 10:38:04 +00:00
Magnus M��tt� 5c98efddae Add test case for bug #30726. 2005-01-18 09:56:31 +00:00
Dmitry Stogov 30445fb661 Fixed bug #28444 (Cannot access undefined property for object with overloaded property access). 2005-01-18 09:05:39 +00:00
Frank M. Kromann 25917d5885 Make this compile with the generic ntwdblib from Microsoft 2005-01-18 07:17:01 +00:00
Frank M. Kromann 14821bb8cf use the static dblib.lib to avoid the need for extra dll's 2005-01-18 06:42:08 +00:00
Frank M. Kromann 008d859df9 add --with-freetds option to win32 build.
TODO make it work when both mssql and freetds is included or bail out with an error
2005-01-18 06:32:11 +00:00
Frank M. Kromann 01b426c452 make the mssql extension work with freetds on win32 2005-01-18 06:29:45 +00:00
Frank M. Kromann d56b42bec4 make the mssql extension work with freetds on win32 2005-01-18 06:09:48 +00:00
Wez Furlong a9d98544de Allow drivers to select bind emulation on a per statement basis 2005-01-18 04:58:50 +00:00
Wez Furlong d911f19862 doh 2005-01-18 04:35:47 +00:00
Wez Furlong 505fbb1966 nice and fluffy error handling 2005-01-18 02:42:52 +00:00
5089dc049a ChangeLog update 2005-01-18 01:36:51 +00:00
Wez Furlong 8b35436cb1 remove error and hook up rowCount 2005-01-18 00:58:15 +00:00
Ilia Alshanetsky 9839614829 Fixed bug #30726 (-.1 like numbers are not being handled correctly). 2005-01-18 00:29:43 +00:00
Wez Furlong 37ea5fbeb5 Tidy up driver specific method handling 2005-01-17 23:59:16 +00:00
Antony Dovgal 7c152b6a8e fix weird DB2 issue:
DB2's SQLDataSources() returns _max available_ length of result string instead of
_real_ length and that results in strings a-la "\0                  "
2005-01-17 18:08:54 +00:00
foobar 37d820b03f - Fixed bug #31444 (Memory leak in zend_language_scanner.c) 2005-01-17 17:20:56 +00:00
foobar e82eb93cf2 - Added some sanity checks by changing to the parameter parsing API 2005-01-17 17:07:28 +00:00
Christian Stocker 8d10b52ddf fix protos (by Mehdi Achour ) 2005-01-17 15:56:17 +00:00
Antony Dovgal acbdbe1e65 fix leak appearing when odbc_errormsg() got invalid resource 2005-01-17 15:05:11 +00:00
Joe Orton 8288c451c0 Fixed bug #31519: Set r->status_line to SAPI-provided status-line. 2005-01-17 12:24:40 +00:00
Stefan Esser da7001a6c3 Fix compiler warning. 2005-01-17 11:45:09 +00:00
Edin Kadribasic 095a6f1eb3 Use PQescapeBytea() for quoting. Need to think how to add binary safe
quoting for blobls (pgsql bytea type).
Fixes #2818
2005-01-17 10:37:41 +00:00
Wez Furlong 3a751f37c6 don't raise errors for the no-error case 2005-01-17 05:28:46 +00:00
Wez Furlong b234f1e415 tidy up a few things 2005-01-17 05:28:13 +00:00
dc73af8351 ChangeLog update 2005-01-17 01:40:52 +00:00
Wez Furlong 44e77380fb Missing 1 2005-01-17 01:31:14 +00:00
Wez Furlong ca98805935 Add a PDO driver for Sybase style DB-lib (including MS SQL).
Only the basics are here right now.
2005-01-17 01:15:14 +00:00
Zak Greant f3d39ff406 Added standard emacs and vim modelines 2005-01-16 19:28:55 +00:00
Moriyoshi Koizumi b1ddbcbef9 - Fix a critical bug that request-local settings leak to another request. 2005-01-16 15:55:17 +00:00
78306883e2 ChangeLog update 2005-01-16 01:34:48 +00:00
Stefan Esser 135fee7f10 and use it... 2005-01-15 18:30:16 +00:00
Stefan Esser f8787a67ed finally use what we calculated 2005-01-15 18:19:49 +00:00
Stefan Esser 2c25b9d866 Restore unserialize() speed 2005-01-15 18:18:08 +00:00
foobar 58c6ed3583 CS fix 2005-01-15 04:50:26 +00:00
foobar 0e9866bfd6 ws fix 2005-01-15 04:34:30 +00:00
0bea91bbcb ChangeLog update 2005-01-15 01:33:59 +00:00
Andi Gutmans 4908642c8c - Unload on MAC OS X (shouldn't be a reason not to) 2005-01-15 00:11:20 +00:00
foobar 330746480e - Fixed bug #31060 (imageftbbox() does not use linespacing parameter) 2005-01-14 23:07:46 +00:00
foobar 68ca0ed6d8 - Fixed bug #30120 (imagettftext() and imagettfbbox() accept too many parameters) 2005-01-14 22:43:15 +00:00
foobar 14058c83e6 - Fix another generated header include 2005-01-14 20:44:28 +00:00
Dmitry Stogov 9de934c210 Fixed SIGSEGV in ext/standard/tests/network/tcp4loop.phpt and ext/standard/tests/network/unixloop.phpt 2005-01-14 09:02:02 +00:00
Dmitry Stogov 72d02269a9 Restore behavior of $str["str"]. (Now $str["str"] is equivalent to $str[0] again) 2005-01-14 09:01:22 +00:00
0d6b05eb8d ChangeLog update 2005-01-14 01:36:11 +00:00
Wez Furlong 10eb5a1098 fix compile.
Someone with firebird needs to sit down and give this extension some love
2005-01-13 18:02:13 +00:00
Dmitry Stogov ce0884c287 Additional fix for fix of bug #29883 2005-01-13 08:49:06 +00:00
Wez Furlong d056f96a2f Add configure support for Oracle InstantClient SDK 2005-01-13 04:55:56 +00:00
Wez Furlong f17311c9dd Add support for ODBCRouter 2005-01-13 02:06:39 +00:00
Wez Furlong ef0de01b62 Take a blind stab at implementing scrollable cursors for pgsql.
We allocate a unique cursor name for each statement, so that we
don't interfere with other open statement handles on the same dbh.

Note, however, that we force a new transaction for each open scrollable cursor
(postgres requires cursors to be used inside a transaction).  This is okay,
except for the case where a scrollable cursor is opened, an update is made and
the cursor is closed; closing the cursor commits the transaction that was begun
when it was opened.

It might well be better to avoid the transaction in PDO and force the user to
be aware of the requirements of cursors and explicitly initiate the transaction
themselves.

This is all untested code; it compiles and looks like it will work, but I
encourage someone with a real postgres setup to actually sit down and try to
use it.
2005-01-13 01:59:39 +00:00
10cba41a70 ChangeLog update 2005-01-13 01:35:42 +00:00
Wez Furlong 0db373883f detect funky kerberos deps that chain on from openssl deps on RH distros 2005-01-13 01:12:34 +00:00
Dmitry Stogov 6fa37163f2 Fixed bug #31098 (isset false positive) 2005-01-12 09:18:31 +00:00
Wez Furlong 222e5f9cbc stub out scrollable cursors here too 2005-01-12 06:12:26 +00:00
Wez Furlong d3ab27f7cc stub out scrollable cursors 2005-01-12 06:11:33 +00:00
Wez Furlong be616317c7 stub out scrollable cursor change 2005-01-12 06:10:31 +00:00
Wez Furlong c77bd71315 be aware of scrollable cursors; sqlite doesn't support them 2005-01-12 06:08:59 +00:00
Wez Furlong 4d5c40cd9a touch generated file to avoid implicit yacc rule from eating it 2005-01-12 06:08:36 +00:00
Wez Furlong 81664bd2db Remove bogus scroll attribute.
Expose cursor constants to the script
2005-01-12 05:59:27 +00:00
Wez Furlong 7552fe23ff make scrollable cursors consistent with odbc; removing bogus attribute 2005-01-12 05:58:58 +00:00
Wez Furlong b2fe675636 Support scrollable cursors 2005-01-12 05:58:19 +00:00
Wez Furlong 459b4f85d3 Add support for scrollable cursors.
Enable PDO_ATTR_PREFETCH and default it to 100Kb of prefetch buffer.
2005-01-12 05:47:03 +00:00
Wez Furlong dd842e4bf4 API support for scrollable cursors 2005-01-12 04:49:12 +00:00
Wez Furlong 076bc75c01 add theoretical support for returning ints as ints and bools as bools.
individual drivers need to support returning data in these formats.
2005-01-12 03:26:46 +00:00
Wez Furlong f9d3469e4f Add configure support for ODBCRouter and generic ODBC libs.
Note that ODBCRouter doesn't directly implement ODBC 3.0, so
using it here won't really work.

Expand the ODBC 3 check to better explain what happened and
how to make progress (e.g.: use an ODBC manager library like
unixODBC).
2005-01-12 02:19:30 +00:00
c13ec603b8 ChangeLog update 2005-01-12 01:35:50 +00:00
Moriyoshi Koizumi e5786084e1 - Test renaming 2005-01-11 21:57:01 +00:00
Moriyoshi Koizumi 9b77de63ed - Fix bug #31436 (isset() incorrectly returns true in dereference of a wrong type) 2005-01-11 21:53:11 +00:00
Moriyoshi Koizumi 87ddc9d06b - BFN 2005-01-11 21:10:47 +00:00
Moriyoshi Koizumi 20a5a1d61c - Fix the fix :) 2005-01-11 20:58:46 +00:00
Moriyoshi Koizumi ee18958f98 - Fix htmlentities() / html_decode_entity() UTF-8 related bugs
initially reported by Kamesh Jayachandran
2005-01-11 20:44:04 +00:00
Moriyoshi Koizumi 357b0c34b6 - Fix bug #31478 (segfault with empty()) 2005-01-11 17:17:48 +00:00
Wez Furlong 166ca20bed Fix build 2005-01-11 14:28:37 +00:00
Joe Orton cb6605c1a5 Fixed bug #30446 - virtual() includes files out of sequence,
work around 2.0 subrequest/internal redirect issue.
2005-01-11 14:01:32 +00:00
foobar 376d5f6910 Fix ZTS build 2005-01-11 13:35:56 +00:00
Rob Richards a3335dba69 revert fix for bug #28817 - fix is bad 2005-01-11 10:36:08 +00:00
foobar b298098307 - Added check for IMAP 2005 version 2005-01-11 04:56:06 +00:00
Wez Furlong c55b4ab516 update for recent adjustments 2005-01-11 02:59:52 +00:00
0e8b1d6864 ChangeLog update 2005-01-11 01:35:48 +00:00
Rasmus Lerdorf 2a3ca10a61 Fix OSX DL_UNLOAD macro and actually use it to make shared extensions
work on OSX.
2005-01-10 21:57:30 +00:00
Antony Dovgal 6074423330 fix Konstantin's last name Chugeuv -> Chuguev 2005-01-10 21:37:17 +00:00
foobar 32d86482cc update test to include negative floats as strings too 2005-01-10 16:00:08 +00:00
foobar 40b9c63da1 - Fixed bug #28074 (FastCGI: stderr should be written in a FCGI stderr stream). 2005-01-10 15:38:24 +00:00
foobar 71ea389f74 Missing $Id$ tag 2005-01-10 15:20:53 +00:00
foobar 2b407ef934 - Update credits 2005-01-10 15:11:17 +00:00
foobar 6e84232e62 - Compressed 2004 Changelog 2005-01-10 15:07:51 +00:00
foobar a96507c1ec - Added missing header sections. 2005-01-10 14:57:36 +00:00
Joe Orton 9a8114e388 Don't scribble over the stack; icc compiler warning fix
from dcb314@hotmail.com via Red Hat bugzilla #143795.
2005-01-10 11:26:56 +00:00
Marcus Boerger 4a76003201 - Fix proto 2005-01-10 07:19:08 +00:00
Marcus Boerger 0f44e8a722 - Bugfix #31342: SQLite OO interface with Exceptions (hugo dot pl at gmail dot com) 2005-01-10 07:16:25 +00:00
Marcus Boerger 4494f0892b - Implement iterator interface in sqlite 2005-01-10 07:13:56 +00:00
41f1e96817 ChangeLog update 2005-01-10 01:35:59 +00:00
foobar 4589cef5e1 - Added AC_ZEND_C_BIGENDIAN macro (as requested by Andi) 2005-01-10 01:33:29 +00:00
foobar 931810629c - The pic/no-pic patch by Joe Orton. 2005-01-10 01:11:09 +00:00
foobar a139dbf9cc - Fix outside-source-tree builds. Always include generated header files
with #include <some_header.h> to make sure the correct file is used.
2005-01-09 21:05:06 +00:00
Antony Dovgal 37d3ea836e add skipif section 2005-01-09 18:22:12 +00:00
Antony Dovgal 68d73f8cf9 add test for bug #31454 2005-01-09 18:15:49 +00:00
Antony Dovgal d7072f8a9d efree(name) 2005-01-09 17:49:51 +00:00
Antony Dovgal c644b2a5a1 fix bug #31454 (session_set_save_handler crashes PHP when supplied non-existent object ref) 2005-01-09 17:42:02 +00:00
foobar 6ffb0dcaf2 - Fix leaks with registered shutdown functions. 2005-01-09 16:30:09 +00:00
foobar 2da8b014af MFB: - Rationalize code a bit 2005-01-09 16:18:39 +00:00
54e954f852 ChangeLog update 2005-01-09 01:36:09 +00:00
foobar fc9d60b66a Remove done stuff 2005-01-09 00:18:28 +00:00
foobar 4db9db0cc7 - Fix possible crash (PR#26223). Leaks remain. 2005-01-08 20:44:23 +00:00
Georg Richter 6b49e2d9e7 fixed compile bug under Windows (libmysql.def currently doesn't export mysql_server_init/end).
Thanks to Sebastian Bergmann for reporting
2005-01-08 15:11:37 +00:00
Dmitry Stogov 0854cad7a2 Unnecesary check was removed 2005-01-08 13:53:45 +00:00
Marcus Boerger 5516915115 - Add new test 2005-01-08 13:47:05 +00:00
Marcus Boerger 344d2210c2 - Unify 2005-01-08 13:46:18 +00:00
Marcus Boerger 01d6db92fc - Fix shared build 2005-01-08 13:36:17 +00:00
Marcus Boerger 8045f834d4 - Remove double destroy (which is definitively wrong and prevents php from
normal execution).
2005-01-08 13:34:03 +00:00
Marcus Boerger 79687e9b7d - Fix dependency 2005-01-08 13:24:39 +00:00
Marcus Boerger 1875caf1ab - Fix warning
- Fix tsrm usage
2005-01-08 12:35:50 +00:00
foobar 901e4f78ec NN 2005-01-08 12:16:31 +00:00
foobar 9ea10c5cec - Fix some memory leaks 2005-01-08 12:02:22 +00:00
688baca5a5 ChangeLog update 2005-01-08 01:35:57 +00:00
Antony Dovgal 5eeb444b8b remove duplicated include 2005-01-07 20:55:46 +00:00
Magnus M��tt� 5ec0e49497 Argh.. Committed old patch.
Add safe_mode check and fix error code.
2005-01-07 17:38:03 +00:00
Antony Dovgal c71c8e7604 fix PHP_CHECK_64BIT macro (finally got 64bit machine to test it) 2005-01-07 16:57:23 +00:00
Georg Richter f16db40af2 forgot to remove some comments in last commit:( 2005-01-07 16:34:55 +00:00
Sebastian Bergmann 683515596b ZTS fix. 2005-01-07 16:24:51 +00:00
Sebastian Bergmann aca657eca2 Sync with config.m4. 2005-01-07 16:23:13 +00:00
Magnus M��tt� 0dddd923c7 Added new function: posix_access()
Feature requests: #29615, #14924
2005-01-07 16:05:06 +00:00
Georg Richter 500d0e3bd2 new mysqli stuff 2005-01-07 15:05:09 +00:00
Georg Richter 0b4c108bd7 Added new classes:
mysqli_driver
	mysqli_warning
	mysqli_exception
	mysqli_sql_exception

Improved embedded server support
changed testsuite to work also with embedded server

Made statement and resultset classes extendable

minor fixes
2005-01-07 14:59:59 +00:00
foobar 05adbd51b4 - Fixed bug #31055 (apache2filter: per request leak proportional to the full path of the request URI) 2005-01-07 06:28:08 +00:00
foobar 7a3d9addb8 - Make sure $host_alias is never empty 2005-01-07 06:12:42 +00:00
Wez Furlong f5c452989d update by steph 2005-01-07 05:39:27 +00:00
Wez Furlong e6c282a766 jumbo commit; implement sqlstate error codes.
Bundle sqlite3
2005-01-07 05:27:27 +00:00
Wez Furlong 02d6b65c67 lame implementation of SQLSTATE error codes 2005-01-07 05:25:57 +00:00
Wez Furlong 70da739031 remove error map; odbc speaks SQLSTATE natively 2005-01-07 05:25:35 +00:00
Wez Furlong fe1a87d02d half-hearted adjustment for sqlstate error codes; will do a better job
when I'm sitting down with a working oci env
2005-01-07 05:25:02 +00:00
Wez Furlong 0f12bfece7 tidy up some parts of the build (could do with more work)
Partially implement SQLSTATE error codes
2005-01-07 05:24:21 +00:00
Wez Furlong 4486666209 half-update for sqlstate error codes 2005-01-07 05:23:48 +00:00
Wez Furlong 6e0d8dd06f implement SQLSTATE style error codes.
Allow drivers to add methods to dbh and stmt objects
(note that we can't use a class, because the use only sees the PDO class).
Clarify the api slightly:
  PDO::exec() is used for one-shot queries that don't return rows
  PDO::query() is a convenience function for returning a rowset without
  having to go through the steps of preparing and executing.
2005-01-07 05:23:10 +00:00
1c9200da92 ChangeLog update 2005-01-07 01:35:24 +00:00
10696169b2 ChangeLog update 2005-01-06 01:35:51 +00:00
Joe Orton 792032c6bb Fix #31413: curl POSTFIELDS usage on 64-bit platforms. 2005-01-05 21:33:56 +00:00
f243fccfd4 ChangeLog update 2005-01-05 01:35:56 +00:00
Frank M. Kromann a6ce3e17e4 Allow gmp to compile under Win32 2005-01-04 22:39:29 +00:00
Wez Furlong c4bc5b7f33 Fix #31408: memory leak in stream_socket_recvfrom 2005-01-04 15:30:45 +00:00
foobar a2177b2e8e - Fixed bug #31396 (compile fails with gd 2.0.33 without freetype) 2005-01-04 06:51:45 +00:00
85f9f047cf ChangeLog update 2005-01-04 01:36:40 +00:00
Stanislav Malyshev 9fa1ee360b merge patch from http://www.sqlite.org/cvstrac/chngview?cn=1953
bug led to PHP exiting on queries with unknown columns
2005-01-03 11:29:27 +00:00
Stanislav Malyshev 52ffca0b27 Fix the following nasty bug:
- if compile bails out from the middle of compiling, current_buffer is not restored
- if current_buffer is not null, yy_switch_to_buffer will do: *yy_c_buf_p = yy_hold_char; on
the next request
- which would lead to memory corruption on next request
2005-01-03 10:01:03 +00:00
33cd288edc ChangeLog update 2005-01-03 01:37:14 +00:00
Ilia Alshanetsky ea7b61dfe5 Fixed bug #31371 (highlight_file() trims new line after heredoc). 2005-01-02 23:53:43 +00:00
Rob Richards 6bbb254ecc allow parser flags to be passed to xinclude() 2005-01-02 12:22:36 +00:00
Rob Richards 6a64418809 add NONET flag to disable network access when loading xml 2005-01-02 12:21:14 +00:00
Rob Richards 8450fae834 Fixed bug #31361 (simplexml/domxml segfault when adding node twice) 2005-01-02 12:08:41 +00:00
Moriyoshi Koizumi 88ce94a3c2 - Add testcases for bug #29493 and #31213. 2005-01-02 06:51:03 +00:00
fc64a7ae57 ChangeLog update 2005-01-02 01:36:26 +00:00
Wez Furlong 126e524635 Fix build... 2005-01-01 14:32:59 +00:00
8747e6e1b4 ChangeLog update 2005-01-01 01:35:57 +00:00
Wez Furlong 1f75a34f76 add proper dep 2004-12-31 17:45:08 +00:00
c1e5e2c74c ChangeLog update 2004-12-31 01:36:44 +00:00
Rasmus Lerdorf b1db6ed28d Safer libtoolize version check 2004-12-30 15:53:57 +00:00
foobar 4cf9d27072 - Fixed bug #28930 (PHP sources pick wrong header files generated by bison) 2004-12-30 15:18:24 +00:00
foobar a3943d9be5 - Fix buildconf failure with autoconf versions > 2.13 2004-12-30 14:56:00 +00:00
foobar 5ac375a40d - Fixed bug #31101 (missing kerberos header file path with --with-openssl) 2004-12-30 14:50:06 +00:00
Antony Dovgal 8596934a39 tidy_repair_string() should not try to load config file if there was no config parameter 2004-12-30 11:56:18 +00:00
foobar 69eec3f3b9 MFB_4_3: Quote macro names in AC_DEFUN() 2004-12-30 07:08:39 +00:00
foobar 57eddbd7d0 - Fixed the crash and leak. 2004-12-30 05:31:55 +00:00
foobar f47d6bc193 missing .cvsignore file 2004-12-30 04:43:51 +00:00
Ilia Alshanetsky a7bc501d90 MFH: A leak is better(?) then a crash. 2004-12-30 04:39:17 +00:00
Ilia Alshanetsky 4bef3dde2d MFB: fixed test case 2004-12-30 04:11:33 +00:00
00a1b5d546 ChangeLog update 2004-12-30 01:34:40 +00:00
Ilia Alshanetsky 585833ab7e Fixed proto. 2004-12-30 01:23:44 +00:00
foobar 5abd0518dd cleanup.. 2004-12-30 00:59:28 +00:00
Ilia Alshanetsky 8f7f00178f Fixed typo. 2004-12-29 21:56:42 +00:00
Ilia Alshanetsky 12c2113b3e Fixed compiler warnings. 2004-12-29 21:40:34 +00:00
Ilia Alshanetsky ed64463bdb Fixed memory leaks. 2004-12-29 21:33:03 +00:00
Ilia Alshanetsky 742f8c2502 MFB: don't perform pointless operations. 2004-12-29 21:25:00 +00:00
Ilia Alshanetsky 3f79dfbb04 Don't forget to unload t1lib. 2004-12-29 21:07:59 +00:00
Frank M. Kromann 70c51c4ee6 Fix typo 2004-12-29 20:18:34 +00:00
Antony Dovgal 6528b1b0b4 more typos 2004-12-29 16:11:42 +00:00
Antony Dovgal 0460f73db2 MFB: fix typos 2004-12-29 13:53:40 +00:00
Georg Richter 57fa54af2d added property 'id' to retrieve statement id (required by PEAR DB, to support
mysqli prepared statements)
2004-12-29 11:46:13 +00:00
e8a505bd3d ChangeLog update 2004-12-29 01:37:10 +00:00
Derick Rethans 7f12445175 - MFB: Add dom/xml_common.h header as installed header in order to be able to build pecl/xml_reader 2004-12-28 15:20:42 +00:00
Andi Gutmans c2913c977a - Revert expose_php change 2004-12-28 03:48:18 +00:00
Ilia Alshanetsky 5acd33001a Turn off sending of PHP identifying header. This is complete useless for
any practical application and is a total wasting bandwidth/cpu.
2004-12-28 02:42:23 +00:00
69b2401099 ChangeLog update 2004-12-28 01:35:50 +00:00
Wez Furlong 73186934d8 more get_method signature changes 2004-12-27 22:04:54 +00:00
Zeev Suraski 6b1f070907 MFB 2004-12-27 18:53:27 +00:00
Zeev Suraski f64c4f4569 MFB - description fix 2004-12-27 18:22:50 +00:00
Georg Richter dc63cb7feb fixed testcase 047
fixed windows compile error
2004-12-27 15:39:35 +00:00
Marcus Boerger 7be33a225e - Need to unmangle the class name here 2004-12-27 15:13:26 +00:00
Dmitry Stogov beaff87d50 "Undefined variable: %s" noticies were fixed to use one space 2004-12-27 13:43:26 +00:00
Marcus Boerger 03af7c8abc - More proto/error message fixes 2004-12-27 13:32:22 +00:00
Georg Richter 698c0361d6 Fix for feature request #31015: added length for field length 2004-12-27 11:48:57 +00:00
Marcus Boerger 4b80deed8e - Small fixlet (by Tony) 2004-12-27 11:41:45 +00:00
Ilia Alshanetsky 4da21882fd Fixed spelling. 2004-12-27 07:19:25 +00:00
2971f422da ChangeLog update 2004-12-27 01:35:30 +00:00
Wez Furlong 823d48bd37 hmmmmm. Bound params *were* working this way before, but now it seems that
I have to bind them as text.
2004-12-26 18:13:52 +00:00
Georg Richter c2ef1ad438 added constructors for mysqli_stmt and mysqli_resultset classes 2004-12-26 13:17:03 +00:00
Georg Richter 683f6c879c added constructors for mysqli_stmt and mysqli_result classes 2004-12-26 13:16:40 +00:00
Wez Furlong b44785e958 don't blow up under HEAD 2004-12-26 04:50:09 +00:00
Wez Furlong 63ee853b74 bump PHP API number.
This is so that we can work around the signature change in the get_method
overloaded object handler in our portable extensions.

Yes, you could argue that the zend api number needs bumping, but then you could
argue which one to bump, as neither of them is specific or generic enough.

Besides all that, the PHP API number really needs a good old bump anyway.
2004-12-26 04:46:09 +00:00
Georg Richter ea22bf6063 fix for bug 31141 2004-12-25 16:42:53 +00:00
Marcus Boerger 8c7bd30a7b - Add ReflectionClass::hasMethod() (thanks to Johannes S.) 2004-12-25 16:27:27 +00:00
Wez Furlong c8b2f43005 fix build issues 2004-12-25 04:01:30 +00:00
Wez Furlong 843807c647 When a socket is non-blocking, don't block ssl enabled sockets.
Allow for non-blocking negotiation when calling stream_socket_enable_crypto().
That function will return the foolowing values:

false - negotiation failed
0     - try again when more data is available (only for non-blocking sockets)
true  - ssl was enabled
2004-12-25 02:02:56 +00:00
4deaf7e243 ChangeLog update 2004-12-25 01:35:07 +00:00
Antony Dovgal ffb2cf7a94 return empty string when got empty parameter 2004-12-24 19:45:54 +00:00
Dmitry Stogov f91088459b New sarbage collector's bug was fixed (the behavior should be the same as in PHP_5_0) 2004-12-24 09:00:29 +00:00
Dmitry Stogov e986a1f47e "Undefined variable: %s" noticies were fixed to be compatible with PHP_5_0 2004-12-24 08:24:55 +00:00
c2e70dbe9e ChangeLog update 2004-12-24 01:37:05 +00:00
Wez Furlong e1f3beaa13 really don't blow up 2004-12-23 19:39:22 +00:00
Ilia Alshanetsky d0f606f11d Fixed several buffer overflows. 2004-12-23 19:29:12 +00:00
Antony Dovgal 38d8e20f68 destroy return_value and fix leak in array_fill() 2004-12-23 16:35:48 +00:00
Antony Dovgal 78edc7e65a add Oracle Instant Client support (initial patch by cjbj at hotmail dot com) 2004-12-23 16:20:09 +00:00
Wez Furlong d3d757d95a don't crash... 2004-12-23 05:56:50 +00:00
63f659637f ChangeLog update 2004-12-23 01:34:51 +00:00
Ilia Alshanetsky b19e666946 Fixed bug #31142 (imap_mail_compose() fails to generate correct output). 2004-12-22 17:27:39 +00:00
287dc7a32b ChangeLog update 2004-12-22 01:36:38 +00:00
Ilia Alshanetsky 4ab69902dc Fixed possible crash in imap_mail_compose(). 2004-12-21 15:47:14 +00:00
Edin Kadribasic ea07d448a5 MFB: Avoid autoheader warning 2004-12-21 15:41:22 +00:00
foobar b6823b673e - Fixed bug #28248 (Can not compile --with-sybase and freetds) 2004-12-21 06:57:01 +00:00
foobar c9f552923a - Fixed bug #28385 (files in $(prefix)/lib/php/build/* installed with wrong
permissions). (Jani, ramsy at ramix dot jp)
2004-12-21 04:58:50 +00:00
Magnus M��tt� 774a978ea9 Fix test so it doesn't hang make test on HP-UX. 2004-12-21 04:34:22 +00:00
foobar b8056095c6 - Fixed bug #31145 (configure is using -lcpdf instead of -lcpdfm) 2004-12-21 04:21:43 +00:00
61bf7a23ce ChangeLog update 2004-12-21 01:34:54 +00:00
foobar 20fce0ba3e - Use correct header files (in c99 compliant way). uint32_t is preferred. 2004-12-21 01:07:24 +00:00
Wez Furlong 0a42a1f422 Errr... fix leak 2004-12-21 00:37:01 +00:00
foobar 4157e50c00 Better fix for endian compile problems. 2004-12-20 20:37:45 +00:00
foobar bc3f6c94d4 Fix buildconf when multiple autoconf versions installed 2004-12-20 20:23:57 +00:00
Rasmus Lerdorf fdaa130f3a Add the new request_time sapi struct entry to all the sapis. Some of these
may have ways of getting the request time without the extra syscall, but
for now let's just make sure we don't crash and people will eventually
fill these in where applicable.
2004-12-20 19:33:41 +00:00
Georg Richter 5c50f0bb30 prevent type conversion during mysql_stmt_execute for NULL variables 2004-12-20 16:39:14 +00:00
7152b3811e ChangeLog update 2004-12-20 01:36:49 +00:00
Ilia Alshanetsky ec83570232 Fixed bug #31103 (Better error message when c-client cannot be found). 2004-12-19 18:16:50 +00:00
6a05ad04d9 ChangeLog update 2004-12-19 01:39:08 +00:00
foobar a903822561 Missing cvs id tag 2004-12-18 03:14:39 +00:00
95467a3a25 ChangeLog update 2004-12-18 01:35:26 +00:00
Andi Gutmans 235e6c0afe - Fixed Bug #30562 Segmentation fault with __call() 2004-12-17 22:24:51 +00:00
Derick Rethans 13c2cbb515 - MF43: Fixed bug #31072 (var_export() does not output an array element with an
empty string key). (Derick)
2004-12-17 14:40:39 +00:00
Derick Rethans 4394c6f441 - MF43: Fixed strtod for Irix and some other strange platform 2004-12-17 13:17:32 +00:00
Derick Rethans 6386777fe3 - MF43: Fixed weird types, this also makes it compile on IRIX again. 2004-12-17 13:08:44 +00:00
Rob Richards b462fc8bd2 Fixed bug #31139 (XML Parser Functions seem to drop &amp; when parsing) 2004-12-17 12:20:50 +00:00
3f835d67ba ChangeLog update 2004-12-17 01:36:38 +00:00
Ilia Alshanetsky 77c0395968 Fixed bug #31087 (broken php_url_encode_hash macro). 2004-12-16 22:39:39 +00:00
Derick Rethans 1c23efeff4 - MF43: Make it compile on HPUX on Itanium 2 2004-12-16 22:22:51 +00:00
Frank M. Kromann 4f8973fcdc Fix #31120 and #31135. mssql_query returns false on successfill inserts and stored procedures 2004-12-16 21:47:23 +00:00
Antony Dovgal 33c24b5436 fix leak (init array only if we got valid start key) 2004-12-16 19:13:58 +00:00
Derick Rethans 16c6679125 - MF43: Fixed bug #31107 (strtod on solaris9/intel) 2004-12-16 13:06:58 +00:00
foobar ce742b08b0 - Fix typo (avaliable -> available). (bug #28725) 2004-12-16 12:34:32 +00:00
foobar eb0c45d572 - Fixed compile error with HP-UX using GCC. 2004-12-16 11:49:48 +00:00
Derick Rethans 2689533db9 - MF43: Fixed bug #31110 and #31111 (Zend/zend_strtod.c problems) 2004-12-16 10:38:48 +00:00
5d2b6c784e ChangeLog update 2004-12-16 01:35:24 +00:00
Frank M. Kromann 7800086169 Adding missing zend_list_addref() and make SWFShape::drawArc() work 2004-12-15 18:01:31 +00:00
foobar e4fa4fcdd9 missing files 2004-12-15 02:29:40 +00:00
89fac1e1e2 ChangeLog update 2004-12-15 01:51:40 +00:00
Ilia Alshanetsky cc17322c14 MFB: test fix. 2004-12-14 17:43:53 +00:00
Dmitry Stogov b20a007aa0 Fixed build with custom libming 2004-12-14 16:15:58 +00:00
Dmitry Stogov 860754f0f9 Fixed build on linux-glibc21-i386 2004-12-14 14:01:06 +00:00
Dmitry Stogov 3f0c2347ff Fixed bug #30994 (SOAP server unable to handle request with references). 2004-12-14 13:58:57 +00:00
Derick Rethans c0edc48a08 - MFH: Fixed compile error related to bug #28605.
#- But it does not *fix* bug #28605.
2004-12-14 08:43:01 +00:00
b952c194f6 ChangeLog update 2004-12-14 01:33:41 +00:00
Ilia Alshanetsky 6d7cac7731 Fixed bug #28228 (NULL decimal separator is not being handled correctly). 2004-12-14 00:37:19 +00:00
Wez Furlong 419bbffeef Make it really build... 2004-12-13 13:52:01 +00:00
Joe Orton 7263c220dd More PHP_LIBDIR fixes for lib64 platforms. 2004-12-13 10:30:21 +00:00
Derick Rethans d91a531d2e - Added "G" modifier to ini setting number format. 2004-12-13 09:09:06 +00:00
eafd2ef88e ChangeLog update 2004-12-13 01:39:15 +00:00
Wez Furlong d213b67cdf Add missing constants for socketpair().
I thought I had included these...
Good catch Nuno :)
2004-12-12 23:21:53 +00:00
Moriyoshi Koizumi 28cc55be0a - Apply the same fix to apache2filter too. 2004-12-12 23:06:06 +00:00
Wez Furlong d10b86f8f4 Add stream_socket_pair(), a streams based version of socketpair().
Modified patch from Vincent [six at t0x dot net]
2004-12-12 16:10:35 +00:00
Ilia Alshanetsky c96a1e0ddf Fixed bug #31056 (php_std_date() returns invalid formatted date if
y2k_compliance is On).

# will MFH to 5.0.X and 4.3.X after release
2004-12-12 15:50:06 +00:00
Moriyoshi Koizumi a0975f8dcf - Fixlet for httpd-2.1 on Darwin platforms 2004-12-12 02:11:27 +00:00
7d7aa0f99d ChangeLog update 2004-12-12 01:41:02 +00:00
Derick Rethans b68803c08e - Generate all iconv headers by default 2004-12-11 11:16:55 +00:00
8208e517f8 ChangeLog update 2004-12-11 01:33:25 +00:00
Andi Gutmans 4e942cb07f - Fix bug #27728 (Can't return within a zend_try{} or the previous
state isn't restored.
2004-12-10 22:59:25 +00:00
Antony Dovgal 01b996b98b fix buffer overrun & segfault in get_meta_tags() when there is no tag value 2004-12-10 10:30:01 +00:00
e6f64862c1 ChangeLog update 2004-12-10 01:32:20 +00:00
Ilia Alshanetsky 5484568c5c Avoid causing a crash. 2004-12-10 00:36:51 +00:00
Antony Dovgal ad76be844b CS changes (as suggested by Ilia) 2004-12-09 17:15:52 +00:00
Antony Dovgal 5dbe3f6f4f fix 1-byte leak 2004-12-09 15:07:56 +00:00
Antony Dovgal e76824c91f fix segfault in session_module_name() when session.save_handler is empty 2004-12-09 14:14:21 +00:00
Derick Rethans 1266735cd0 - MF43: Fixed bug #31034 (Problem with non-existing iconv header file). 2004-12-09 09:06:06 +00:00
Antony Dovgal 01f31dcccb fix buffer overrun and remove debug printf() call 2004-12-09 08:22:06 +00:00
3996f37651 ChangeLog update 2004-12-09 01:32:56 +00:00
Frank M. Kromann 49f88bc05a Fix logic for file checking. Bug #31019 2004-12-08 18:57:48 +00:00
Joe Orton 7b547a393a Fix VPATH build again. 2004-12-08 12:50:00 +00:00
foobar 4366854783 Fix build. This was not supposed to halt configure if test fails. 2004-12-08 06:46:34 +00:00
Brad House ab6faef7ee Newer versions of libmonetra broke compatability with one function. Make workaround that detects version, and works with both. 2004-12-08 03:02:34 +00:00
c861ce463d ChangeLog update 2004-12-08 01:32:56 +00:00
Dmitry Stogov a22fa4d109 Fixed crash in phpinfo() after graceful Apache restart. 2004-12-07 18:02:25 +00:00
Dmitry Stogov ca3c82bbb5 Fixed bug #30928 (When Using WSDL, SoapServer doesn't handle private or protected properties) 2004-12-07 17:29:42 +00:00
Antony Dovgal 0582a631fe fix leak 2004-12-07 16:54:25 +00:00
Derick Rethans 8dc461f854 - Tidy up NEWS a bit 2004-12-07 08:46:14 +00:00
Dmitry Stogov 5b18b931d0 Fixed bug #30904 (segfault when recording soapclient into session). 2004-12-07 07:46:12 +00:00
e32da28bd5 ChangeLog update 2004-12-07 01:31:57 +00:00
Ilia Alshanetsky d0cbaa911f Fixed bug #30995 (snmp extension does not build with net-snmp 5.2). 2004-12-07 00:33:24 +00:00
Ilia Alshanetsky 35540fdee6 Added -d option which allows ini options to be specified via command line.
Patch by: Sean Coates
2004-12-06 23:37:20 +00:00
Ilia Alshanetsky 6883a3f09c Fixed bug #30990 (allow popen() on *NIX to accept 'b' flag). 2004-12-06 23:30:37 +00:00
Derick Rethans 48b118968f - MF43: Install the iconv extension headers to <installpath>/ext/iconv so that
external extensions can use them.
2004-12-06 20:39:20 +00:00
Ilia Alshanetsky 2980ab0cdc MFB: revert 2004-12-06 19:46:23 +00:00
Stanislav Malyshev 9baa92c596 fix startup - if startup did not succeed, do not continue with execution 2004-12-06 18:55:30 +00:00
Stanislav Malyshev f9c2324cd0 do not zero out peak - MM shutdown would do that 2004-12-06 18:48:35 +00:00
Stanislav Malyshev 11ae876f34 add test 2004-12-06 16:08:08 +00:00
Stanislav Malyshev 9e9c193e1b port fix for #30998: Crash when user error handler returns false on amd64 2004-12-06 15:50:27 +00:00
Dmitry Stogov 7c83c4e418 Fixed bug #30922 (reflective functions crash PHP when interfaces extend themselves) 2004-12-06 11:53:30 +00:00
Georg Richter f0f08ec32b fixed windows compile errors (Thx to Sebastian Bergmann) 2004-12-06 05:15:03 +00:00
cd39bb55f6 ChangeLog update 2004-12-06 01:35:04 +00:00
Rob Richards cb72e23c14 add optional parameter to pass libxml document load options 2004-12-05 12:02:35 +00:00
Rob Richards 4cea708b21 define options that can be used when loading documents 2004-12-05 11:59:46 +00:00
Holger Zimmermann b36a4c57ca Replaced static server variables by function call and configurable list at the Pi3Web server side. 2004-12-05 09:52:25 +00:00
4026a3ce7e ChangeLog update 2004-12-05 01:32:43 +00:00
Rasmus Lerdorf 3d297bf881 Fix proto 2004-12-04 13:47:13 +00:00
Rob Richards 28076f78ed add test 2004-12-04 11:40:10 +00:00
Rob Richards 25554b8118 Fixed bug #28817 (Var problem when extending domDocument). (Georg) 2004-12-04 11:39:34 +00:00
Georg Richter 6d27573ec2 added skipif section 2004-12-04 08:50:33 +00:00
Georg Richter 9751d9afaa Fixed bug #30890 (testsuite)
Fixed bug #28817 (property problems in extended class)
2004-12-04 08:16:04 +00:00
Rasmus Lerdorf 224d2479b3 Add apache_reset_timeout() function for Apache1. This is needed because
Apache1 only resets the write timer, which defaults to 300 seconds, on
a successful write.  That is, if the client has gone away and Apache
attempts a write which fails it will set the conn->aborted flag but not
reset the timeout.  Assuming the PHP script is running in ignore_user_abort
mode we ignore the aborted flag, but we'll still get blown out of the water
300 seconds after the failed write unless we periodically reset the timer.
With set_time_limit(0), ignore_user_abort(true) and periodic
apache_reset_timeout() calls we can theoretically run forever which is
why I disabled this call in safe mode.
2004-12-04 07:16:44 +00:00
9ff0d0818e ChangeLog update 2004-12-04 01:32:05 +00:00
Antony Dovgal b6b8bf0010 fix array_walk_recursive() so it doesn't reuse cached fci between calls
and add test for it
2004-12-03 17:43:23 +00:00
Stefan Esser 9a18fb197d Handle already existing elements correctly 2004-12-03 16:02:48 +00:00
Georg Richter 30dd61abb7 Fixed bug #30967 (properties in extended mysqli classes don't work) 2004-12-03 07:56:19 +00:00
Ilia Alshanetsky e99526eb7e Fixed bug #30962 (mssql returns space for NULL columns). 2004-12-03 02:26:04 +00:00
2844354634 ChangeLog update 2004-12-03 01:32:51 +00:00
Antony Dovgal ccc6462cc5 revert my previous patch as it breaks more than fixes 2004-12-02 16:35:02 +00:00
Antony Dovgal ed5638bf77 fix tests 2004-12-02 16:33:36 +00:00
ecac37514c ChangeLog update 2004-12-02 01:33:36 +00:00
Stefan Esser 1a319ae1ac Fixed: virtual_popen in ZTS mode 2004-12-02 01:04:23 +00:00
Stefan Esser b08147d46a Partly reverted because of problems with some realpath() implementations 2004-12-02 00:44:07 +00:00
Stefan Esser 6076a4a66c Fixed behaviour of TSRM in case of realpath() failure 2004-12-01 22:56:05 +00:00
Stefan Esser 1094a0d243 Beware of negative indices 2004-12-01 22:42:00 +00:00
Stefan Esser b1bb6f1735 Do not silently truncate 2004-12-01 22:37:33 +00:00
Ilia Alshanetsky 4c5d71917e MFB: Removed extra space that causes problems for some compilers. 2004-12-01 18:52:13 +00:00
Dmitry Stogov a1c85ca6f2 Fixed bug #30329 (Error Fetching http body, No Content-Length, connection closed or chunked data). 2004-12-01 18:22:40 +00:00
Dmitry Stogov 5b074c048d Port 443 is default for https, so we shouldn't put it into Host: 2004-12-01 17:33:32 +00:00
Dmitry Stogov ec4b6f713d Fixed bug #30359 (SOAP client requests have no port in "Host" field ). 2004-12-01 16:59:48 +00:00
Derick Rethans 9c14e2235c - Fixed MacOSX compilation (Patch by Christian) 2004-12-01 15:05:02 +00:00
Dmitry Stogov ec36f7dc69 Fixed bug #29883 (isset gives invalid values on strings). 2004-12-01 14:02:35 +00:00
Derick Rethans 1039fdebb1 - MF43: Update install instructions 2004-12-01 09:15:49 +00:00
Greg Beaver eaad3a9f7b remove old test files 2004-12-01 06:09:06 +00:00
8bc100cdae ChangeLog update 2004-12-01 01:32:00 +00:00
Ilia Alshanetsky 349c134061 Fixed bug #30945 (make ctype_* functions return FALSE on empty strings).
Slight performance improvement of multi-byte string checking via ctype_*.
2004-11-30 16:55:55 +00:00
5f949d21c2 ChangeLog update 2004-11-30 01:33:45 +00:00
Ilia Alshanetsky 46745e31ed This test is conditional on the libTidy library. On some configurations
tidy crashes due to a bug in the lib.
2004-11-30 00:01:30 +00:00
Derick Rethans b6f9b5c693 - Added testcase for bug #30695 2004-11-29 10:15:03 +00:00
Derick Rethans ebca90f075 - MFH: Revert Joe's work around a bug in GCC patch as it breaks too many things. 2004-11-29 09:32:15 +00:00
463204f9b3 ChangeLog update 2004-11-29 01:35:51 +00:00
Ilia Alshanetsky 0e46666591 Save test result file inside the build directory. 2004-11-28 20:40:16 +00:00
Sergey Kartashoff 1907f0ab8b - MnoGoSearch extension updated to fix compilation issues with
mnogosearch-3.2.25+
2004-11-28 20:03:05 +00:00
Antony Dovgal dbc0bb7514 fix #29954 (array_reduce segfaults when initial value is array) 2004-11-28 17:03:45 +00:00
Stefan Esser c02b2d2d45 Fixed: Correctly Initialize fields 2004-11-28 13:32:29 +00:00
Antony Dovgal 9fb623c312 fix #30314 2004-11-28 13:21:09 +00:00
Stefan Esser 6d98fc38b5 Fixed: removed possible integer over-/underflows 2004-11-28 12:44:28 +00:00
e0e157e6de ChangeLog update 2004-11-28 01:35:04 +00:00
Ilia Alshanetsky 9379801c9a Improve offset check inside shmop_write(). 2004-11-27 18:17:58 +00:00
Marcus Boerger c51e49147e BFN 2004-11-27 10:16:13 +00:00
adbca0b92e ChangeLog update 2004-11-27 01:32:02 +00:00
Stanislav Malyshev 808d9b035f 'l' is long - int won't work on 64-bit 2004-11-26 13:17:30 +00:00
2ec1f4d16a ChangeLog update 2004-11-26 01:33:14 +00:00
Ilia Alshanetsky 5796326d5a CS 2004-11-25 23:44:20 +00:00
75ab06e855 ChangeLog update 2004-11-25 01:33:25 +00:00
Ilia Alshanetsky 07db7765a1 Fixed compilation when PHP is built in separate directory. 2004-11-24 23:12:18 +00:00
Marcus Boerger 520097b065 - Fix Bug #30856 (ReflectionClass::getStaticProperties segfaults) 2004-11-24 19:56:54 +00:00
Marcus Boerger 4ab537fc61 - Add new test 2004-11-24 19:56:25 +00:00
98f9906c59 ChangeLog update 2004-11-24 01:33:16 +00:00
Dmitry Stogov 5ece0ecdfb Test was fixed. 2004-11-23 17:21:33 +00:00
Derick Rethans 9b9ae8ee70 - We need to install the headers too. 2004-11-23 13:05:24 +00:00
Edin Kadribasic 6d23aae34e Only dllexport during the compilation of iconv.c 2004-11-23 12:04:07 +00:00
Derick Rethans ce022d2723 - Export "php_iconv_string()". 2004-11-23 09:44:54 +00:00
Derick Rethans a6ded1178e - Added test for bug #28599 2004-11-23 09:40:07 +00:00
3630c4d1e0 ChangeLog update 2004-11-23 01:36:07 +00:00
Ilia Alshanetsky 0e138423d4 Fixed compile warning. 2004-11-22 23:29:59 +00:00
Frank M. Kromann b38b068302 Adding fbsql_set_characterset.
Change PHP_INI_USER to PHP_INI_ALL on fbsql.batchsize
2004-11-22 22:40:21 +00:00
Andi Gutmans 7c3eaef39d - Don't reuse Oracle connections in multi-threaded environments until
- we decide to either not support ZTS connection pooling (kind of
- pointless as PHP isn't stable in ZTS mode) or fix the 100% reproducable
- crash bug on oci_connect() under Windows most probably due to this
- problem.
2004-11-22 21:44:42 +00:00
Derick Rethans a07c080ce8 - Added test case for bug #30862. 2004-11-22 21:41:16 +00:00
Frank M. Kromann 82cd4789a7 Fix #30860 configure fails when tds is compiled as shared 2004-11-22 19:41:43 +00:00
Dmitry Stogov 139933fe59 Test was fixed. 2004-11-22 17:43:03 +00:00
Dmitry Stogov 107da542ae Skip condition was fixed. 2004-11-22 15:15:50 +00:00
Dmitry Stogov c6fad655a0 Tests were fixed. 2004-11-22 15:12:32 +00:00
f7585a2cb3 ChangeLog update 2004-11-22 01:36:34 +00:00
Ilia Alshanetsky 496031df78 emalloc -> safe_emalloc. 2004-11-21 20:43:10 +00:00
Rob Richards a7cd9768d1 internal entities get expanded if no default handler but cdata handler exists 2004-11-21 14:25:15 +00:00
Antony Dovgal 39b25e4f3d fix yet another typo 2004-11-21 13:35:32 +00:00
Antony Dovgal d9dd604ae7 fix typo (bug #30857) 2004-11-21 13:33:20 +00:00
Andi Gutmans 737568997b *** empty log message *** 2004-11-21 06:17:32 +00:00
8a1f6b537a ChangeLog update 2004-11-21 01:36:52 +00:00
Stefan Esser 224201e635 Fixed: strip quotes from filename 2004-11-20 18:49:36 +00:00
Pierre Joye f3b74fe9ac - Attempt to fix #28598, bug introduced in GD (around php 4.3.4)
The way they fix MS Symbol are wrong, multiple faces support hould added
  later, safer.

  Please test it with your weird fonts, if it works, MFH will be done.
2004-11-20 13:09:45 +00:00
Rob Richards 8f32b61acb fix crash when calling com methods
- due to change in Zend
2004-11-20 11:40:49 +00:00
2e1f2f8852 ChangeLog update 2004-11-20 01:36:16 +00:00
Antony Dovgal 2a588879ef fix bug #30587 (array_multisort doesn't separate zvals before changing them) 2004-11-19 16:55:37 +00:00
94f8379545 ChangeLog update 2004-11-19 01:35:44 +00:00
Rob Richards 83a6b8c762 Fixed bug #30061 (xml_set_start_namespace_decl_handler not called)
hopefully resolve a bunch of entity issues
2004-11-18 19:59:23 +00:00
Rob Richards b87d8cdfd0 prototype fixes (Jakub Vrána) 2004-11-18 19:54:30 +00:00
Rob Richards 1e0212ef8e Fixed bug #30832 ("!" stripped off comments in xml parser)
reset sax->initialized flag when not using SAX2
2004-11-18 18:26:13 +00:00
Rob Richards 2496f4f882 fix SAX2 handling to work with libxml 2.6.16 2004-11-18 16:36:00 +00:00
Rob Richards bd8aba8c8d fix typo so it compiles 2004-11-18 16:35:04 +00:00
Antony Dovgal ee31c94bc7 run-test2 should be able to emulate POST & GET in the same time 2004-11-18 14:57:45 +00:00
867517fa5d ChangeLog update 2004-11-18 01:34:33 +00:00
Ilia Alshanetsky 54ff6af758 Gracefully handle allocation failure. 2004-11-17 23:42:14 +00:00
Pierre Joye 32ff83e4da - Really fix imagefill, part of my previous (old) fix was not applied
(blame me), bak the alphablending and restore it on exit
2004-11-17 20:19:35 +00:00
Pierre Joye d9f08cb7ce - MFB: fix #30739, imagefill did not set back alphablending mode 2004-11-17 17:21:22 +00:00
Stanislav Malyshev e9003696bd fix crash 2004-11-17 12:06:27 +00:00
Dmitry Stogov 6bb5705619 namespace was renamed 2004-11-17 06:18:18 +00:00
22519a360a ChangeLog update 2004-11-17 01:37:20 +00:00
Ilia Alshanetsky df4911561b Fixed possible usage of un-initialized variable. 2004-11-16 21:04:10 +00:00
Dmitry Stogov 62ce05fb49 indentation fixed. 2004-11-16 13:51:09 +00:00
Dmitry Stogov 94a372b992 Fixed bug #30799 (SoapServer doesn't handle private or protected properties) 2004-11-16 13:04:39 +00:00
Dmitry Stogov a9a5dbd9b8 Class mapping was implemented (Bug #29385 Soapserver always uses std class). 2004-11-16 12:07:32 +00:00
Derick Rethans ccc7c3b48e - Make this compile for the Mac again 2004-11-16 07:48:25 +00:00
c224f6fba2 ChangeLog update 2004-11-16 01:36:15 +00:00
Frank M. Kromann b1c6c89d97 Fix one-shot builds. 2004-11-15 23:59:22 +00:00
Ilia Alshanetsky d98a44d483 Fixed bug #29801 (Set limit on the size of mmapable data). 2004-11-15 23:43:12 +00:00
Ilia Alshanetsky a04722b1b0 MFB: fixed build. 2004-11-15 23:37:05 +00:00
Edin Kadribasic 372a69fded iconv is built-in in php5 2004-11-15 23:27:48 +00:00
Frank M. Kromann 4893e3c505 Adding most of the changes suggested in #30280. Mostly fix's for possible leaks. 2004-11-15 22:45:29 +00:00
Frank M. Kromann 11363296be Avoid renaming of sprintf to php_sprintf 2004-11-15 21:13:25 +00:00
Frank M. Kromann 816bcd3aff Fix win32 build. 2004-11-15 21:04:09 +00:00
Derick Rethans 4916f58540 - Fixed bug #30779 (Compile of Zend/zend_strtod.c fails on Sparc) 2004-11-15 19:26:45 +00:00
Sergey Kartashoff 0314fa1c3b # Unix EOLs fixed 2004-11-15 19:08:19 +00:00
Sergey Kartashoff 89b2866758 # Copyright header & version info changed to PHP 5 standard notice 2004-11-15 19:03:20 +00:00
Frank M. Kromann e1e29cefc4 Adding php_sprintf.c to Win32 build 2004-11-15 18:27:10 +00:00
Derick Rethans d79407f4fd - MF5.0: Fixed bug #28599 (strtotime fails with zero base time). 2004-11-15 16:31:12 +00:00
Antony Dovgal 71d9afee0c fix CLI leaks when using malformed option string 2004-11-15 14:00:48 +00:00
Derick Rethans 61364b5bb1 - MFH4.3: Cleaned up some of the locale mess:
* all internal use of sprintf, snprintf and the like will always
    use the . as thousands seperator (if php.h is included only!).
  * echo, printf() and sprintf() always render locale-aware
  * added the %F modifier for non-locale aware rendering for floats
2004-11-15 13:42:22 +00:00
48fe8cf7bc ChangeLog update 2004-11-15 01:36:53 +00:00
Ilia Alshanetsky fae64ba40c Added support for better control over FTP encryption protocols. 2004-11-14 20:00:16 +00:00
Sergey Kartashoff 2b80314c3f # Unix EOLs fixed 2004-11-14 19:29:59 +00:00
Sergey Kartashoff acc517cd5c - More mnogosearch-3.2.23+ compatibility 2004-11-14 18:30:40 +00:00
Marcus Boerger 95ff205e6c - Bugix #30783: Apache crash when using ReflectionFunction::getStaticVariables() 2004-11-14 18:01:44 +00:00
Antony Dovgal f85a11f280 fix #30780 (tidy segfaults on 'new tidyNode;') 2004-11-14 13:33:59 +00:00
d29cc93a6f ChangeLog update 2004-11-14 01:36:55 +00:00
Rob Richards db2c5275a1 Fixed bug #30566 (attribute namespace URIs are inconsistent when parsing). 2004-11-13 14:32:44 +00:00
49ac2e74f2 ChangeLog update 2004-11-13 01:51:05 +00:00
Frank M. Kromann a62b69b9c5 fix ZTS builds 2004-11-12 20:32:43 +00:00
Ilia Alshanetsky 613db6ee30 Simplify and cleanup code. 2004-11-12 02:22:01 +00:00
68faef668b ChangeLog update 2004-11-12 01:51:37 +00:00
Marcus Boerger 08cc69dbf4 - Correct exception throwing 2004-11-11 20:06:23 +00:00
Marcus Boerger 4c8bca469f - Use exceptions now they work 2004-11-11 19:42:11 +00:00
Marcus Boerger 9c0f5e8887 - Use appropriate exception class where possible 2004-11-11 19:36:27 +00:00
Marcus Boerger 5dbb0aaa24 - Drop debug message 2004-11-11 19:31:27 +00:00
Rob Richards d563495a24 add support for file://localhost/
support file:/// under windows again
2004-11-11 13:08:32 +00:00
Dmitry Stogov e370219e2a Support for lists in non-WSDL mode was implemented
Support for "xsi:type" was improved
2004-11-11 09:17:10 +00:00
Antony Dovgal d33eb14569 fix #30751 (phpinfo() shows the same ini path after reconfigure with --with-config-file-path) 2004-11-11 06:57:06 +00:00
57e0902c59 ChangeLog update 2004-11-11 01:55:43 +00:00
Ilia Alshanetsky f41c40f63e Fixed bug #30750 (Meaningful error message when upload directory is not
accessible).
2004-11-11 00:38:04 +00:00
Frank M. Kromann fb543df1a8 No need to ude /Fo twice.
Unbreak the build be readding the compile only flag
2004-11-10 23:52:56 +00:00
Frank M. Kromann d589e61204 Make sure files are stored in the right directory 2004-11-10 20:12:42 +00:00
Wez Furlong be4778b87e Fix leaking handle.
Thanks to ilya77 at gmail dot com
2004-11-10 19:47:15 +00:00
Marcus Boerger a59551d771 - Add new tests 2004-11-10 19:22:26 +00:00
Ard Biesheuvel bb5ce07f8c Fixed return value of ibase_execute() 2004-11-10 11:21:50 +00:00
e52d178674 ChangeLog update 2004-11-10 01:49:49 +00:00
Ilia Alshanetsky 8992aa0bcf Fixed possible overflow. 2004-11-10 01:43:04 +00:00
Andrei Zmievski 44468214b5 Revert inadvertent commit. 2004-11-09 20:59:02 +00:00
Andrei Zmievski c2f8c1a79b .dylib extension are Mach-O shared libraries that meant for linking
against. Loadable modules (aka bundles) can have any extension, so we
should probably stick with .so

http://fink.sourceforge.net/doc/porting/shared.php?phpLang=en#lib-and-mod
2004-11-09 20:58:24 +00:00
Joe Orton 20f63ecb7a Fix --with-recode since PHP_YAZ is never defined. 2004-11-09 16:11:13 +00:00
Joe Orton 0f858fc744 Make the "rounding fuzz" check work again with gcc 3.3 and later,
fixing the bug24142 test.
2004-11-09 15:58:16 +00:00
Frank M. Kromann 1d04952b1d Fix typo in man page. Bug #30727. Patch by Jakub Vrana 2004-11-09 15:05:20 +00:00
Dmitry Stogov 9c5661f05d Fixed bug #29211 (SoapClient doesn't request wsdl through proxy). (Rob) 2004-11-09 08:13:35 +00:00
d61a7f1207 ChangeLog update 2004-11-09 01:47:08 +00:00
Ilia Alshanetsky 500690f235 Fixed crash inside cpdf_setdash() if called before page init. 2004-11-09 00:44:12 +00:00
Marcus Boerger 31165806f8 - Simplify construction of RecursiveIteratorIterator 2004-11-08 13:44:34 +00:00
Marcus Boerger 118d5a7d5b - Fix constructors
- This fixes exceptions in spl
2004-11-08 13:42:53 +00:00
Ilia Alshanetsky cb16f5e815 Fixed possible crash on fstat() failure. 2004-11-08 04:54:27 +00:00
890afc455c ChangeLog update 2004-11-06 01:51:41 +00:00
808243230b ChangeLog update 2004-11-05 01:36:27 +00:00
Ilia Alshanetsky 92a641e5e7 Simplify and cleanup code. 2004-11-05 00:05:55 +00:00
Marcus Boerger 4b76d82fe3 - Add new test 2004-11-04 22:07:18 +00:00
Marcus Boerger 28ced40c63 Bug #30627 2004-11-04 20:13:30 +00:00
Dmitry Stogov 75c2a2e527 Fixed bug #30685 (Malformed SOAPClient http header reequest). 2004-11-04 15:30:28 +00:00
Edin Kadribasic d2b5b62af5 MySQL is releasing client libraries that compile out of the box
with mysqli extension, so there is no need for a specially compiled
client library anymore.
2004-11-04 02:41:40 +00:00
Edin Kadribasic 34e4dae95c Added zend_strtod.c to the new build 2004-11-04 02:06:04 +00:00
Edin Kadribasic 9c754364a6 Added zend_strtod.* to the build 2004-11-04 02:05:36 +00:00
Edin Kadribasic 5675c50dc2 Make zend_strtod compile on windows 2004-11-04 02:04:39 +00:00
adfebe8c6f ChangeLog update 2004-11-04 01:32:26 +00:00
Moriyoshi Koizumi 47dec40bd5 - Add entry for zend_strtod.c in belief that this is still active. 2004-11-04 00:13:08 +00:00
Derick Rethans 59651c4e58 - Fixed bug #30630: Added a BSD based strtod function that is
locale-independent. (PHP part)
2004-11-03 23:36:51 +00:00
Moriyoshi Koizumi dbf2c8abd5 - Don't show grep outputs 2004-11-03 23:25:33 +00:00
Derick Rethans e612284ea4 - Fixed bug #30630: Added a BSD based strtod function that is
locale-independent.
2004-11-03 23:13:32 +00:00
Moriyoshi Koizumi ae78d7d4bf - Checks for Darwin'ish systems that uses Mach-O, which apparently doesn't
support weak symbol aliasing at this time.
2004-11-03 23:05:18 +00:00
Ilia Alshanetsky 9a9815a123 emalloc() failures are handled by zend engine. 2004-11-03 22:17:45 +00:00
Marcus Boerger fcbd8c4f99 - Trying to invoke function not methot here 2004-11-03 21:18:44 +00:00
Marcus Boerger 63b288c464 - Fix invokeargs() with static methods 2004-11-03 21:11:48 +00:00
Joe Orton 2685ca935f Update extensions to use /path/to/$PHP_LIBDIR rather than /path/to/lib
to support multi-ABI platforms.
2004-11-03 14:32:52 +00:00
Joe Orton 557cda47a0 Core changes to support multi-ABI platforms with libraries in
/usr/lib64 rather than /usr/lib.

* configure.in: Add --with-libdir flag; define PHP_LIBDIR.

* acinclude.m4 (PHP_REMOVE_USR_LIB, PHP_RUNPATH_SWITCH,
PHP_ADD_LIBPATH): Check for /usr/$PHP_LIBDIR rather than /usr/lib.
(PHP_SETUP_OPENSSL, PHP_SETUP_ICONV): Use /path/to/$PHP_LIBDIR in
place of /path/to/lib.
2004-11-03 14:07:09 +00:00
Joe Orton ee39ec7d0a Remove unused variable. 2004-11-03 13:12:41 +00:00
Joe Orton 2469701b87 Fix extraction of httpd version if httpd is linked against -lefence. 2004-11-03 13:04:10 +00:00
Dmitry Stogov 9fb0e11de5 Fixed "isset() and the new VM" bug. 2004-11-03 07:11:49 +00:00
Antony Dovgal b5c1040240 fix build 2004-11-03 06:22:08 +00:00
e16f0c6996 ChangeLog update 2004-11-03 01:38:35 +00:00
Frank M. Kromann 6a15a50d35 oops missed a couple!
Add termination block to function table. This will allow the engine to stop registreting functions at the end.
This fixes the - duplicate name - warning
2004-11-03 01:20:16 +00:00
Frank M. Kromann 93da44811e Add termination block to function table. This will allow the engine to stop registreting functions at the end.
This fixes the - duplicate name - warning
2004-11-03 01:16:10 +00:00
Andrey Hristov 494d665955 make sleep() return it's return value when possible
#on some *nix systems sleep() is implemented with SIGALRM. When SIGALRM
#interrupts sleep() it returns the number of seconds that has to be slept
#till the number of seconds wanted by the script. Sleep() on Windows is
# void.
2004-11-02 17:03:20 +00:00
Ilia Alshanetsky 8091bfb84c MFB: Fixed bug #30658 (Ensure that temporary files created by GD are removed). 2004-11-02 16:41:41 +00:00
Sebastian Bergmann 9a92e31cdd Patch by Joe Orton <jorton@redhat.com>. 2004-11-02 13:10:37 +00:00
4a3f24e0e0 ChangeLog update 2004-11-02 01:50:23 +00:00
Ilia Alshanetsky 5f9d72c431 Fixed open_basedir & safe_mode bypass inside readlink() function. 2004-11-02 00:37:32 +00:00
Marcus Boerger e1dfbfc695 - Don't call beginChildren/endChildren if they don't do anything 2004-11-01 23:16:43 +00:00
Marcus Boerger 533e39ecf7 - Cache function lookup 2004-11-01 23:02:10 +00:00
Marcus Boerger 3b7e24cab2 - Add RecursiveIteratorIterator::beginChildren(), endChildren() 2004-11-01 22:54:12 +00:00
Marcus Boerger 36a9455a48 - Update examples 2004-11-01 22:31:11 +00:00
Marcus Boerger c18e248e60 - Remove doubled definition 2004-11-01 22:28:59 +00:00
Marcus Boerger b0c2af58f7 - Add some comment 2004-11-01 21:06:42 +00:00
Marcus Boerger 2ce7bcd742 - Allow direct access to spl class entries (SPL cannot be build shared) 2004-11-01 20:57:23 +00:00
Marcus Boerger 4dbf6a530d - Update docu 2004-11-01 18:11:39 +00:00
Marcus Boerger 07ed0872fb - Update docu 2004-11-01 18:01:06 +00:00
Marcus Boerger bd40510b62 - Two new exceptions
- Make use of new exception classes
2004-11-01 17:39:59 +00:00
Marcus Boerger 623f564abc - Fix macro usage 2004-11-01 17:26:15 +00:00
Marcus Boerger cae8eeba8d - Update docu 2004-11-01 17:05:45 +00:00
Marcus Boerger 638b0515b3 - Update docu 2004-11-01 16:31:19 +00:00
Marcus Boerger fe1909b591 - Implement basic exception classes 2004-11-01 15:50:25 +00:00
Marcus Boerger db47e478c5 - Use new way for global variables
- Cache class lookup
2004-11-01 12:09:46 +00:00
Marcus Boerger 8e3a8b1e8e - Add interface Countable (PECL #30113) 2004-11-01 10:45:54 +00:00
Georg Richter b557bdb665 added multi resultset support in mysql_connect 2004-11-01 09:53:16 +00:00
Georg Richter b8863135a2 Fixed tests for empty dates (see http://bugs.mysql.com/?id=6058)
Fixed memleak in mysqli_stmt_bind_result
Fixed error handling for mysqli_multi_query
2004-11-01 07:19:26 +00:00
Ilia Alshanetsky 5b95dc5faf MFB: Fixed bug #30613 (Prevent infinite recursion in url redirection). 2004-11-01 04:55:01 +00:00
8ee7205c78 ChangeLog update 2004-11-01 01:55:54 +00:00
Marcus Boerger e0196d11a4 - Do not autoload if require does the trick 2004-11-01 01:29:06 +00:00
Marcus Boerger 846666109b - Update 2004-11-01 00:33:41 +00:00
Marcus Boerger b9470609ad - Minor fixes
- Implement AppendIterator in C
2004-11-01 00:26:59 +00:00
Marcus Boerger 9626e9859a - Implement EmptyIterator in C 2004-10-31 20:59:39 +00:00
Marcus Boerger b87f16bfbe - Update docu 2004-10-31 19:51:34 +00:00
Marcus Boerger de3a8ea3e1 - Implement InfiniteIterator in C 2004-10-31 19:49:18 +00:00
Marcus Boerger 081dac3026 - Update docu 2004-10-31 19:05:37 +00:00
Marcus Boerger a872cb0d8d - Aggregate inner iterator for RecursiveIteratorIterator 2004-10-31 19:05:19 +00:00
Marcus Boerger 90012aa3cc - Implement classes IteratorIterator and NoRewindIterator in C 2004-10-31 18:43:00 +00:00
Marcus Boerger 6166a4a49d - Update 2004-10-31 15:36:08 +00:00
Marcus Boerger 41b87ab486 - Add ReflectionFunction::invokeArgs(array)
- Add ReflectionMethod::invokeArgs(obj, array)
2004-10-31 15:30:53 +00:00
Sebastian Bergmann e1a941b486 Invokation -> Invocation 2004-10-31 10:19:53 +00:00
d64c25ce2e ChangeLog update 2004-10-31 00:52:50 +00:00
Marcus Boerger 4b10a2562a Bump version (as discussed with Andi) 2004-10-30 22:56:59 +00:00
Marcus Boerger 9d7cba9db0 - Be consistent and use names as keys (found by johannes) 2004-10-30 19:53:25 +00:00
Marcus Boerger 260fb777e2 - Bump API version 2004-10-30 19:27:42 +00:00
Marcus Boerger 0e6d7d652e - Update to new API 2004-10-30 19:14:05 +00:00
Marcus Boerger 861bad634a - Fix inner iterator aggregation 2004-10-30 19:12:14 +00:00
Marcus Boerger c5a9a5a284 - Change zend_object_handlers->get_method() to allow aggregation for internal classes 2004-10-30 19:11:37 +00:00
Marcus Boerger 9dcce367e0 WS (ups) 2004-10-30 14:34:43 +00:00
Marcus Boerger e2ba10a727 strip trailing (back)slash from path 2004-10-30 14:33:25 +00:00
Marcus Boerger 4fd5931e70 - New architecture needs one more dependency 2004-10-30 13:48:29 +00:00
Marcus Boerger 8bf02ee681 - Fix protos 2004-10-30 10:18:10 +00:00
Marcus Boerger 7c4760d421 - Fix proto 2004-10-30 10:04:37 +00:00
5a54f79283 ChangeLog update 2004-10-30 00:46:12 +00:00
Marcus Boerger b67ca452c3 - Update docu 2004-10-29 20:58:58 +00:00
Marcus Boerger 208a97a221 - Implement OuterIterator in C 2004-10-29 20:12:57 +00:00
Marcus Boerger 85cae78988 - Abstract no longer valid here 2004-10-29 19:50:51 +00:00
Andi Gutmans b86cdbbddb - For Ilia:
- MFH: Fixed bug #30572 (crash when comparing SimpleXML attribute to a boolean).
- Hope this works well. I will MFH tomorrow if no one complains.
2004-10-29 00:55:11 +00:00
11e64bafbc ChangeLog update 2004-10-29 00:48:12 +00:00
Andi Gutmans 939a0f136e - [PATCH] Bug fix for #29770, but for PHP 4.3.9 (Vladimir Zidar) 2004-10-29 00:37:22 +00:00
Ilia Alshanetsky 321cd10977 Simplify code. 2004-10-28 22:22:22 +00:00
Marcus Boerger dbd717591a - TSRM Fix 2004-10-28 07:47:46 +00:00
Dmitry Stogov 64baaf8f7f --without-lines changed to --with-lines 2004-10-28 06:48:59 +00:00
Antony Dovgal aa35b11afe fix Win32 & Netware build 2004-10-28 05:05:20 +00:00
Andi Gutmans 72558f2673 - Fix typo 2004-10-28 01:19:33 +00:00
4d5fd77412 ChangeLog update 2004-10-28 00:35:35 +00:00
Ilia Alshanetsky 23344ea427 Simplify and cleanup code. 2004-10-27 23:12:05 +00:00
Andi Gutmans 657e5d0fbc - Oops missed this one 2004-10-27 20:13:59 +00:00
Andi Gutmans a4dff681c8 - Revert Fixed bug #30228 (crash when comparing SimpleXML attribute to a boolean).
- Need to discuss where the real problem is.
2004-10-27 18:15:03 +00:00
Andi Gutmans 47a4a96d23 - Tiny fixes 2004-10-27 18:08:56 +00:00
Andi Gutmans a904c1dabc - Improve comments, docs, code... 2004-10-27 17:58:46 +00:00
Antony Dovgal ceacc834fb fix bug #30388 (rename across filesystems loses ownership and permission info) 2004-10-27 11:58:49 +00:00
Wez Furlong c8cc96e6fe Fix possible crash; patch by Kamesh Jayachandran 2004-10-27 11:07:26 +00:00
Wez Furlong 35b00ffdab Synopsis:
PDOStatement::setFetchMode()
	reset default fetch() mode for a statement to PDO_FETCH_BOTH

PDOStatement::setFetchMode(PDO_FETCH_NUM)
PDOStatement::setFetchMode(PDO_FETCH_ASSOC)
PDOStatement::setFetchMode(PDO_FETCH_BOTH)
PDOStatement::setFetchMode(PDO_FETCH_OBJ)
	set default fetch() mode for a statement.

PDOStatement::setFetchMode(PDO_FETCH_COLUMN, int colno)
	set default fetch() mode to retrieve colno-th column on each fetch() call.

PDOStatement::setFetchMode(PDO_FETCH_CLASS, string classname [, array ctor args])
	set default fetch() mode to create an instance of classname,
	calling it's ctor, passing the optional ctor args.
	The names of the columns in the result set will be used as property names on
	the object instance.  PPP rules apply.

	[NOTE: calling ctor is not yet implemented]
	[TODO: this might crash PHP for persistent PDO handles]

PDOStatement::setFetchMode(PDO_FETCH_INTO, object obj)
	Similar to PDO_FETCH_CLASS, except that each iteration will update the
	supplied object properties.

	[TODO: this might crash PHP for persistent PDO handles]

The default fetch() mode is used when no parameters are passed to
PDOStatement::fetch().  When using a statement in an iterator context,
PDOStatement::fetch() is called implicitly on each iteration.

object PDO::queryAndIterate(string sql, <PDOStatement::setFetchMode args>)
	This is semantically equivalent to:

	$stmt = $pdo->prepare($sql);
	$stmt->execute();
	$stmt->setFetchMode($args);
	return $stmt;


Example/Intended usage:

/* fetch an array with numeric and string keys */
foreach ($pdo->queryAndIterate("select NAME, VALUE from test") as $row) {
	debug_zval_dump($row);
}

/* fetch the value of column 1 into $row on each iteration */
foreach ($pdo->queryAndIterate("select NAME, VALUE from test",
		PDO_FETCH_COLUMN, 1) as $row) {
	debug_zval_dump($row); // string(3) "foo"
}

/* create a new instance of class Foo on each iteration */
foreach ($pdo->queryAndIterate("select NAME, VALUE from test",
		PDO_FETCH_CLASS, 'Foo') as $row) {
	debug_zval_dump($row);
/*
	Object(Foo)#4 (2) refcount(2){
		["NAME"]=>
  		string(12) "foo220051429" refcount(2)
		["VALUE"]=>
		string(12) "bar789825748" refcount(2)
	}
*/
}

etc.
2004-10-27 10:26:27 +00:00
dc8078b191 ChangeLog update 2004-10-27 00:36:13 +00:00
Andi Gutmans 6a16f3eb1d - Patch from Andrey Hristov:
I have cooked a small patch which allows is_subclass_of() the accept
not only an object as first parameter but a string as well. When string
is passed the function checks whether the class specified is subclass of
the second parameter
class a{}
class b{} extends a{}
is_subclass_of("a", "a") //false
is_subclass_of("b", "a") //true
currently only objects are allowed as first parameter
2004-10-26 23:25:05 +00:00
Ilia Alshanetsky bb928e70a7 Fixed bug #30228 (crash when comparing SimpleXML attribute to a boolean). 2004-10-26 22:38:34 +00:00
Wez Furlong 12a678ca6a *cough* de-bogusify driver registration.
(what was I smoking??)
2004-10-26 22:00:15 +00:00
Wez Furlong 0a4127a610 Fix for Bug #29418 (double free when openssl_csr_new fails).
Also hook up MSHUTDOWN function which appears to have never been enabled.

Patch by Kamesh Jayachandran
2004-10-26 09:24:07 +00:00
506c2e2e5b ChangeLog update 2004-10-26 00:48:48 +00:00
Ilia Alshanetsky 852170d740 Merge gettimeofday() based code to prevent duplication. 2004-10-25 13:28:56 +00:00
bbebe4bc3f ChangeLog update 2004-10-25 00:36:45 +00:00
Ilia Alshanetsky 0802b1286d Make request start time be available via $_SERVER['REQUEST_TIME'].
# As discussed on internals.
2004-10-24 17:41:13 +00:00
aeac86458c ChangeLog update 2004-10-24 00:36:26 +00:00
Hartmut Holzgraefe 7fc2e6ca5b Make ldap_parse_reference() available on Windows (Bug #29492) 2004-10-23 23:03:52 +00:00
Joe Orton 1f364c1ee1 - always convert apr_time_t to time_t using apr_time_sec() to be future-proof.
- print apr_time_t values using APR_TIME_T and apr_snprintf.
- remove redundant add_property_long calls.
2004-10-23 13:48:05 +00:00
Joe Orton 516a19f1ec Fix the get_request_time implementation for the 2.0 SAPIs to return
seconds not microseconds and to use TSRM stuff correctly.
2004-10-23 12:56:20 +00:00
Antony Dovgal 07f84de680 commit fixes by <mikael dot suvi at trigger dot ee>
(segfaults under heavy load)
2004-10-23 09:32:44 +00:00
Andi Gutmans f4be622502 - Add missing file 2004-10-23 07:30:18 +00:00
4727b2dd11 ChangeLog update 2004-10-23 00:35:20 +00:00
Andi Gutmans e86edc5f1b - Nuke another two files 2004-10-22 22:01:34 +00:00
Andi Gutmans e50a6fde11 - Commit new VM
- Old one is tagged as PRE_NEW_VM_GEN_PATCH
- Still doing work so more commits to come. Don't complain (yet) :)
2004-10-22 21:42:14 +00:00
Rob Richards b20d2ba86c fix windows build 2004-10-22 13:11:33 +00:00
Edin Kadribasic 1fc379a76c Revert Linux LFS patch 2004-10-22 10:46:42 +00:00
Andi Gutmans fd92acac4f - Fix crash (MFB PHP5_0) 2004-10-22 01:55:39 +00:00
7889c7b97e ChangeLog update 2004-10-22 00:35:53 +00:00
Edin Kadribasic 7f7ce47553 MFB: Linux LFS support, fixes 27792 2004-10-21 23:50:28 +00:00
Ilia Alshanetsky 4b947b0525 Allow gettimeofday() return a float if optional argument is specified. 2004-10-21 21:20:52 +00:00
54aa881075 ChangeLog update 2004-10-21 00:37:45 +00:00
Andi Gutmans 086e951387 - Fix test 2004-10-20 22:55:57 +00:00
Ilia Alshanetsky 0818faee7f Slight optimization in str_split() when split length is the same or greater
then the string length.
2004-10-20 22:44:43 +00:00
Andi Gutmans 14fac3dd02 - One more test fix 2004-10-20 22:36:32 +00:00
Andi Gutmans 14e547516c - Fix interface tests. Interfaces should not use access modifiers 2004-10-20 22:13:44 +00:00
Andi Gutmans abd42847b1 - If object handles are equal then save the comparison of properties in
- the == operator.
2004-10-20 17:57:28 +00:00
Stanislav Malyshev f799da0a21 MF4: fix double bailout in HEAD when output is attempted from shutdown 2004-10-20 15:31:06 +00:00
Joe Orton 1ef6c7add1 Fix case where php_handle_aborted_connection was called outside a
try/end_try block (#25570).
2004-10-20 09:28:47 +00:00
ed6025327c ChangeLog update 2004-10-20 00:37:11 +00:00
Ilia Alshanetsky c5e2e02b0a Simplify code. 2004-10-19 22:25:15 +00:00
Anantha Kesari H Y 2559c94740 As NetWare LibC don't have the implementation of chown and chgrp there is no point in exposing this function to PHP 2004-10-19 08:21:24 +00:00
Georg Richter f4f84ac9ab Minor fix for mysqli_connect: checking socket_len for NULL Values
(Thx to Paul DuBois)
2004-10-19 05:14:09 +00:00
d2f6707429 ChangeLog update 2004-10-19 00:36:32 +00:00
Ilia Alshanetsky 8c8fba0841 Fixed bug #30475 (curl_getinfo() may crash in some situations). 2004-10-18 22:41:24 +00:00
Antony Dovgal e865bc2bc5 fix bug #30442 ( segmentation fault when parsing ?getvariable[][ ) 2004-10-18 15:05:06 +00:00
Anantha Kesari H Y d608f1a0e0 including zend_compile.h for NetWare as NetWare uses MetroWerks Code warrior compiler which does not allow declarations of following kind before defining the types.
extern struct _zend_arg_info first_arg_force_ref[2];
2004-10-18 12:06:57 +00:00
Anantha Kesari H Y 5bf2be3461 removing inclusion of platform specific config files as they are already included from php_scandir.h 2004-10-18 10:42:16 +00:00
Anantha Kesari H Y 6021286c5d removing php_output_activate Fix for bug#30397 2004-10-18 10:26:45 +00:00
Derick Rethans 3b2879b3c1 - Revert patch until it is discussed 2004-10-18 06:04:02 +00:00
c94cc82ebb ChangeLog update 2004-10-18 00:36:09 +00:00
5573922f0f ChangeLog update 2004-10-17 00:35:52 +00:00
Andi Gutmans f2c7379ca7 - One more test (WS) 2004-10-16 23:17:58 +00:00
Andi Gutmans 30ff6d2836 - WS fix to test commit 2004-10-16 23:16:50 +00:00
Anantha Kesari H Y d5eb399b5e Fix for Bug #30397 2004-10-16 10:32:42 +00:00
Anantha Kesari H Y c3dbe168fb Fix for 30457 2004-10-16 09:28:45 +00:00
82dfe6f07e ChangeLog update 2004-10-15 00:36:38 +00:00
Ilia Alshanetsky 7d18ca4c93 Added sqlite_fetch_column_types() 3rd argument for arrays. 2004-10-14 23:19:38 +00:00
Marcus Boerger b52ab41ca7 - Allow to omit object/classname in get_parent_class() which makes it
compatible with the signature and behavior of get_class()
2004-10-14 07:26:04 +00:00
d06579e714 ChangeLog update 2004-10-14 00:49:13 +00:00
Ilia Alshanetsky 51ffc01776 Added optional offset parameter to file_get_contents(). 2004-10-13 23:26:29 +00:00
Andi Gutmans 3e382a7d06 - Don't allow access modifiers in interfaces. Explicitly stating public
- should also be disallowed but we don't have a way to detect it today.
2004-10-13 01:04:08 +00:00
cce41cb736 ChangeLog update 2004-10-13 00:37:00 +00:00
Ilia Alshanetsky 2390ca71f1 MFH: Added optional offset parameter to stream_get_contents(). 2004-10-12 23:25:24 +00:00
Marcus Boerger 0c40e2a06e Bug #30381 Strange results with get_class_vars() 2004-10-12 22:19:43 +00:00
Marcus Boerger a4c387508e - Fix visibility in get_class_vars() and get_class_methods()
# Still there is a problem/error in the executor, i'll have a look
2004-10-12 11:01:08 +00:00
Marcus Boerger 0f9b3de234 - Fix set_exception_handler
# unsettign with '' never worked so we use NULL now which is much better
# because it matches the the return NULL in case no handler was defined
# and can't lead to problems with wrong string operations.
2004-10-12 09:13:20 +00:00
04f75f2357 ChangeLog update 2004-10-12 00:35:59 +00:00
Ilia Alshanetsky 5c04e39383 Fixed bug #30362 (stream_get_line() not handling end string correctly). 2004-10-11 18:31:49 +00:00
Ilia Alshanetsky f8a4d8a4d5 Fixed bug #30375 (cal_info() does not work without a parameter). 2004-10-11 06:39:41 +00:00
Wez Furlong b7182e85c7 Fix the return value check too 2004-10-11 01:40:41 +00:00
Wez Furlong 7cb4e769ff check the correct flag for async connect 2004-10-11 01:30:19 +00:00
7f9f359105 ChangeLog update 2004-10-11 00:36:26 +00:00
Sebastian Bergmann 53fa8699fc Add *.gcda and *.gcno (from gcc -fprofile-{use|generate}) to .cvsignore. 2004-10-10 16:10:38 +00:00
Antony Dovgal 3a5822585e fix possible segfault 2004-10-10 15:04:21 +00:00
Antony Dovgal b0b4b6eff2 prevent deadlocks when re-using previously established persistent connection 2004-10-10 10:54:26 +00:00
f26d0f234f ChangeLog update 2004-10-10 00:39:53 +00:00
Wez Furlong 9bffcfb407 Fix crash bug.
# how the f*** did this work in the first place!?
2004-10-09 13:08:16 +00:00
Moriyoshi Koizumi a86095fe07 - Fix test. I have no idea why the test was left this way. 2004-10-09 08:16:29 +00:00
Wez Furlong b3d9c5bea6 Improve .Net support; this should reduce "failed to init .net" errors.
Improve error reporting while we're at it too.
2004-10-09 04:39:58 +00:00
e38fe93975 ChangeLog update 2004-10-09 00:36:00 +00:00
Marcus Boerger 2ffbbb1588 Revert for now 2004-10-08 22:19:03 +00:00
Marcus Boerger f71644b480 - Revert automatic pass arg_info
# We need to find a better solutions to prevent havy extension writer probs
2004-10-08 22:17:32 +00:00
Marcus Boerger 1546a578ec - Make RecursiveFilterIterator work by using reflection
- Add docu
- Add new example
2004-10-08 21:49:39 +00:00
Marcus Boerger 1a7051f913 Add new example 2004-10-08 21:17:53 +00:00
Marcus Boerger 5832635b68 Use OuterIterator to simplify conversion to C code 2004-10-08 21:12:15 +00:00
Marcus Boerger f0c9f998d3 speling 2004-10-08 19:02:00 +00:00
Andi Gutmans f9aef18c86 - Fix BC break with default in switch() having to be at the end. 2004-10-08 18:50:00 +00:00
Rob Richards 1aa7fda66b Fix bug #2482 (xmlwriter_start_document chrashes apache)
Fix other function parameters
prep for release
2004-10-08 14:54:15 +00:00
Christian Stocker c118443546 this NEWS entry should have gone into PHP_5_0 branch. sorry 2004-10-08 14:51:55 +00:00
Moriyoshi Koizumi 4f247de89b - Sync with the latest codebase (fixes bug #28220). 2004-10-08 14:40:46 +00:00
Christian Stocker bd99d77bf6 - Fixed bug #27183 (Userland stream wrapper segfaults on stream_write)
Was applied to PHP 4 ages ago, but not to PHP 5 branch
2004-10-08 14:40:11 +00:00
Moriyoshi Koizumi 756ee85bec - Avoid doubly symbol definition. Codes in the removed file has never been
used anywhere.
2004-10-08 14:24:06 +00:00
Anantha Kesari H Y 315e58f2f6 As NetWare LibC has optind and optarg macros defined in unistd.h our local variables were getting mistakenly preprocessed so undeffing optind and optarg 2004-10-08 12:22:35 +00:00
Anantha Kesari H Y b140c80396 removed redundant CLIB_STAT_PATCH checks. defined the IS_ABSOLUTE_PATH macros to suit the NetWare filesystem convention 2004-10-08 09:48:20 +00:00
Anantha Kesari H Y a980f7babe removed redundant NEW_LIBC checks and added the code to recognize the file naming convention in NetWare(supports Windows based drive names like sys: data: and unix like / (sys: being root) 2004-10-08 08:59:11 +00:00
Anantha Kesari H Y 7ab517bcbf explicitly including sys/select.h as NetWare LibC sys/types.h does not include sys/select.h implicitly as other LibC 2004-10-08 07:43:41 +00:00
df06803187 ChangeLog update 2004-10-08 00:36:09 +00:00
Ilia Alshanetsky 2476198086 Fixed bug #30356 (str_ireplace() does not work on all strings). 2004-10-07 23:10:35 +00:00
Marcus Boerger 6349f46e38 - Added iterator_to_array() and iterator_count() 2004-10-07 23:08:19 +00:00
Anantha Kesari H Y 940c5b393d removed unwanted NEW_LIBC checks for NETWARE and removing custom mktemp.h as LibC itself supports mkstemp functionality 2004-10-07 12:22:16 +00:00
Rob Richards 7dced12c32 add DOMDocument xmlEncoding, xmlStandalone, xmlVersion (spec name changes)
add DOMText isElementContentWhitespace (spec name change)
 - old props/method kept for BC.
 - spec names changed when Level 3 went from Draft to Recommendation
nuke some unused code
2004-10-07 11:40:20 +00:00
Rob Richards b0ffa2497b fix segfault in appendXML due to libxml bug 2004-10-07 10:00:39 +00:00
d8cd7e848d ChangeLog update 2004-10-07 00:49:15 +00:00
Ilia Alshanetsky 1594170f85 Fixed compiler warning. 2004-10-06 23:56:29 +00:00
Marcus Boerger ee40e4dc90 Style... 2004-10-06 21:31:00 +00:00
Marcus Boerger ca6558a406 - Fix Bug #30344 2004-10-06 21:23:18 +00:00
Anantha Kesari H Y 1d7a8a9e69 removed unwanted NEW_LIBC checks 2004-10-06 13:22:21 +00:00
f63340acba ChangeLog update 2004-10-06 00:35:43 +00:00
Andi Gutmans a952a1bf76 - If we're going to mention the low level stuff then also give credit
- to Thies and Sterling
2004-10-06 00:01:38 +00:00
Ilia Alshanetsky e35adfe522 Fixed bug #30027 (Possible crash inside ftp_get()).
# Patch by cfield at affinitysolutions dot com
2004-10-05 23:53:09 +00:00
Marcus Boerger d9ad917fe7 Add more improvements done so far 2004-10-05 18:58:26 +00:00
Marcus Boerger 0358d81ecf Update 2004-10-05 18:40:06 +00:00
Marcus Boerger 476013cebd - Use ZEND_ARG_SEND_AUTOMATIC for several array functions 2004-10-05 18:37:17 +00:00
Marcus Boerger f916d603ef - Add arginfo ZEND_ARG_SEND_AUTOMATIC which lets the compiler automatically
determine whether pass by ref is possible or pass by value is needed.
# This is usefull when functions take array or string parameters as
# expressions. In such a case force by ref is not applicable and the
# executor would copy the variable unnecessarily as soon as it is at least
# once referenced.
2004-10-05 18:36:46 +00:00
Dmitry Stogov fb6072e10d Fixed bug #30175 (SOAP results aren't parsed correctly) 2004-10-05 16:00:40 +00:00
Dmitry Stogov 6414c8606a Test files are fixed. 2004-10-05 13:29:43 +00:00
Dmitry Stogov 0f99c02070 Test files are fixed. 2004-10-05 13:21:06 +00:00
Dmitry Stogov 3d383e45dc Fixed unset() bug that was introduced with CV optimization patch 2004-10-05 09:09:18 +00:00
Dmitry Stogov 3f35c6a6cc Added test cases for CV optimization patch 2004-10-05 06:53:39 +00:00
Andi Gutmans 216853c0db - Apply realpath() cache patch. We don't use it if we're in safe_mode and
- friends (which are quite slow anyway).
- If it proves to be stable I'll remove the #ifdef's in a few weeks.
2004-10-05 00:42:25 +00:00
01fda447c5 ChangeLog update 2004-10-05 00:35:08 +00:00
Ilia Alshanetsky 5316f7bf25 Fixed bug #30281 (Prevent non-wbmp images from being detected as such). 2004-10-04 20:42:30 +00:00
Andi Gutmans 11bcaedfc8 - Rename delete_global_variable() to zend_delete_global_variable() 2004-10-04 20:17:06 +00:00
Andi Gutmans db507dd153 - Commit the variable fetch optimization.
- Extensions which delete global variables need to use new special function
- delete_global_variable() (I'm about to rename it) to remove them.
- Will post to internals@ or via commit messages if there's anything else.
2004-10-04 19:54:35 +00:00
Marcus Boerger bb77132391 - Add new test 2004-10-04 17:53:55 +00:00
Marcus Boerger dc2d342b24 - Add new test 2004-10-04 17:30:53 +00:00
Marcus Boerger 4b395a168b - Bugfix #27798 2004-10-04 08:59:29 +00:00
Marcus Boerger 3d29cd72d5 - Add new test 2004-10-04 08:58:47 +00:00
Anantha Kesari H Y 47e4f575c2 modified to 3rd argument of fcntl to FD_CLOEXEC 2004-10-04 08:52:53 +00:00
6eafaed7e8 ChangeLog update 2004-10-04 00:34:36 +00:00
Rob Richards 5f630e1935 add evaluate() method to support all xpath expressions 2004-10-03 09:55:29 +00:00
d4c7c87afb ChangeLog update 2004-10-03 00:35:29 +00:00
Marcus Boerger 1e3aa55b1e - Add new test 2004-10-02 14:22:52 +00:00
Marcus Boerger 6762c9f0e0 - Add new test 2004-10-02 14:13:35 +00:00
4bd7b33e1b ChangeLog update 2004-10-02 00:35:13 +00:00
Marcus Boerger 2f5985335b - Add makefile fragment which simplifies working on the executer 2004-10-01 22:32:15 +00:00
Rasmus Lerdorf 3d85a5d876 Slightly different fix for HEAD for the ming output method BC breaking
change.
2004-10-01 19:28:45 +00:00
Sebastian Bergmann b4a5314dc3 Fugbix typo. 2004-10-01 10:35:26 +00:00
1507a660b1 ChangeLog update 2004-10-01 00:34:08 +00:00
Andi Gutmans 1a4bfd6561 - Small improvement to DVAL_TO_ZVAL macro 2004-09-30 18:36:03 +00:00
Anantha Kesari H Y ee43ab18b0 enabling few functionalities as the LibC starts supporting them 2004-09-30 15:55:18 +00:00
Anantha Kesari H Y 93be400da9 Including config.nw.h file for NetWare 2004-09-30 14:46:03 +00:00
Anantha Kesari H Y 142e92bb70 NetWare specific stat structure access incorporated 2004-09-30 14:31:30 +00:00
Anantha Kesari H Y ccbeace1ff handled NetWare F_SETFD and stat differences 2004-09-30 14:23:51 +00:00
Antony Dovgal 0ea23249da fix error message 2004-09-30 14:20:02 +00:00
Antony Dovgal fcd702efe4 fix segfault when using unknown/unsupported save_handler and/or serialize_handler (bug #30282) 2004-09-30 12:19:59 +00:00
Marcus Boerger 9d28fc6643 - CS: Use PHP_* instead of ZEND_* macros 2004-09-30 08:04:29 +00:00
Marcus Boerger 854b3ebdc3 - Add missing macro 2004-09-30 08:03:38 +00:00
Ilia Alshanetsky c7cd1d708f Fixed bug #30276 (Possible crash in ctype_digit on large numbers). 2004-09-30 01:22:56 +00:00
464ebb7843 ChangeLog update 2004-09-30 00:41:24 +00:00
Marcus Boerger aa247a3276 - MFB (synch correctly not only for one problem) 2004-09-29 20:57:07 +00:00
Marcus Boerger 1619178f5e - Speling 2004-09-29 20:27:36 +00:00
Marcus Boerger e109ab5492 - Fix docu 2004-09-29 20:25:28 +00:00
Marcus Boerger 0ec6eb7aad - Refix the fix
# This somehow got lost and was then readded by Andi in 1.258 at the wrong
# position. Obviously we need to separate the argument first and convert it
# afterwards as done in 5.0.*.
2004-09-29 20:24:35 +00:00
Marcus Boerger 35e78f43a1 - Add missing --SKIPIF-- 2004-09-29 20:10:12 +00:00
Marcus Boerger d748f8ecf2 - Fix tests (atm preg_match() is wrong) 2004-09-29 20:09:52 +00:00
Marcus Boerger c9d32d9b71 - Update test 2004-09-29 19:36:30 +00:00
Andi Gutmans 5efcdba2d0 - Move bench.php to Zend/ 2004-09-29 17:08:46 +00:00
Anantha Kesari H Y 379bb867cb NetWare LibC don't have search.h 2004-09-29 16:11:47 +00:00
Anantha Kesari H Y 5dbf49e314 removed unwanted NEW_LIBC checks 2004-09-29 14:42:16 +00:00
Anantha Kesari H Y 06a4be43a3 NetWare don't have uid for a file so modified the php_checkuid to return 1 for NetWAre 2004-09-29 12:35:13 +00:00
Anantha Kesari H Y b38de145ac removed unneccessary inclusion of headers for NetWare 2004-09-29 12:25:56 +00:00
Anantha Kesari H Y a93f75ce6b NETWARE has a proper stat structure Now no need of CLIB_STAT_PATCH checks 2004-09-29 10:54:56 +00:00
Anantha Kesari H Y 0903dcdcf7 removed redundant NEW_LIBC checks for NETWARE 2004-09-29 10:36:24 +00:00
Anantha Kesari H Y 7387db4366 Included select.h for NetWare 2004-09-29 10:28:17 +00:00
Anantha Kesari H Y 474c53348c removed unwanted comments, NEW_LIBC checks and NetWare specific stat structure population 2004-09-29 10:21:41 +00:00
Anantha Kesari H Y 745beb2deb removed redundant NEW_LIBC and CLIB_STAT_PATCH checks for NETWARE 2004-09-29 09:47:15 +00:00
Marcus Boerger 2f40d61bed - Fix test 2004-09-29 09:43:33 +00:00
Marcus Boerger 7133858532 - Fix test by removing corrupt --SKIPIF-- 2004-09-29 09:41:18 +00:00
Marcus Boerger 1ac9923c63 - Fix tests by removing erroneous check from --SKIPIF-- 2004-09-29 09:39:43 +00:00
Marcus Boerger 0a74684b3a - Fix tests by removing corrupt --SKIPIF-- 2004-09-29 09:36:56 +00:00
Marcus Boerger 13f3e07ff2 - Add new tests 2004-09-29 09:36:23 +00:00
Marcus Boerger a898c2dd28 Fix classnames 2004-09-29 08:55:45 +00:00
Marcus Boerger 93753e19b1 Add new test 2004-09-29 08:48:16 +00:00
Anantha Kesari H Y ec42c1432c implemented proc_open for NETWARE 2004-09-29 06:04:36 +00:00
Sterling Hughes 8f1a327edb Add strptime function. 2004-09-29 04:57:19 +00:00
f890909ac4 ChangeLog update 2004-09-29 00:34:42 +00:00
Marcus Boerger aa8da8daf1 - Fix warnign 2004-09-28 23:10:39 +00:00
Marcus Boerger e39f3f3f48 Simplify/Optmize magic method calls (__get/__set/__call/__clone/__destruct) 2004-09-28 22:55:22 +00:00
foobar 72b2d1c9ee MFB: - Fixed bug #30205 (Missing <unistd.h> in crypt() configure test). 2004-09-28 20:42:56 +00:00
Andi Gutmans 3e2b49ab5b - Return the warning until we check if we can change the type of str.len 2004-09-28 19:46:57 +00:00
Marcus Boerger b907755e3c - publish reflection_class_factory() as zend_reflection_class_factory() 2004-09-28 19:06:15 +00:00
Frank M. Kromann 81c8d3132b Fix compilation 2004-09-28 18:38:29 +00:00
Antony Dovgal 454b9659c5 fix bug #29652 (number of FD to ocius.msb is growing)
many thanks to Sergei V. Rozinov <S dot Rozinov at sibron dot ru> for testing
2004-09-28 16:59:10 +00:00
Ilia Alshanetsky 183126535c Fixed bug #30224 (Sybase date strings are sometimes not null terminated). 2004-09-28 14:07:23 +00:00
Wez Furlong ab2dead053 update ignore files 2004-09-28 09:44:56 +00:00
31902806a8 ChangeLog update 2004-09-28 00:34:17 +00:00
Marcus Boerger 3fec3a916b - Make internally used properties read-only and fix default properties 2004-09-27 22:24:57 +00:00
Marcus Boerger 0e68cf3cdb - Add new test 2004-09-27 22:23:31 +00:00
Edin Kadribasic c48f96a790 MFB: bugfix #30133 2004-09-27 22:23:11 +00:00
Andrey Hristov b76deb94a3 give credits to David 2004-09-27 22:13:36 +00:00
Marcus Boerger f775ea0ae3 - Fix memeleak 2004-09-27 22:06:10 +00:00
Marcus Boerger 8d587ce308 - Declare properties 2004-09-27 21:25:12 +00:00
Marcus Boerger 5ab692da02 - Add new test 2004-09-27 21:24:45 +00:00
Andi Gutmans 84f248761f - Document zend_vm_use_old_executor() for Derick. 2004-09-27 18:21:39 +00:00
Ilia Alshanetsky 52ee529ef4 Make test more generic.
# Thanks Marcus.
2004-09-27 17:52:25 +00:00
Ilia Alshanetsky 479af1e75d Fixed bug #30249 (Incorrect timeout check). 2004-09-27 17:30:46 +00:00
Anantha Kesari H Y 549ec65eee removed redundant NEW_LIBC checks 2004-09-27 15:55:04 +00:00
Anantha Kesari H Y 32788092da removed redundant NEW_LIBC and CLIB_STAT_PATCH checks 2004-09-27 15:37:33 +00:00
Anantha Kesari H Y 09d305c1ff removed redundant NEW_LIBC checks 2004-09-27 14:51:17 +00:00
Anantha Kesari H Y 5da74deab9 removed unwanted NEW_LIBC checks 2004-09-27 14:29:55 +00:00
Anantha Kesari H Y e12ea3c30d removed redundant NEW_LIBC check 2004-09-27 14:25:13 +00:00
Anantha Kesari H Y e510e26aa6 removed unwanted NEW_LIBC checks and comments 2004-09-27 14:19:07 +00:00
Marcus Boerger 9291a7fa98 Fix Reflection_Class to ReflectionClass in docu/messages 2004-09-27 09:11:40 +00:00
Marcus Boerger 920b706142 - Fix warning 2004-09-27 09:03:40 +00:00
Marcus Boerger 04fe8184f8 - Fix warnings 2004-09-27 09:01:18 +00:00
Marcus Boerger 16c1f0ae74 - Fix warning
# What's the reason _zvalue_value.str.len is int instead of uint/zend_uint?
2004-09-27 08:50:41 +00:00
Marcus Boerger 8e09f92917 - Fix warning 2004-09-27 08:46:12 +00:00
Marcus Boerger 4bcd155285 - Fix warnings 2004-09-27 08:43:05 +00:00
Marcus Boerger 01af2c3f73 Fix warnign 2004-09-27 08:33:11 +00:00
Andi Gutmans 4a03738225 - Use zval_ctor_func() for wrapper and update the prototype to void 2004-09-27 07:04:36 +00:00
Andi Gutmans 67fc0f2bfe - Make zval_copy_ctor() return void like dtor(). No one ever checks the
- return value which is SUCCESS always.
2004-09-27 02:29:01 +00:00
23ecf60129 ChangeLog update 2004-09-27 00:34:15 +00:00
Marcus Boerger 32a0465214 - Fix warning 2004-09-26 22:23:14 +00:00
Marcus Boerger cc7ef25e4a fix build 2004-09-26 22:20:24 +00:00
Marcus Boerger e0ec7c981e - Fix build 2004-09-26 22:19:57 +00:00
Marcus Boerger 32e478b9fc - Add fputcsv() (David Sklar) 2004-09-26 21:55:22 +00:00
Marcus Boerger 5177691e4a - Add missing .cvsignore 2004-09-26 21:51:58 +00:00
Marcus Boerger 881c2f05f5 - Earlier detection of failure (.c now) 2004-09-26 21:49:16 +00:00
Marcus Boerger abe47301c1 - Earlier detection of failure 2004-09-26 21:47:27 +00:00
Marcus Boerger ace462334e Fix TSRM build 2004-09-26 21:45:17 +00:00
Marcus Boerger 42bc4cd0ca Add new examples 2004-09-26 21:21:45 +00:00
Wez Furlong 1f08a96f5a add ignore file 2004-09-26 20:53:31 +00:00
Wez Furlong 69a91aae8e Removing clucking debug and tweak the reset call 2004-09-26 20:52:07 +00:00
Wez Furlong e7a6eca69d rough cut at mysql meta data 2004-09-26 20:47:03 +00:00
Wez Furlong 486b426947 meta data for sqlite3.
Fix repeated executes when the entire rowset has not been consumed.
2004-09-26 20:46:35 +00:00
Wez Furlong eb0cd48d60 Add rough cut at fetching meta data. 2004-09-26 20:45:44 +00:00
Andi Gutmans f17aa81edc - Apply Thies and Sterling's patch which doesn't call ctor/dtor functions
- for types which don't require it (BOOL/NULL/LONG/DOUBLE)
- Breaks serialization!!!
2004-09-26 20:03:54 +00:00
Ilia Alshanetsky d5bac133ee Return FALSE when file cannot be found.
Specify full paths to the files used for the test.
2004-09-26 19:24:18 +00:00
Ilia Alshanetsky d6501f756a fixed test output. 2004-09-26 19:12:06 +00:00
Marcus Boerger 3cdd2bcb01 - Add more tests 2004-09-26 18:28:07 +00:00
Marcus Boerger 617de19912 - Add new test (related to #30234) 2004-09-26 18:16:33 +00:00
Wez Furlong 429b37d750 compile fix from Timm 2004-09-26 13:52:09 +00:00
Wez Furlong 64f3120598 Finalize fix for #30057 2004-09-26 01:10:05 +00:00
10dd36d959 ChangeLog update 2004-09-26 00:35:24 +00:00
Wez Furlong 0c1a436917 Probable fix for Bug #30147 2004-09-25 23:13:49 +00:00
Anantha Kesari H Y cc45f504d4 removing the unwanted inclusion of headers 2004-09-25 15:39:26 +00:00
Anantha Kesari H Y b35e507884 removing unwanted comment 2004-09-25 15:36:47 +00:00
Anantha Kesari H Y 293ab565b5 removing unwanted inclusion of socket header file 2004-09-25 15:33:57 +00:00
Anantha Kesari H Y 80a4042a5c removed NEW_LIBC checks in NETWARE 2004-09-25 15:30:26 +00:00
Marcus Boerger 16f30e1951 - Fix lib substitution (rurban at x-ray dot at ) 2004-09-25 15:29:19 +00:00
Anantha Kesari H Y 7d57757a8a removed redundant NEW_LIBC checks 2004-09-25 15:26:55 +00:00
Anantha Kesari H Y 6692794433 removed redundance LIBC checks for NETWARE 2004-09-25 15:23:35 +00:00
Anantha Kesari H Y 78ecac2569 removed unwanted NEW_LIBC checks as they are no more needed for NETAWRE 2004-09-25 14:54:41 +00:00
Anantha Kesari H Y 146cb29054 removing unwanted header files getting included 2004-09-25 14:48:44 +00:00
Anantha Kesari H Y bc90ecb7e2 removed unwanted NEW_LIBC checks 2004-09-25 14:46:24 +00:00
Anantha Kesari H Y c4b57bc16b Now NetWare LibC supports proper stat structure no need of CLIB_STAT_PATCH and all such checks 2004-09-25 14:23:32 +00:00
Anantha Kesari H Y 595268403a removed the redundant NEW_LIBC checks 2004-09-25 14:19:38 +00:00
Anantha Kesari H Y 00760e1343 removed the redundant NEW_LIBC checks 2004-09-25 14:09:45 +00:00
Anantha Kesari H Y 24437ccb75 cleaned up confusing NetWare specific check. disabled chown and chgrp for NetWare 2004-09-25 13:19:45 +00:00
0ec80db02a ChangeLog update 2004-09-25 00:35:03 +00:00
Wez Furlong 2416481fd1 More sensible error codes in the exceptions we throw for broken transactions 2004-09-24 18:49:33 +00:00
Anantha Kesari H Y ac5b702b91 removed redundant CLIB_STAT_PATCH checks for NETWARE 2004-09-24 15:44:57 +00:00
Anantha Kesari H Y b82a18c8da selectively avoiding module cleanup code for apache 1 build and removing a duplicate code 2004-09-24 15:40:22 +00:00
Dmitry Stogov aeab5f8723 Fixed specializer bug. 2004-09-24 06:06:39 +00:00
8799fed634 ChangeLog update 2004-09-24 00:34:15 +00:00
Andi Gutmans f82ed13625 - Commit new VM architecture. This one allows people (aka Derick) to
- ask the engine to use function handler mode. Will update the README
- about that.
2004-09-23 21:43:32 +00:00
Ilia Alshanetsky 1fc2b79172 Make handle error messages handle persistent situations better. 2004-09-23 21:15:51 +00:00
Ilia Alshanetsky 626caf0292 Make error messages handle persistent environments properly. 2004-09-23 21:03:41 +00:00
Wez Furlong 72040f7f2a more method table adjustments.
mysql driver needs work with the error message stuff.
Other drivers need a bit more auditing...
2004-09-23 20:43:11 +00:00
Wez Furlong b42c14f07e placeholder for someone to implement a ping for persistent connections 2004-09-23 20:20:23 +00:00
Wez Furlong 53ed3475ce add entry for liveness check 2004-09-23 20:09:00 +00:00
Ilia Alshanetsky a4df842974 Fixed test. 2004-09-23 20:08:07 +00:00
Wez Furlong 7937f0a229 Implement persistent connections
$dbh->exec --> $dbh->query
2004-09-23 20:07:02 +00:00
Marcus Boerger 2e49a2d960 Add test description 2004-09-23 18:43:21 +00:00
Marcus Boerger c0b62ca36d Add new test 2004-09-23 18:38:34 +00:00
Marcus Boerger e13eb1d6c0 Bugfix # 30209 2004-09-23 18:37:53 +00:00
Andi Gutmans 97b796d0aa - Commit synthetic benchmark 2004-09-23 16:42:21 +00:00
Anantha Kesari H Y c914bff745 removed unwanted NetWare specific changes 2004-09-23 15:57:30 +00:00
Anantha Kesari H Y 9b0489ac47 removed redundant checks for NETWARE 2004-09-23 15:43:54 +00:00
Anantha Kesari H Y 13163ad5e4 TSRMLS_FETCH should be called prior to accessing any of the SG members 2004-09-23 15:08:31 +00:00
Anantha Kesari H Y d2e85c5c9a NetWare now has a POSIX compliant stat structure so no need of CLIB_STAT_PATCH and all such macros 2004-09-23 14:36:42 +00:00
Anantha Kesari H Y b855337d39 CLIB_STAT_PATCH check is redundant. So removing it 2004-09-23 13:07:43 +00:00
Anantha Kesari H Y b04db9d9e0 Reverted the NetWare Specific Stack limit related patches as asked by Andi 2004-09-23 06:23:36 +00:00
921cdf4fb9 ChangeLog update 2004-09-23 00:34:44 +00:00
Wez Furlong bfe9871c83 fix for pecl modules; runs "make install" and correctly adds the files to the
transaction and package.

(as far as I know).
2004-09-22 19:04:56 +00:00
Anantha Kesari H Y b66e7aec62 NetWare specific stack limit checks 2004-09-22 15:51:56 +00:00
Anantha Kesari H Y 5af07c3c8b Aligned the ifdef NETWARE blocks to first column. 2004-09-22 14:31:21 +00:00
Anantha Kesari H Y 8eb7503078 Stack limit will be checked while executing the script 2004-09-22 14:20:19 +00:00
Anantha Kesari H Y b0b1a57fc4 To avoid redefinition (of free, alloca etc.) compilation errors in Zend. 2004-09-22 13:42:32 +00:00
Anantha Kesari H Y 8478f5e38e When Apache is unloaded, it calls dlclose on all the PHP extensions
that are loaded in memory. In the case of Apache 1.3, this call is blocking indefinitely. As a work around, this call is bypassed for Apache 1.3 build on NetWare only. This means that none of the loaded PHP extensions are unloaded. They will have to be manually unloaded before re-loading the Apache 1.3 again.
2004-09-22 13:29:08 +00:00
Anantha Kesari H Y ff40ceab56 defined ZEND_PATHS_SEPERATOR to semicolon for NetWare 2004-09-22 12:49:08 +00:00
Anantha Kesari H Y 4fe1927183 enabled macros to call the proper LibC functions 2004-09-22 12:45:28 +00:00
Dmitry Stogov 480f4e3565 Specializer was updated with executor's fixes. 2004-09-22 08:45:21 +00:00
Dmitry Stogov 3009a073b0 Fixed bug #29566 (foreach/string handling strangeness (crash)). 2004-09-22 07:14:26 +00:00
Dmitry Stogov 81a5af36a1 Fixed bug in fix for bug #29707 2004-09-22 06:32:19 +00:00
Dmitry Stogov b027850ba4 Fixed bug #30182 (SOAP module processing WSDL file dumps core). 2004-09-22 05:58:40 +00:00
24961c73ac ChangeLog update 2004-09-22 00:34:14 +00:00
Andi Gutmans d9252aa1ea - Fix for bug #29707 2004-09-21 22:09:22 +00:00
Frank M. Kromann 62fbbd1494 Fix win32 build 2004-09-21 18:09:29 +00:00
e62484fa09 ChangeLog update 2004-09-21 00:34:37 +00:00
Wez Furlong 31a17d9044 Enable hypot for all 2004-09-20 22:08:06 +00:00
Edin Kadribasic 3da64fa20a Add additional include search path 2004-09-20 21:26:24 +00:00
Uwe Schindler 74fe4ec0cb changed order of processing of ini entries 2004-09-20 13:30:13 +00:00
Ilia Alshanetsky 4af4cf0914 Fixed bug #29913 (parse_url() is now binary safe). 2004-09-20 05:13:35 +00:00
4017713fc2 ChangeLog update 2004-09-20 00:34:18 +00:00
Wez Furlong 9ce9605723 Use the correct free() here... 2004-09-19 22:20:55 +00:00
Wez Furlong eb5e0d6d12 Add package.xml
(not quite ready for release)
2004-09-19 19:50:06 +00:00
Wez Furlong ceb551024a Add support for:
$d = new PDO('foobar');  // name has no : character

This will indirect via the entry "pdo.dsn.foobar" from the php.ini file,
so if you have:

pdo.dsn.foobar=sqlite::memory:

the above is equivalent to this:

$d = new PDO('sqlite::memory:');

which creates an in-memory sqlite db.
2004-09-19 19:28:02 +00:00
Wez Furlong f40608230b Use NO_PERM code here 2004-09-19 18:13:09 +00:00
Wez Furlong 797303d23a un-bogusify uri: stuff... 2004-09-19 18:11:27 +00:00
Wez Furlong 34d10931e2 Add "no permission" error code.
Add a uri: psuedo driver; it specifies the name of a resource that contains,
as its first line, the actual data source to connect to.
The resource can be a local file, or it can be any resource for which PHP
has a wrapper.

// loads connection data from the file "myapp"
$d = new PDO('uri:myapp');

// lets say that public.db.com has a read-only db open for the public
// their connection data is also published via the web:
// (not so great to resolve this on each request though...)
$d = new PDO('uri:http://public.db.com/pdo-connection-data');
2004-09-19 16:58:13 +00:00
Wez Furlong 6fa469f367 make it build on win32 2004-09-19 15:47:13 +00:00
Wez Furlong 0d4869f24b Add transaction support.
Add authorizer/safe_mode support
2004-09-19 12:42:39 +00:00
Marcus Boerger d0cfb7d3fd Bugfix #30146 (ReflectionProperty->getValue() requires instance for static property) 2004-09-19 11:54:08 +00:00
Marcus Boerger dfe23e34d9 Add new test 2004-09-19 11:53:30 +00:00
Marcus Boerger 980424a834 Add new test 2004-09-19 11:26:05 +00:00
Marcus Boerger 43d9ade92b Bugfix #30148 (ReflectionMethod->isConstructor() fails for inherited classes) 2004-09-19 11:25:39 +00:00
Wez Furlong 2f161ab79d First cut at a PDO driver for SQLite 3.x
Features:
- native prepare/execute and bound parameters.
- finally supports binary data (via bound parameter api)
- full unicode/utf-8 support

Missing:
- UDF functions
- authorizer hooks for safe_mode/open_basedir restrictions

You need to download, compile and install sqlite3 yourself; we're not bundling
it (at least, not yet).
2004-09-19 10:55:41 +00:00
db7af4d8f0 ChangeLog update 2004-09-18 00:35:27 +00:00
Wez Furlong ff4e970fb1 Make new poll stuff work on win32 (and still be safe on unix) 2004-09-17 14:36:55 +00:00
Wez Furlong 99e290f882 Fix for Bug #24189: possibly unsafe select(2) usage.
We avoid the problem by using poll(2).

On systems without poll(2) (older bsd-ish systems, and win32), we emulate
poll(2) using select(2) and check for valid descriptors before attempting
to access them via the descriptor sets.

If an out-of-range descriptor is detected, an E_WARNING is raised suggesting
that PHP should be recompiled with a larger FD_SETSIZE (and also with a
suggested value).

Most uses of select(2) in the source are to poll a single descriptor, so
a couple of handy wrapper functions have been added to make this easier.

A configure option --enable-fd-setsize has been added to both the unix and
win32 builds; on unix we default to 16384 and on windows we default to 256.
Windows FD_SETSIZE imposes a limit on the maximum number of descriptors that
can be select()ed at once, whereas the unix FD_SETSIZE limit is based on the
highest numbered descriptor; 256 should be plenty for PHP scripts under windows
(the default OS setting is 64).

The win32 specific parts are untested; will do that now.
2004-09-17 12:44:56 +00:00
Wez Furlong 9085689d6f standardize the callback support to allow array($obj, 'method') callbacks.
Add a couple of utility functions.
2004-09-17 11:26:43 +00:00
Stanislav Malyshev 3755c03291 fix crash when dtor is fialing on shutdown 2004-09-17 10:13:52 +00:00
Ilia Alshanetsky 2a2d49b947 Fixed bug #30050 (Possible crash inside php_shutdown_config()).
# Patch suggestion by nw at softwarekombinat dot de
2004-09-17 02:48:41 +00:00
1775e980ea ChangeLog update 2004-09-17 00:33:44 +00:00
Andi Gutmans 16d79b79d6 - Add test for bug #27669 2004-09-16 19:36:56 +00:00
Dmitry Stogov 7a149080d8 Fixed crash with SoapFault and register_shutdown_function(). 2004-09-16 08:12:27 +00:00
Sebastian Bergmann 6ccbb6b51b ZTS fix. 2004-09-16 05:43:29 +00:00
Andi Gutmans daa52df47a - Only 5.0.x news which we'll copy over before 5.1.0 release 2004-09-16 00:47:25 +00:00
Andi Gutmans d098a077e4 - News 2004-09-16 00:46:20 +00:00
Andi Gutmans d8efe626b5 - Fix bug #27669 (Dmitry).
Fixes:
<?
        class A
        {
                function hello()
                {
                        echo "Hello World\n";
                }
        }
        $y[0] = 'hello';
        A::$y[0]();
?>
2004-09-16 00:40:38 +00:00
5fc85f6c61 ChangeLog update 2004-09-16 00:33:09 +00:00
Uwe Schindler 5e1f396849 Fixed bug #29805 (HTTP Authentication Issues) 2004-09-15 21:28:30 +00:00
Dmitry Stogov 37a66d6d3b Fixed invalid test name 2004-09-15 14:36:59 +00:00
foobar 36a76f403a Test for bug #30069 2004-09-15 13:54:16 +00:00
Ilia Alshanetsky da136e6106 MFH: Fixed a bug causing ".123" * "90" and alike to return a 0. 2004-09-15 13:41:45 +00:00
Derick Rethans c68f4bde30 - Windows support strcoll too. 2004-09-15 12:28:55 +00:00
Derick Rethans 7795da58e6 - Added new boolean (fourth) parameter to array_slice() that turns on the
preservation of keys in the returned array.
2004-09-15 11:50:27 +00:00
Dmitry Stogov 2a63e78eed Fixed possible crash 2004-09-15 10:43:07 +00:00
7438337fdd ChangeLog update 2004-09-15 00:34:26 +00:00
Ilia Alshanetsky 6784176b9c Fixed compiler warnings. 2004-09-14 23:57:53 +00:00
Dmitry Stogov ffc2278d6e Fixed bug #30045 (Cannot pass big integers (> 2147483647) in SOAP requests) 2004-09-14 12:15:30 +00:00
Sara Golemon 34550382d8 Added stream_filter_remove() to cancel a stream filter.
Register filters as resources when
instantiated by stream_filter_(ap|pre)pend().

Export php_stream_filter_flush() internal function to wind buffered data
out of a particular filter until consumed by a later filter or sent to
stream->readbuffer or stream->ops->write()
2004-09-14 03:48:17 +00:00
41c4fd66d9 ChangeLog update 2004-09-14 00:33:34 +00:00
Sara Golemon 9cd4320b65 Allocating hash tables should be done via macro, not directly 2004-09-13 21:07:22 +00:00
Magnus M��tt� 17c77a54bf Add missing stream unregister for sslv2 and 3. 2004-09-13 18:30:30 +00:00
Stefan Esser 0f860d8f34 only allow valid arrays at this point 2004-09-13 16:00:23 +00:00
Dmitry Stogov 12752a4044 Change soap's ctors to __construct(),
rename SoapClient->__call() to SoapClinet->__soapCall().
2004-09-13 11:55:24 +00:00
Stanislav Malyshev 29fec3febc Antony Dovgal's error message improvement - #27290 2004-09-13 10:41:39 +00:00
dd12885897 ChangeLog update 2004-09-13 00:32:56 +00:00
Marcus Boerger 61bbeabdfa - Moe changed from .re to .c 2004-09-12 12:45:01 +00:00
Marcus Boerger 8564352f59 - Readd check for nested data (but correct this time) 2004-09-12 12:43:05 +00:00
Marcus Boerger 06ade1ab1c - Check for legal key types 2004-09-12 12:23:16 +00:00
Marcus Boerger 6200c9a5a1 - Remove wrong test 2004-09-12 11:51:13 +00:00
Stefan Esser e7d698c7d8 New Rule: Never try to repair potential malicious user input 2004-09-12 10:45:14 +00:00
Antony Dovgal e2568f0a4f 64-bit related changes
./configure will now behave differently if $ORACLE_HOME/lib32 exists
(this mostly happens at Solaris AFAIK)
2004-09-12 06:38:31 +00:00
Antony Dovgal 0e2100ca58 add PHP_CHECK_64BIT macro to be able to detect 64-bit platform in ./configure 2004-09-12 06:35:51 +00:00
49b1208120 ChangeLog update 2004-09-12 00:33:34 +00:00
Derick Rethans 4bae5cb4d0 - MFB: Added the sorting flag SORT_LOCALE_STRING to the sort() functions which
makes them sort based on the current locale. (Derick)
2004-09-11 14:22:35 +00:00
b3a32e6d21 ChangeLog update 2004-09-11 00:33:56 +00:00
Andi Gutmans 3e201ac281 - Resolve undefined behavior (joe at redhat) 2004-09-11 00:23:20 +00:00
Sara Golemon ed5dcbff9b A little extra code to allow overriding plainfiles wrapper as well 2004-09-10 21:50:29 +00:00
Sara Golemon 955b43ba12 Add stream_wrapper_unregister()
Disables a wrapper (user-defined or built-in) for the life of the request.

Add stream_wrapper_restore()
Restores the wrapper originally defined at the time the request started
to the protocol name mentioned.
2004-09-10 20:45:35 +00:00
Sterling Hughes 58cb0d77a0 fix wrong check from return value, binary content should not be \0'd,
non-binary content should be \0'd.
2004-09-10 20:36:45 +00:00
Antony Dovgal 663e46eee5 add testcase for bug #29446 2004-09-10 13:55:26 +00:00
Wez Furlong 0bc0ccce2b Fix Bug #29296: add explicit sslv2 and sslv3 transports 2004-09-10 11:43:47 +00:00
Dmitry Stogov f8181ba7b5 SoapClient->__call() is renamed to SoapClient->__soap_call(). 2004-09-10 09:02:06 +00:00
Dmitry Stogov f93560ddc9 Using php_libxml_xmlCheckUTF8() from ext/libxml. 2004-09-10 08:59:45 +00:00
Andi Gutmans ab52308356 - This one fixes rather strange problem - ZE allows multiple declarations of the same class constant.
- It could be a minor BC break, but I'm sure it's a bug. (Antony Dovgal aka tony2001)
2004-09-10 06:13:13 +00:00
0a72ea8d70 ChangeLog update 2004-09-10 00:35:29 +00:00
Wez Furlong 751f67d5d1 avoid ANSI stdio when calling tempnam() to avoid limitations of AT&T libc. 2004-09-09 19:41:07 +00:00
Timm Friebe 8e5d8e6679 - Defaulted ini variable "sybct.deadlock_retry_count" to 0
# For details on why this was changed, see
# http://zend.com/lists/php-dev/200409/msg00108.html
2004-09-09 19:17:50 +00:00
Marcus Boerger 8b30b8da98 Fix test script 2004-09-09 17:08:45 +00:00
Andi Gutmans db07396fe8 - Revert API bump 2004-09-09 17:08:25 +00:00
Andi Gutmans 3d438cc06a - Commit VM explanation. 2004-09-09 17:04:12 +00:00
Andi Gutmans ec4f64344c - Recommit 2004-09-09 16:52:24 +00:00
Andi Gutmans 6bd3c36a53 - Recommit:
- Check signature of magic methods
  - Register __get/__set/__call for internal classes
2004-09-09 16:51:45 +00:00
Andi Gutmans 8aed222d93 - Recommit:
- Bump the API number to work around this major breakage.
2004-09-09 16:50:04 +00:00
Andi Gutmans 96ab56e146 - Roll back VM commit 2004-09-09 16:47:22 +00:00
Rasmus Lerdorf bb8167cda3 Stop at the index on an unmatched [ 2004-09-09 16:10:24 +00:00
Marcus Boerger 7bfb397338 - Drop namespace relict 2004-09-09 13:29:08 +00:00
Marcus Boerger 621795ef4b Fix __call's method signature 2004-09-09 09:53:53 +00:00
Marcus Boerger be24e2455c - Check signature of magic methods
- Register __get/__set/__call for internal classes
2004-09-09 09:51:43 +00:00
Marcus Boerger 8e56b3b6a6 Proper #ifdef'ing 2004-09-09 09:08:33 +00:00
Marcus Boerger b16ae3b73a add new test 2004-09-09 07:46:19 +00:00
Derick Rethans 7d2302830f - Bump the API number to work around this major breakage. 2004-09-09 07:41:32 +00:00
Dmitry Stogov f6206c5050 We will use CALL dispatch method for compilers other then GCC. It is more safe. 2004-09-09 06:05:11 +00:00
ea4dbef1b7 ChangeLog update 2004-09-09 00:34:46 +00:00
Andi Gutmans f20f992ddd - Fix the fix. 2004-09-09 00:15:39 +00:00
Andi Gutmans 2e286e7374 - Fix bug #28054 by preventing printing out bogus information in backtrace
when in error handler (still doesn't know all information but at least
  it's not bogus)
2004-09-08 23:46:37 +00:00
Sara Golemon 532a79aa52 *** empty log message *** 2004-09-08 23:37:55 +00:00
Andi Gutmans 8eb8850c90 - Some architectural changes:
a) We specialize opcodes according to op_type fields. Each opcode has to
    be marked with which op_type's it uses.
 b) We support different execution methods. Function handlers, switch()
    and goto dispatching. goto seems to be the fastest but it really
    depends on the compiler and how well it optimizes. I suggest playing
    around with optimization flags.

- Warning: Things might break so keep us posted on how things are going.
  (Dmitry, Andi)
2004-09-08 22:14:12 +00:00
Sara Golemon d179ac771c Handle maxlen when stream can't be mmaped 2004-09-08 18:42:15 +00:00
Rob Richards da5ff5d9f1 fix issue with multiple xsl objects using registerPHPfunctions
- also fixes threading issue
2004-09-08 16:54:17 +00:00
Rob Richards ccb99d0a1e implement php_libxml_xmlCheckUTF8
- workaround for pre libxml2-2.6.13 function
2004-09-08 10:15:41 +00:00
9ed4b04f6a ChangeLog update 2004-09-08 00:32:37 +00:00
Sara Golemon 92c4a37a6a Chunk Length may optionally be followed by whitespace 2004-09-07 22:46:24 +00:00
Frank M. Kromann aa25757136 Make it possible to return VideoStream and PrebuiltClip 2004-09-07 19:40:18 +00:00
Sara Golemon a85bff9796 Protocol version context option and chunked transfer encoding 2004-09-07 19:27:11 +00:00
Dmitry Stogov 7e53511ec8 Make ext/soap work around libxml2 bug in xmlCheckUTF8 (2.6.7-2.6.13) 2004-09-07 14:34:46 +00:00
4672 changed files with 1061548 additions and 9584 deletions

No files matched your search

+359
View File
@@ -0,0 +1,359 @@
set $zts = 0
define ____executor_globals
if $zts
set $eg = ((zend_executor_globals) (*((void ***) tsrm_ls))[executor_globals_id-1])
else
set $eg = executor_globals
end
end
document ____executor_globals
portable way of accessing executor_globals
type "set $zts = 1" if you use --enable-maintainer-zts on your configure line
end
define dump_bt
set $t = $arg0
while $t
printf "[0x%08x] ", $t
if $t->function_state.function->common.function_name
printf "%s() ", $t->function_state.function->common.function_name
else
printf "??? "
end
if $t->op_array != 0
printf "%s:%d ", $t->op_array->filename, $t->opline->lineno
end
set $t = $t->prev_execute_data
printf "\n"
end
end
document dump_bt
dumps the current execution stack. usage: dump_bt executor_globals.current_execute_data
end
define printzv
set $ind = 1
____printzv $arg0 0
end
document printzv
prints content of zval
end
define ____printzv_contents
____executor_globals
set $zvalue = $arg0
if $zvalue.type == 0
set $typename = "NULL"
end
if $zvalue.type == 1
set $typename = "long"
end
if $zvalue.type == 2
set $typename = "double"
end
if $zvalue.type == 3
set $typename = "string"
end
if $zvalue.type == 4
set $typename = "array"
end
if $zvalue.type == 5
set $typename = "object"
end
if $zvalue.type == 6
set $typename = "bool"
end
if $zvalue.type == 7
set $typename = "resource"
end
if $zvalue.type == 8
set $typename = "constant"
end
if $zvalue.type == 9
set $typename = "const_array"
end
printf "(refcount=%d) %s: ", $zvalue.refcount, $typename
if $zvalue.type == 1
printf "%ld", $zvalue.value.lval
end
if $zvalue->type == 2
printf "%lf", $zvalue.value.dval
end
if $zvalue.type == 3
printf "\"%s\"(%d)", $zvalue.value.str.val, $zvalue.value.str.len
end
if $zvalue.type == 4
if ! $arg1
printf "{\n"
set $ind = $ind + 1
____print_ht $zvalue.value.ht
set $ind = $ind - 1
set $i = $ind
while $i > 0
printf " "
set $i = $i - 1
end
printf "}"
end
end
if $zvalue.type == 5
if ! $arg1
printf "(prop examination disabled due to a gdb bug)"
if $zvalue.value.obj.handlers->get_properties
# set $ht = $zvalue->value.obj.handlers->get_properties($zvalue)
# printf "{\n"
# set $ind = $ind + 1
# ____print_ht $ht
# set $ind = $ind - 1
# set $i = $ind
# while $i > 0
# printf " "
# set $i = $i - 1
# end
# printf "}"
end
end
end
if $zvalue.type == 6
if $zvalue.value.lval
printf "true"
else
printf "false"
end
end
if $zvalue.type == 7
printf "#%d", $zvalue.value.lval
end
printf "\n"
end
define ____printzv
____executor_globals
set $zvalue = $arg0
printf "[0x%08x] ", $zvalue
if $zvalue == $eg.uninitialized_zval_ptr
printf "*uninitialized* "
end
set $zcontents = *(struct _zval_struct *) $zvalue
if $arg1
____printzv_contents $zcontents $arg1
else
____printzv_contents $zcontents 0
end
end
define ____print_const_table
set $ht = $arg0
set $p = $ht->pListHead
while $p != 0
set $const = *(zend_constant *) $p->pData
set $i = $ind
while $i > 0
printf " "
set $i = $i - 1
end
if $p->nKeyLength > 0
printf "\"%s\" => ", $p->arKey
else
printf "%d => ", $p->h
end
____printzv_contents $const.value 0
set $p = $p->pListNext
end
end
define print_const_table
set $ind = 1
printf "[0x%08x] {\n", $arg0
____print_const_table $arg0
printf "}\n"
end
define ____print_ht
set $ht = $arg0
set $p = $ht->pListHead
while $p != 0
set $zval = *(struct _zval_struct **)$p->pData
set $i = $ind
while $i > 0
printf " "
set $i = $i - 1
end
if $p->nKeyLength > 0
printf "\"%s\" => ", $p->arKey
else
printf "%d => ", $p->h
end
____printzv $zval 1
set $p = $p->pListNext
end
end
define print_ht
set $ind = 1
printf "[0x%08x] {\n", $arg0
____print_ht $arg0
printf "}\n"
end
document print_ht
dumps elements of HashTable made of zval
end
define printzn
____executor_globals
set $ind = 0
set $znode = $arg0
if $znode->op_type == 1
set $optype = "IS_CONST"
end
if $znode->op_type == 2
set $optype = "IS_TMP_VAR"
end
if $znode->op_type == 4
set $optype = "IS_VAR"
end
if $znode->op_type == 8
set $optype = "IS_UNUSED"
end
printf "[0x%08x] %s", $znode, $optype
if $znode->op_type == 1
printf ": "
____printzv &$znode->u.constant 0
end
if $znode->op_type == 2
printf ": "
set $tvar = (union _temp_variable *)((char *)$eg.current_execute_data->Ts + $znode->u.var)
____printzv ((union _temp_variable *)$tvar)->tmp_var 0
end
if $znode->op_type == 4
printf ": "
set $tvar = (union _temp_variable *)((char *)$eg.current_execute_data->Ts + $znode->u.var)
____printzv *$tvar->var.ptr_ptr 0
end
if $znode->op_type == 8
printf "\n"
end
end
document printzn
print type and content of znode.
usage: printzn &opline->op1
end
define printzops
printf "op1 => "
printzn &execute_data->opline.op1
printf "op2 => "
printzn &execute_data->opline.op2
printf "result => "
printzn &execute_data->opline.result
end
document printzops
dump operands of the current opline
end
define zbacktrace
____executor_globals
dump_bt $eg.current_execute_data
end
document zbacktrace
prints backtrace.
This command is almost a short cut for
> (gdb) ____executor_globals
> (gdb) dump_bt $eg.current_execute_data
end
define zmemcheck
set $p = alloc_globals.head
set $stat = "?"
set $total_size = 0
if $arg0 != 0
set $not_found = 1
else
set $not_found = 0
end
printf " block size status file:line\n"
printf "-------------------------------------------------------------------------------\n"
while $p
set $aptr = $p + sizeof(struct _zend_mem_header) + sizeof(align_test)
if $arg0 == 0 || (void *)$aptr == (void *)$arg0
if $p->magic == 0x7312f8dc
set $stat = "OK"
end
if $p->magic == 0x99954317
set $stat = "FREED"
end
if $p->magic == 0xfb8277dc
set $stat = "CACHED"
end
set $filename = strrchr($p->filename, '/')
if !$filename
set $filename = $p->filename
else
set $filename = $filename + 1
end
printf " 0x%08x ", $aptr
if $p->size == sizeof(struct _zval_struct) && ((struct _zval_struct *)$aptr)->type >= 0 && ((struct _zval_struct *)$aptr)->type < 10
printf "ZVAL?(%-2d) ", $p->size
else
printf "%-9d ", $p->size
end
set $total_size = $total_size + $p->size
printf "%-06s %s:%d", $stat, $filename, $p->lineno
if $p->orig_filename
set $orig_filename = strrchr($p->orig_filename, '/')
if !$orig_filename
set $orig_filename = $p->orig_filename
else
set $orig_filename = $orig_filename + 1
end
printf " <= %s:%d\n", $orig_filename, $p->orig_lineno
else
printf "\n"
end
if $arg0 != 0
set $p = 0
set $not_found = 0
else
set $p = $p->pNext
end
else
set $p = $p->pNext
end
end
if $not_found
printf "no such block that begins at 0x%08x.\n", $aptr
end
if $arg0 == 0
printf "-------------------------------------------------------------------------------\n"
printf " total: %d bytes\n", $total_size
end
end
document zmemcheck
show status of a memory block.
usage: zmemcheck [ptr].
if ptr is 0, all blocks will be listed.
end
+277
View File
@@ -0,0 +1,277 @@
PHP Coding Standards
====================
This file lists several standards that any programmer, adding or changing
code in PHP, should follow. Since this file was added at a very late
stage of the development of PHP v3.0, the code base does not (yet) fully
follow it, but it's going in that general direction. Since we are now
well into the version 4 releases, many sections have been recoded to use
these rules.
Code Implementation
-------------------
[0] Document your code in source files and the manual. [tm]
[1] Functions that are given pointers to resources should not free them
For instance, function int mail(char *to, char *from) should NOT free
to and/or from.
Exceptions:
- The function's designated behavior is freeing that resource. E.g. efree()
- The function is given a boolean argument, that controls whether or not
the function may free its arguments (if true - the function must free its
arguments, if false - it must not)
- Low-level parser routines, that are tightly integrated with the token
cache and the bison code for minimum memory copying overhead.
[2] Functions that are tightly integrated with other functions within the
same module, and rely on each other non-trivial behavior, should be
documented as such and declared 'static'. They should be avoided if
possible.
[3] Use definitions and macros whenever possible, so that constants have
meaningful names and can be easily manipulated. The only exceptions
to this rule are 0 and 1, when used as false and true (respectively).
Any other use of a numeric constant to specify different behavior
or actions should be done through a #define.
[4] When writing functions that deal with strings, be sure to remember
that PHP holds the length property of each string, and that it
shouldn't be calculated with strlen(). Write your functions in a such
a way so that they'll take advantage of the length property, both
for efficiency and in order for them to be binary-safe.
Functions that change strings and obtain their new lengths while
doing so, should return that new length, so it doesn't have to be
recalculated with strlen() (e.g. php_addslashes())
[5] NEVER USE strncat(). If you're absolutely sure you know what you're doing,
check its man page again, and only then, consider using it, and even then,
try avoiding it.
[6] Use PHP_* macros in the PHP source, and ZEND_* macros in the Zend
part of the source. Although the PHP_* macro's are mostly aliased to the
ZEND_* macros it gives a better understanding on what kind of macro you're
calling.
[7] When commenting out code using a #if statement, do NOT use 0 only. Instead
use "<cvs username here>_0". For example, #if FOO_0, where FOO is your
cvs user foo. This allows easier tracking of why code was commented out,
especially in bundled libraries.
[8] Do not define functions that are not available. For instance, if a
library is missing a function, do not define the PHP version of the
function, and do not raise a run-time error about the function not
existing. End users should use function_exists() to test for the
existence of a function
[9] Prefer emalloc(), efree(), estrdup(), etc. to their standard C library
counterparts. These functions implement an internal "safety-net"
mechanism that ensures the deallocation of any unfreed memory at the
end of a request. They also provide useful allocation and overflow
information while running in debug mode.
In almost all cases, memory returned to the engine must be allocated
using emalloc().
The use of malloc() should be limited to cases where a third-party
library may need to control or free the memory, or when the memory in
question needs to survive between multiple requests.
Naming Conventions
------------------
[1] Function names for user-level functions should be enclosed with in
the PHP_FUNCTION() macro. They should be in lowercase, with words
underscore delimited, with care taken to minimize the letter count.
Abbreviations should not be used when they greatly decrease the
readability of the function name itself.
Good:
'mcrypt_enc_self_test'
'mysql_list_fields'
Ok:
'mcrypt_module_get_algo_supported_key_sizes'
(could be 'mcrypt_mod_get_algo_sup_key_sizes'?)
'get_html_translation_table'
(could be 'html_get_trans_table'?)
Bad:
'hw_GetObjectByQueryCollObj'
'pg_setclientencoding'
'jf_n_s_i'
[2] If they are part of a "parent set" of functions, that parent should
be included in the user function name, and should be clearly related
to the parent program or function family. This should be in the form
of parent_*.
A family of 'foo' functions, for example:
Good:
'foo_select_bar'
'foo_insert_baz'
'foo_delete_baz'
Bad:
'fooselect_bar'
'fooinsertbaz'
'delete_foo_baz'
[3] Function names used by user functions should be prefixed
with "_php_", and followed by a word or an underscore-delimited list of
words, in lowercase letters, that describes the function. If applicable,
they should be declared 'static'.
[4] Variable names must be meaningful. One letter variable names must be
avoided, except for places where the variable has no real meaning or
a trivial meaning (e.g. for (i=0; i<100; i++) ...).
[5] Variable names should be in lowercase. Use underscores to separate
between words.
[6] Method names follow the 'studlyCaps' (also referred to as 'bumpy case'
or 'camel caps') naming convention, with care taken to minimize the
letter count. The initial letter of the name is lowercase, and each
letter that starts a new 'word' is capitalized.
Good:
'connect()'
'getData()'
'buildSomeWidget()'
Bad:
'get_Data()'
'buildsomewidget'
'getI()'
[7] Classes should be given descriptive names. Avoid using abbreviations where
possible. Each word in the class name should start with a capital letter,
without underscore delimiters (CampelCaps starting with a capital letter).
The class name should be prefixed with the name of the 'parent set' (e.g.
the name of the extension).
Good:
'Curl'
'FooBar'
Bad:
'foobar'
'foo_bar'
Syntax and indentation
----------------------
[1] Never use C++ style comments (i.e. // comment). Always use C-style
comments instead. PHP is written in C, and is aimed at compiling
under any ANSI-C compliant compiler. Even though many compilers
accept C++-style comments in C code, you have to ensure that your
code would compile with other compilers as well.
The only exception to this rule is code that is Win32-specific,
because the Win32 port is MS-Visual C++ specific, and this compiler
is known to accept C++-style comments in C code.
[2] Use K&R-style. Of course, we can't and don't want to
force anybody to use a style he or she is not used to, but,
at the very least, when you write code that goes into the core
of PHP or one of its standard modules, please maintain the K&R
style. This applies to just about everything, starting with
indentation and comment styles and up to function declaration
syntax.
(see also http://www.catb.org/~esr/jargon/html/I/indent-style.html)
[3] Be generous with whitespace and braces. Always prefer:
if (foo) {
bar;
}
to:
if(foo)bar;
Keep one empty line between the variable declaration section and
the statements in a block, as well as between logical statement
groups in a block. Maintain at least one empty line between
two functions, preferably two.
[4] When indenting, use the tab character. A tab is expected to represent
four spaces. It is important to maintain consistency in indenture so
that definitions, comments, and control structures line up correctly.
[5] Preprocessor statements (#if and such) MUST start at column one. To
indent preprocessor directives you should put the # at the beginning
of a line, followed by any number of whitespace.
Testing
-------
[1] Extensions should be well tested using *.phpt tests. Read about that
in README.TESTING.
Documentation and Folding Hooks
-------------------------------
In order to make sure that the online documentation stays in line with
the code, each user-level function should have its user-level function
prototype before it along with a brief one-line description of what the
function does. It would look like this:
/* {{{ proto int abs(int number)
Returns the absolute value of the number */
PHP_FUNCTION(abs)
{
...
}
/* }}} */
The {{{ symbols are the default folding symbols for the folding mode in
Emacs and vim (set fdm=marker). Folding is very useful when dealing with
large files because you can scroll through the file quickly and just unfold
the function you wish to work on. The }}} at the end of each function marks
the end of the fold, and should be on a separate line.
The "proto" keyword there is just a helper for the doc/genfuncsummary script
which generates a full function summary. Having this keyword in front of the
function prototypes allows us to put folds elsewhere in the code without
messing up the function summary.
Optional arguments are written like this:
/* {{{ proto object imap_header(int stream_id, int msg_no [, int from_length [, int subject_length [, string default_host]]])
Returns a header object with the defined parameters */
And yes, please keep the prototype on a single line, even if that line
is massive.
New and Experimental Functions
-----------------------------------
To reduce the problems normally associated with the first public
implementation of a new set of functions, it has been suggested
that the first implementation include a file labeled 'EXPERIMENTAL'
in the function directory, and that the functions follow the
standard prefixing conventions during their initial implementation.
The file labelled 'EXPERIMENTAL' should include the following
information:
Any authoring information (known bugs, future directions of the module).
Ongoing status notes which may not be appropriate for CVS comments.
Aliases & Legacy Documentation
-----------------------------------
You may also have some deprecated aliases with close to duplicate
names, for example, somedb_select_result and somedb_selectresult. For
documentation purposes, these will only be documented by the most
current name, with the aliases listed in the documentation for
the parent function. For ease of reference, user-functions with
completely different names, that alias to the same function (such as
highlight_file and show_source), will be separately documented. The
proto should still be included, describing which function is aliased.
Backwards compatible functions and names should be maintained as long
as the code can be reasonably be kept as part of the codebase. See
/phpdoc/README for more information on documentation.
+2
View File
@@ -0,0 +1,2 @@
For the list of people who've put work into PHP, please see
http://www.php.net/credits.php
+14191
View File
File diff suppressed because it is too large. Load diff
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
+527
View File
@@ -0,0 +1,527 @@
List of PHP maintainers
=======================
Maintenance legend
------------------
Supported: Someone is actually paid to look after this.
Maintained: Someone actually looks after it.
Odd Fixes: It has a maintainer but they don't have time to do
much other than throw the odd patch in. See below.
Orphan: No current maintainer [but maybe you could take the
role as you write your new code].
Obsolete: Old code. Something tagged obsolete generally means
it has been replaced by a better system and you
should be using that.
Unknown: Not known at this time.
Status legend
-------------
Working: Working under both Windows and Unix.
Windows: Working only under Windows.
Unix: Working only under Unix.
Experimental: Under development or initial release.
Not Working: Not working.
Unknown: Status unknown.
== Server APIs ==
-------------------------------------------------------------------------------
EXTENSION: aolserver
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: apache
PRIMARY MAINTAINER: Rasmus Lerdorf <rasmus@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: apache_hooks
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: apache2filter
PRIMARY MAINTAINER: Aaron Bannert <aaron@php.net>
MAINTENANCE: Maintained
STATUS: Experimental
-------------------------------------------------------------------------------
EXTENSION: apache2handler
PRIMARY MAINTAINER: Aaron Bannert <aaron@php.net>, Ilia Alshanetsky <iliaa@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: caudium
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: cgi
MAINTENANCE: Unknown
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: cli
MAINTENANCE: Marcus Boerger <helly@php.net>, Edin Kadribasic <edink@php.net>
STATUS: Working
SINCE: 4.3.0
-------------------------------------------------------------------------------
EXTENSION: continuity
PRIMARY MAINTAINER: Alex Leigh <aleigh@php.net>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: date
PRIMARY MAINTAINER: Derick Rethans <derick@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: embed
PRIMARY MAINTAINER: Edin Kadribasic <edink@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: isapi
MAINTENANCE: Unknown
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: milter
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: nsapi
PRIMARY MAINTAINER: Uwe Schindler <thetaphi@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: phttpd
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: pi3web
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: roxen
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: thttpd
PRIMARY MAINTAINER: Sascha Schumann <sascha@schumann.cx>
MAINTENANCE: Odd fixes
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: tux
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: webjames
PRIMARY MAINTAINER: Alex Waugh <alex@alexwaugh.com>
MAINTENANCE: Maintained
STATUS: Experimental
-------------------------------------------------------------------------------
== Database extensions ==
-------------------------------------------------------------------------------
EXTENSION: dba
PRIMARY MAINTAINER: Marcus Börger <helly@php.net>
MAINTENANCE: Maintained
STATUS: Working
COMMENT: DBM abstraction for db2, db3, db4, dbm, ndbm, gdbm, ini
-------------------------------------------------------------------------------
EXTENSION: dbase
MAINTENANCE: Orphaned
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: dbx
PRIMARY MAINTAINER: Marc Boeren <M.Boeren@guidance.nl>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 4.0.6
COMMENT: DB abstraction for odbc, mysql, pgsql, mssql, fbsql and more, see documentation
-------------------------------------------------------------------------------
EXTENSION: fbsql
PRIMARY MAINTAINER: Frank M. Kromann <fmk@swwwing.com>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: informix
PRIMARY MAINTAINER: Danny Heijl <Danny.Heijl@cevi.be>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: ingres_ii
PRIMARY MAINTAINER: David Hénot <henot@php.net>
MAINTENANCE: Maintained
STATUS: Experimental
SINCE: 4.0.2
-------------------------------------------------------------------------------
EXTENSION: interbase
PRIMARY MAINTAINER: Ard Biesheuvel <ard@ard.nu>, Jouni Ahto <jouni.ahto@exdec.fi>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: msql
MAINTENANCE: Unknown
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mssql
PRIMARY MAINTAINER: Frank M. Kromann <fmk@swwwing.com>
MAINTENANCE: Maintained
STATUS: Working
COMMENT: Tested on phpts and isapi versions
-------------------------------------------------------------------------------
EXTENSION: mysql
PRIMARY MAINTAINER: Zak Greant <zak@mysql.com>, Georg Richter <georg@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mysqli
PRIMARY MAINTAINER: Georg Richter <georg@php.net>, Andrey Hristov <andrey@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.0
-------------------------------------------------------------------------------
EXTENSION: oci8
PRIMARY MAINTAINER: Antony Dovgal <tony2001@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: odbc
PRIMARY MAINTAINER: Daniel R. Kalowsky <kalowsky@php.net>
MAINTENANCE: Maintained
STATUS: Working
COMMENT: Working
-------------------------------------------------------------------------------
EXTENSION: oracle
MAINTENANCE: Orphaned
STATUS: Working
COMMENT: Using the new OCI8 driver is encouraged where possible.
-------------------------------------------------------------------------------
EXTENSION: ovrimos
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: pgsql
PRIMARY MAINTAINER: Marcus Boerger <helly@php.net>, Yasuo Ohgaki <yohgaki@php.net>
MAINTENANCE: Maintained
STATUS: Working
COMMENT: Use PostgreSQL 7.0.x or later. PostgreSQL 6.5.3 or less have fatal bug.
-------------------------------------------------------------------------------
EXTENSION: sqlite
PRIMARY MAINTAINER: Marcus Boerger <helly@php.net>, Wez Furlong <wez@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.0 (Since 4.3.2 in PECL)
COMMENT: Integrates SQLite embeddable SQL database engine.
-------------------------------------------------------------------------------
EXTENSION: sybase
MAINTENANCE: Unknown
STATUS: Not Working
-------------------------------------------------------------------------------
EXTENSION: sybase_ct
MAINTENANCE: Unknown
STATUS: Working
-------------------------------------------------------------------------------
== XML extensions ==
-------------------------------------------------------------------------------
EXTENSION: dom
PRIMARY MAINTAINER: Christian Stocker <chregu@php.net>, Rob Richards <rrichards@php.net>, Marcus Boerger <helly@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.0
-------------------------------------------------------------------------------
EXTENSION: simplexml
PRIMARY MAINTAINER: Sterling Hughes <sterling@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.0
-------------------------------------------------------------------------------
EXTENSION: soap
PRIMARY MAINTAINER: Dmitry Stogov <dmitry@zend.com>
MAINTENANCE: Maintained
STATUS: Experimental
-------------------------------------------------------------------------------
EXTENSION: wddx
PRIMARY MAINTAINER: Andrei Zmievski <andrei@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: xml
PRIMARY MAINTAINER: Thies C. Arntzen <thies@thieso.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: xmlrpc
PRIMARY MAINTAINER: Dan Libby
MAINTENANCE: UNKNOWN
STATUS: Experimental
-------------------------------------------------------------------------------
EXTENSION: xsl
PRIMARY MAINTAINER: Christian Stocker <chregu@php.net>, Rob Richards <rrichards@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.0
-------------------------------------------------------------------------------
== Other extensions ==
-------------------------------------------------------------------------------
EXTENSION: bcmath
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: bz2
PRIMARY MAINTAINER: Hartmut Holzgraefe <hholzgra@php.net>
MAINTENANCE: Odd Fixes
STATUS: Working
SINCE: 4.0.3
-------------------------------------------------------------------------------
EXTENSION: calendar
PRIMARY MAINTAINER: Hartmut Holzgraefe <hholzgra@php.net>
MAINTENANCE: Odd Fixes
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: com_dotnet
PRIMARY MAINTAINER: Wez Furlong <wez@php.net>
MAINTENANCE: Maintained
STATUS: Windows
SINCE: 5.0
-------------------------------------------------------------------------------
EXTENSION: cpdf
PRIMARY MAINTAINER: Uwe Steinmann <steinm@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: ctype
PRIMARY MAINTAINER: Hartmut Holzgraefe <hholzgra@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: curl
PRIMARY MAINTAINER: Sterling Hughes <sterling@php.net>,Ilia Alshanetsky <iliaa@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 4.0.2
-------------------------------------------------------------------------------
EXTENSION: exif
PRIMARY MAINTAINER: Marcus Boerger <helly@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 4.2
-------------------------------------------------------------------------------
EXTENSION: fam
PRIMARY MAINTAINER: Sascha Schumann <sascha@schumann.cx>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: fdf
PRIMARY MAINTAINER: Uwe Steinmann <steinm@php.net>
MAINTENANCE: Maintained
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: filepro
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: ftp
PRIMARY MAINTAINER: Stefan Esser (sesser@php.net)
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: gd
PRIMARY MAINTAINER: Rasmus Lerdorf <rasmus@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: gettext
MAINTENANCE: Unknown
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: gmp
MAINTENANCE: Unknown
STATUS: Unknown
SINCE: 4.0.4
-------------------------------------------------------------------------------
EXTENSION: hwapi
PRIMARY MAINTAINER: Uwe Steinmann <steinm@php.net>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: iconv
PRIMARY MAINTAINER: Moriyoshi Koizumi <moriyoshi@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: imap
PRIMARY MAINTAINER: Chuck Hagenbuch <chuck@horde.org>, Ilia Alshanetsky <iliaa@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: ircg
PRIMARY MAINTAINER: Sascha Schumann <sascha@schumann.cx>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: ldap
PRIMARY MAINTAINER: Stig Venaas <venaas@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mbstring
PRIMARY MAINTAINER: Rui Hirokawa <hirokawa@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mcrypt
PRIMARY MAINTAINER: Derick Rethans <derick@derickrethans.nl>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mcve
PRIMARY MAINTAINER: Unknown
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: mhash
PRIMARY MAINTAINER: Sascha Schumann <sascha@schumann.cx>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: mime_magic
PRIMARY MAINTAINER: Unknown
MAINTENANCE: Deprecated
STATUS: Experimental
COMMENT: Use PECL's fileinfo extension instead
-------------------------------------------------------------------------------
EXTENSION: ming
PRIMARY MAINTAINER: Frank M. Kromann
MAINTENANCE: Unknown
STATUS: Experimental
-------------------------------------------------------------------------------
EXTENSION: mnogosearch
PRIMARY MAINTAINER: Sergey Kartashoff <gluke@mail.ru>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: mono
PRIMARY MAINTAINER: Sterling Hughes <sterling@php.net>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: msession
PRIMARY MAINTAINER Mark L. Woodward <mlwmohawk@mohawksoft.com>
MAINTENANCE: Maintained
STATUS: Working/Experimental
COMMENT: Tested on Linux, should work on other UNIX platforms. Backend server code can compile under Windows.
-------------------------------------------------------------------------------
EXTENSION: ncurses
PRIMARY MAINTAINER Ilia Alshanetsky <iliaa@php.net>, Wez Furlong <wez@php.net>, Hartmut Holzgraefe <hholzgra@php.net>, Georg Richter <georg@php.net>
MAINTENANCE: Unknown
STATUS: Experimental
-------------------------------------------------------------------------------
EXTENSION: openssl
PRIMARY MAINTAINER: Wez Furlong <wez@php.net>
MAINTENANCE: Maintained
STATUS: Experimental
SINCE: 4.0.4
-------------------------------------------------------------------------------
EXTENSION: pcntl
MAINTENANCE: Unknown
STATUS: Experimental
-------------------------------------------------------------------------------
EXTENSION: pcre
PRIMARY MAINTAINER: Andrei Zmievski <andrei@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: pfpro
PRIMARY MAINTAINER: David Croft <david@infotrek.co.uk>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 4.0.2
-------------------------------------------------------------------------------
EXTENSION: posix
PRIMARY MAINTAINER: Kristian Köhntopp <kris@koehntopp.de>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: pspell
PRIMARY MAINTAINER: Vlad Krupin <phpdevel@echospace.com>
MAINTENANCE: Unknown
STATUS: Working
SINCE: 4.0.2
-------------------------------------------------------------------------------
EXTENSION: readline
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: recode
PRIMARY MAINTAINER: Kristian Köhntopp <kris@koehntopp.de>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: session
PRIMARY MAINTAINER: Sascha Schumann <sascha@schumann.cx>, Ilia Alshanetsky <iliaa@php.net>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: shmop
PRIMARY MAINTAINER: Ilia Alshanetsky <iliaa@php.net>
MAINTENANCE: Maintained
STATUS: Experimental
SINCE: 4.0.3
-------------------------------------------------------------------------------
EXTENSION: snmp
PRIMARY MAINTAINER: Rasmus Lerdorf <rasmus@php.net>
MAINTENANCE: Odd Fixes
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: sockets
PRIMARY MAINTAINER: Chris Vandomelen <chrisv@b0rked.dhs.org>
MAINTENANCE: Maintained
STATUS: Experimental
SINCE: 4.0.2
-------------------------------------------------------------------------------
EXTENSION: spl
PRIMARY MAINTAINER: Marcus Boerger <helly@php.net>
MAINTENANCE: Maintained
STATUS: Working
SINCE: 5.0.0
-------------------------------------------------------------------------------
EXTENSION: sysvmsg
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: sysvsem
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: sysvshm
MAINTENANCE: Unknown
STATUS: Working
-------------------------------------------------------------------------------
EXTENSION: tidy
PRIMARY MAINTAINER: John Coggeshall <john@php.net>, Ilia Alshanetsky <iliaa@php.net>
MAINTENANCE: Maintained
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: tokenizer
PRIMARY MAINTAINER: Andrei Zmievski <andrei@php.net>
MAINTENANCE: Unknown
STATUS: Unknown
-------------------------------------------------------------------------------
EXTENSION: yaz
PRIMARY MAINTAINER: Adam Dickmeiss <adam@indexdata.dk>
MAINTENANCE: Maintained
STATUS: Unknown
SINCE: 4.0.1
-------------------------------------------------------------------------------
EXTENSION: zlib
PRIMARY MAINTAINER: Stefan Roehrich <sr@linux.de>
MAINTENANCE: Maintained
STATUS: Working
-------------------------------------------------------------------------------
+2097
View File
File diff suppressed because it is too large. Load diff
+68
View File
@@ -0,0 +1,68 @@
--------------------------------------------------------------------
The PHP License, version 3.01
Copyright (c) 1999 - 2006 The PHP Group. All rights reserved.
--------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
modification, is permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
3. The name "PHP" must not be used to endorse or promote products
derived from this software without prior written permission. For
written permission, please contact group@php.net.
4. Products derived from this software may not be called "PHP", nor
may "PHP" appear in their name, without prior written permission
from group@php.net. You may indicate that your software works in
conjunction with PHP by saying "Foo for PHP" instead of calling
it "PHP Foo" or "phpfoo"
5. The PHP Group may publish revised and/or new versions of the
license from time to time. Each version will be given a
distinguishing version number.
Once covered code has been published under a particular version
of the license, you may always continue to use it under the terms
of that version. You may also choose to use such covered code
under the terms of any subsequent version of the license
published by the PHP Group. No one other than the PHP Group has
the right to modify the terms applicable to covered code created
under this License.
6. Redistributions of any form whatsoever must retain the following
acknowledgment:
"This product includes PHP software, freely available from
<http://www.php.net/software/>".
THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND
ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP
DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------
This software consists of voluntary contributions made by many
individuals on behalf of the PHP Group.
The PHP Group can be contacted via Email at group@php.net.
For more information on the PHP Group and the PHP project,
please see <http://www.php.net>.
PHP includes the Zend Engine, freely available at
<http://www.zend.com>.
+23
View File
@@ -0,0 +1,23 @@
#
# Zend
#
$(builddir)/zend_language_scanner.lo: $(builddir)/zend_language_parser.h
$(builddir)/zend_ini_scanner.lo: $(builddir)/zend_ini_parser.h
$(builddir)/zend_language_scanner.c: $(srcdir)/zend_language_scanner.l
@$(LEX) -Pzend -S$(srcdir)/flex.skl -o$@ -i $(srcdir)/zend_language_scanner.l
$(builddir)/zend_language_parser.h: $(builddir)/zend_language_parser.c
$(builddir)/zend_language_parser.c: $(srcdir)/zend_language_parser.y
@$(YACC) -p zend -v -d $(srcdir)/zend_language_parser.y -o $@
$(builddir)/zend_ini_parser.h: $(builddir)/zend_ini_parser.c
$(builddir)/zend_ini_parser.c: $(srcdir)/zend_ini_parser.y
@$(YACC) -p ini_ -v -d $(srcdir)/zend_ini_parser.y -o $@
$(builddir)/zend_ini_scanner.c: $(srcdir)/zend_ini_scanner.l
@$(LEX) -Pini_ -S$(srcdir)/flex.skl -o$@ -i $(srcdir)/zend_ini_scanner.l
$(builddir)/zend_indent.lo $(builddir)/zend_highlight.lo $(builddir)/zend_compile.lo: $(builddir)/zend_language_parser.h
+70
View File
@@ -0,0 +1,70 @@
#
# LCOV
#
lcov: lcov-html
lcov-test: all
@echo "Running test suite"
@find . -name \*.gcda -o -name \*.da -o -name \*.bbg? | xargs rm -f
-@if test ! -z "$(PHP_EXECUTABLE)" && test -x "$(PHP_EXECUTABLE)"; then \
NO_INTERACTION=1 \
TEST_PHP_EXECUTABLE=$(PHP_EXECUTABLE) \
TEST_PHP_SRCDIR=$(top_srcdir) \
CC="$(CC)" \
$(PHP_EXECUTABLE) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php -d 'extension_dir=modules/' -d `( . $(PHP_MODULES) ; echo extension=$$dlname)` tests/; \
elif test ! -z "$(SAPI_CLI_PATH)" && test -x "$(SAPI_CLI_PATH)"; then \
NO_INTERACTION=1 \
TEST_PHP_EXECUTABLE=$(top_builddir)/$(SAPI_CLI_PATH) \
TEST_PHP_SRCDIR=$(top_srcdir) \
CC="$(CC)" \
$(top_builddir)/$(SAPI_CLI_PATH) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php $(TESTS); \
else \
echo "ERROR: Cannot run tests without CLI sapi."; \
fi
php_lcov.info: lcov-test
@echo "Generating data for $@"
@rm -rf lcov_data/
@$(mkinstalldirs) lcov_data/
@echo
-@find . -name \*.gcda -o -name \*.gcno -o -name \*.da | sed -e 's/^\.\///' | sed -e 's/\.gcda//g' -e 's/\.gcno//g' -e 's/\.da//g' | uniq | while read x; do \
echo -n . ;\
y=`echo $$x | sed -e 's!\.libs/!!'`; \
dir=lcov_data/`dirname $$x`; \
test -d "$$dir" || $(mkinstalldirs) "$$dir"; \
if test -f "$(top_srcdir)/$$y.c"; then \
ln -f -s $(top_srcdir)/$$y.c lcov_data/$$y.c; \
fi; \
if test -f "$(top_srcdir)/$$y.re"; then \
ln -f -s $(top_srcdir)/$$y.re lcov_data/$$y.re; \
fi; \
if test -f "$(top_srcdir)/$$y.y"; then \
ln -f -s $(top_srcdir)/$$y.y lcov_data/$$y.y; \
fi; \
if test -f "$(top_srcdir)/$$y.l"; then \
ln -f -s $(top_srcdir)/$$y.l lcov_data/$$y.l; \
fi; \
if test -f "$(top_builddir)/$$y.c"; then \
ln -f -s $(top_builddir)/$$y.c lcov_data/$$y.c; \
fi; \
test -f "$$x.gcno" && cp $$x.gcno lcov_data/$$y.gcno ; \
test -f "$$x.gcda" && cp $$x.gcda lcov_data/$$y.gcda ; \
test -f "$$x.da" && cp $$x.da lcov_data/$$y.da ; \
test -f "$$x.bb" && cp $$x.bb lcov_data/$$y.bb ; \
test -f "$$x.bbg" && cp $$x.bbg lcov_data/$$y.bbg ; \
done
@echo
@echo "Generating $@"
@$(LTP) --directory lcov_data/ --capture --base-directory=lcov_data --output-file $@
lcov-html: php_lcov.info
@echo "Generating lcov HTML"
@$(LTP_GENHTML) --legend --no-prefix --output-directory lcov_html/ --title "PHP Code Coverage" --show-details php_lcov.info
lcov-clean:
rm -f php_lcov.info
rm -rf lcov_data/
rm -rf lcov_html/
+100
View File
@@ -0,0 +1,100 @@
mkinstalldirs = $(top_srcdir)/build/shtool mkdir -p
INSTALL = $(top_srcdir)/build/shtool install -c
INSTALL_DATA = $(INSTALL) -m 644
DEFS = -DPHP_ATOM_INC -I$(top_builddir)/include -I$(top_builddir)/main -I$(top_srcdir)
COMMON_FLAGS = $(DEFS) $(INCLUDES) $(EXTRA_INCLUDES) $(CPPFLAGS) $(PHP_FRAMEWORKPATH)
all: $(all_targets)
@echo
@echo "Build complete."
@echo "(It is safe to ignore warnings about tempnam and tmpnam)."
@echo
build-modules: $(PHP_MODULES)
libphp5.la: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS)
$(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -rpath $(phptempdir) $(EXTRA_LDFLAGS) $(LDFLAGS) $(PHP_RPATHS) $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@
-@$(LIBTOOL) --silent --mode=install cp libphp5.la $(phptempdir)/libphp5.la >/dev/null 2>&1
libs/libphp5.bundle: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS)
$(CC) $(MH_BUNDLE_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(PHP_GLOBAL_OBJS:.lo=.o) $(PHP_SAPI_OBJS:.lo=.o) $(PHP_FRAMEWORKS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@ && cp $@ libs/libphp5.so
install: $(all_targets) $(install_targets)
install-sapi: $(OVERALL_TARGET)
@echo "Installing PHP SAPI module: $(PHP_SAPI)"
-@$(mkinstalldirs) $(INSTALL_ROOT)$(bindir)
-@if test ! -r $(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME); then \
for i in 0.0.0 0.0 0; do \
if test -r $(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME).$$i; then \
$(LN_S) $(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME).$$i $(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME); \
break; \
fi; \
done; \
fi
@$(INSTALL_IT)
install-modules: build-modules
@test -d modules && \
$(mkinstalldirs) $(INSTALL_ROOT)$(EXTENSION_DIR)
@echo "Installing shared extensions: $(INSTALL_ROOT)$(EXTENSION_DIR)/"
@rm -f modules/*.la >/dev/null 2>&1
@$(INSTALL) modules/* $(INSTALL_ROOT)$(EXTENSION_DIR)
install-headers:
-@if test "$(INSTALL_HEADERS)"; then \
for i in $(INSTALL_HEADERS); do \
i=`$(top_srcdir)/build/shtool path -d $$i`; \
paths="$$paths $(INSTALL_ROOT)$(phpincludedir)/$$i"; \
done; \
$(mkinstalldirs) $$paths && \
echo "Installing header files: $(INSTALL_ROOT)$(phpincludedir)/" && \
for i in $(INSTALL_HEADERS); do \
if test "$(PHP_PECL_EXTENSION)"; then \
src=`echo $$i | $(SED) -e "s#ext/$(PHP_PECL_EXTENSION)/##g"`; \
else \
src=$$i; \
fi; \
if test -f "$(top_srcdir)/$$src"; then \
$(INSTALL_DATA) $(top_srcdir)/$$src $(INSTALL_ROOT)$(phpincludedir)/$$i; \
elif test -f "$(top_builddir)/$$src"; then \
$(INSTALL_DATA) $(top_builddir)/$$src $(INSTALL_ROOT)$(phpincludedir)/$$i; \
else \
(cd $(top_srcdir)/$$src && $(INSTALL_DATA) *.h $(INSTALL_ROOT)$(phpincludedir)/$$i; \
cd $(top_builddir)/$$src && $(INSTALL_DATA) *.h $(INSTALL_ROOT)$(phpincludedir)/$$i) 2>/dev/null || true; \
fi \
done; \
fi
install-su: install-pear
test: all
-@if test ! -z "$(PHP_EXECUTABLE)" && test -x "$(PHP_EXECUTABLE)"; then \
TEST_PHP_EXECUTABLE=$(PHP_EXECUTABLE) \
TEST_PHP_SRCDIR=$(top_srcdir) \
CC="$(CC)" \
$(PHP_EXECUTABLE) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php -d 'extension_dir=modules/' -d `( . $(PHP_MODULES) ; echo extension=$$dlname)` tests/; \
elif test ! -z "$(SAPI_CLI_PATH)" && test -x "$(SAPI_CLI_PATH)"; then \
TEST_PHP_EXECUTABLE=$(top_builddir)/$(SAPI_CLI_PATH) \
TEST_PHP_SRCDIR=$(top_srcdir) \
CC="$(CC)" \
$(top_builddir)/$(SAPI_CLI_PATH) -d 'open_basedir=' -d 'safe_mode=0' -d 'output_buffering=0' -d 'memory_limit=-1' $(top_srcdir)/run-tests.php $(TESTS); \
else \
echo "ERROR: Cannot run tests without CLI sapi."; \
fi
clean:
find . -name \*.lo -o -name \*.o | xargs rm -f
find . -name \*.la -o -name \*.a | xargs rm -f
find . -name \*.so | xargs rm -f
find . -name .libs -a -type d|xargs rm -rf
rm -f libphp5.la $(SAPI_CLI_PATH) $(OVERALL_TARGET) modules/* libs/*
distclean: clean
rm -f config.cache config.log config.status Makefile.objects Makefile.fragments libtool main/php_config.h stamp-h php5.spec sapi/apache/libphp5.module buildmk.stamp
$(EGREP) define'.*include/php' $(top_srcdir)/configure | $(SED) 's/.*>//'|xargs rm -f
find . -name Makefile | xargs rm -f
.PHONY: all clean install distclean test
.NOEXPORT:
+1340
View File
File diff suppressed because it is too large. Load diff
+115
View File
@@ -0,0 +1,115 @@
This is the first file you should be reading after you get your CVS account.
We'll assume you're basically familiar with CVS, but feel free to post
your questions on the mailing list. Please have a look at
http://cvsbook.red-bean.com/ for more detailed information on CVS.
PHP is developed through the efforts of a large number of people.
Collaboration is a Good Thing(tm), and CVS lets us do this. Thus, following
some basic rules with regards to CVS usage will:
a. Make everybody happier, especially those responsible for maintaining
the CVS itself.
b. Keep the changes consistently well documented and easily trackable.
c. Prevent some of those 'Oops' moments.
d. Increase the general level of good will on planet Earth.
Having said that, here are the organizational rules:
1. Respect other people working on the project.
2. Discuss any significant changes on the list before committing.
3. Look at EXTENSIONS file to see who is the primary maintainer of
the code you want to contribute to.
4. If you "strongly disagree" about something another person did, don't
start fighting publicly - take it up in private email.
5. If you don't know how to do something, ask first!
6. Test your changes before committing them. We mean it. Really.
Currently we have the following branches in use:
HEAD Will become PHP 6.0. This CVS branch is for active development.
PHP_5_1 Is used to release the PHP 5.1.x series. Only minor feature
enhancements may go in here, but please keep that as infrequent as
possible.
PHP_4_4 Is used to release the PHP 4.4.x series. Only bugfixes are permitted
on this branch.
The next few rules are more of a technical nature.
1. DO NOT TOUCH ChangeLog! It is automagically updated from the commit
messages every day. Woe be to those who attempt to mess with it.
2. All news updates intended for public viewing, such as new features,
bug fixes, improvements, etc., should go into the NEWS file.
NB! Lines, starting with @ will go automagically into NEWS file, but
this is NOT recommended, though. Please, add news entries directly to
NEWS file and don't forget to keep them adjusted and sorted.
3. Do not commit multiple file and dump all messages in one commit. If you
modified several unrelated files, commit each group separately and
provide a nice commit message for each one. See example below.
4. Do write your commit message in such a way that it makes sense even
without the corresponding diff. One should be able to look at it, and
immediately know what was modified. Definitely include the function name
in the message as shown below.
5. In your commit messages, keep each line shorter than 80 characters. And
try to align your lines vertically, if they wrap. It looks bad otherwise.
6. If you modified a function that is callable from PHP, prepend PHP to
the function name as shown below.
The format of the commit messages is pretty simple.
Use a - to start a new item in your commit message.
If a line begins with #, it is taken to be a comment and will not appear
in the ChangeLog. Everything else goes into the ChangeLog.
It is important to note that if your comment or news logline spans multiple
lines, you have to put # at the beginning of _every_ such line.
Example. Say you modified two files, datetime.c and string.c. In datetime.c you
added a new format option for the date() function, and in string.c you fixed a
memory leak in php_trim(). Don't commit both of these at once. Commit them
separately and try to make sure your commit messages look something like the
following.
For datetime.c:
- Added new 'K' format modifier to date() for printing out number of days until
New Year's Eve.
For string.c:
- Fixed a memory leak in php_trim() resulting from improper use of zval_dtor().
#- Man, that thing was leaking all over the place!
The # lines will be omitted from the ChangeLog automagically.
If you fix some bugs, you should note the bug ID numbers in your
commit message. Bug ID should be prefixed by "#" for easier access to
bug report when developers are browsing CVS via. LXR or Bonsai.
Example:
Fixed bug #14016 (pgsql notice handler double free crash bug.)
If you don't see your messages in ChangeLog right away, don't worry!
These files are updated once a day, so your stuff will not show up until
somewhat later.
You can use LXR (http://lxr.php.net/) and Bonsai (http://bonsai.php.net/)
to look at PHP CVS repository in various ways.
To receive daily updates to ChangeLog and NEWS, send an empty message to
php-cvs-daily-subscribe@lists.php.net.
Happy hacking,
PHP Team
+39
View File
@@ -0,0 +1,39 @@
Between PHP 4.0.6 and 4.1.0, the Zend module struct changed in a way
that broke both source and binary compatibility. If you are
maintaining a third party extension, here's how to update it:
If this was your old module entry:
zend_module_entry foo_module_entry = {
"foo", /* extension name */
foo_functions, /* extension function list */
NULL, /* extension-wide startup function */
NULL, /* extension-wide shutdown function */
PHP_RINIT(foo), /* per-request startup function */
PHP_RSHUTDOWN(foo), /* per-request shutdown function */
PHP_MINFO(foo), /* information function */
STANDARD_MODULE_PROPERTIES
};
Here's how it should look if you want your code to build with PHP
4.1.0 and up:
zend_module_entry foo_module_entry = {
#if ZEND_MODULE_API_NO >= 20010901
STANDARD_MODULE_HEADER,
#endif
"foo", /* extension name */
foo_functions, /* extension function list */
NULL, /* extension-wide startup function */
NULL, /* extension-wide shutdown function */
PHP_RINIT(foo), /* per-request startup function */
PHP_RSHUTDOWN(foo), /* per-request shutdown function */
PHP_MINFO(foo), /* information function */
#if ZEND_MODULE_API_NO >= 20010901
FOO_VERSION, /* extension version number (string) */
#endif
STANDARD_MODULE_PROPERTIES
};
If you don't care about source compatibility with earlier PHP releases
than 4.1.0, you can drop the #if/#endif lines.
+194
View File
@@ -0,0 +1,194 @@
(NOTE: you may also want to take a look at the pear package
PECL_Gen, a PHP-only alternative for this script that
supports way more extension writing tasks and is
supposed to replace ext_skel completely in the long run ...)
WHAT IT IS
It's a tool for automatically creating the basic framework for a PHP module
and writing C code handling arguments passed to your functions from a simple
configuration file. See an example at the end of this file.
HOW TO USE IT
Very simple. First, change to the ext/ directory of the PHP 4 sources. If
you just need the basic framework and will be writing all the code in your
functions yourself, you can now do
./ext_skel --extname=module_name
and everything you need is placed in directory module_name.
[ Note that GNU awk is likely required for this script to work. Debian
systems seem to default to using mawk, so you may need to change the
#! line in skeleton/create_stubs and the cat $proto | awk line in
ext_skel to use gawk explicitly. ]
If you don't need to test the existence of any external header files,
libraries or functions in them, the module is already almost ready to be
compiled in PHP. Just remove 3 comments in your_module_name/config.m4,
change back up to PHP sources top directory, and do
./buildconf; ./configure --enable-module_name; make
But if you already have planned the overall scheme of your module, what
functions it will contain, their return types and the arguments they take
(a very good idea) and don't want to bother yourself with creating function
definitions and handling arguments passed yourself, it's time to create a
function definitions file, which you will give as an argument to ext_skel
with option
--proto=filename.
FORMAT OF FUNCTION DEFINITIONS FILE
All the definitions must be on one line. In it's simplest form, it's just
the function name, e.g.
my_function
but then you'll be left with an almost empty function body without any
argument handling.
Arguments are given in parenthesis after the function name, and are of
the form 'argument_type argument_name'. Arguments are separated from each
other with a comma and optional space. Argument_type can be one of int,
bool, double, float, string, array, object or mixed.
An optional argument is separated from the previous by an optional space,
then '[' and of course comma and optional space, like all the other
arguments. You should close a row of optional arguments with same amount of
']'s as there where '['s. Currently, it does not harm if you forget to do it
or there is a wrong amount of ']'s, but this may change in the future.
An additional short description may be added after the parameters.
If present it will be filled into the 'proto' header comments in the stubs
code and the <refpurpose> tag in the XML documentation.
An example:
my_function(int arg1, int arg2 [, int arg3 [, int arg4]]) this is my 1st
Arguments arg3 and arg4 are optional.
If possible, the function definition should also contain it's return type
in front of the definition. It's not actually used for any C code generating
purposes but PHP in-source documentation instead, and as such, very useful.
It can be any of int, double, string, bool, array, object, resource, mixed
or void.
The file must contain nothing else but function definitions, no comments or
empty lines.
OTHER OPTIONS
--no-help
By default, ext_skel creates both comments in the source code and a test
function to help first time module writers to get started and testing
configuring and compiling their module. This option turns off all such things
which may just annoy experienced PHP module coders. Especially useful with
--stubs=file
which will leave out also all module specific stuff and write just function
stubs with function value declarations and passed argument handling, and
function entries and definitions at the end of the file, for copying and
pasting into an already existing module.
--assign-params
--string-lens
By default, function proto 'void foo(string bar)' creates the following:
...
zval **bar;
... (zend_get_parameters_ex() called in the middle...)
convert_to_string_ex(bar);
Specifying both of these options changes the generated code to:
...
zval **bar_arg;
int bar_len;
char *bar = NULL;
... (zend_get_parameters_ex() called in the middle...)
convert_to_string_ex(bar_arg);
bar = Z_STRVAL_PP(bar_arg);
bar_len = Z_STRLEN_PP(bar_arg);
You shouldn't have to ask what happens if you leave --string-lens out. If you
have to, it's questionable whether you should be reading this document.
--with-xml[=file]
Creates the basics for phpdoc .xml file.
--full-xml
Not implemented yet. When or if there will ever be created a framework for
self-contained extensions to use phpdoc system for their documentation, this
option enables it on the created xml file.
CURRENT LIMITATIONS, BUGS AND OTHER ODDITIES
Only arguments of types int, bool, double, float, string and array are
handled. For other types you must write the code yourself. And for type
mixed, it wouldn't even be possible to write anything, because only you
know what to expect.
It can't handle correctly, and probably never will, variable list of
of arguments. (void foo(int bar [, ...])
Don't trust the generated code too much. It tries to be useful in most of
the situations you might encounter, but automatic code generation will never
beat a programmer who knows the real situation at hand. ext_skel is generally
best suited for quickly generating a wrapper for c-library functions you
might want to have available in PHP too.
This program doesn't have a --help option. It has --no-help instead.
EXAMPLE
The following _one_ line
bool my_drawtext(resource image, string text, resource font, int x, int y [, int color])
will create this function definition for you (note that there are a few
question marks to be replaced by you, and you must of course add your own
value definitions too):
/* {{{ proto bool my_drawtext(resource image, string text, resource font, int x, int y[, int color])
*/
PHP_FUNCTION(my_drawtext)
{
zval **image, **text, **font, **x, **y, **color;
int argc;
int image_id = -1;
int font_id = -1;
argc = ZEND_NUM_ARGS();
if (argc < 5 || argc > 6 || zend_get_parameters_ex(argc, &image, &text, &font, &x, &y, &color) == FAILURE) {
WRONG_PARAM_COUNT;
}
ZEND_FETCH_RESOURCE(???, ???, image, image_id, "???", ???_rsrc_id);
ZEND_FETCH_RESOURCE(???, ???, font, font_id, "???", ???_rsrc_id);
switch (argc) {
case 6:
convert_to_long_ex(color);
/* Fall-through. */
case 5:
convert_to_long_ex(y);
convert_to_long_ex(x);
/* font: fetching resources already handled. */
convert_to_string_ex(text);
/* image: fetching resources already handled. */
break;
default:
WRONG_PARAM_COUNT;
}
php_error(E_WARNING, "my_drawtext: not yet implemented");
}
/* }}} */
+127
View File
@@ -0,0 +1,127 @@
New parameter parsing functions
===============================
It should be easier to parse input parameters to an extension function.
Hence, borrowing from Python's example, there are now a set of functions
that given the string of type specifiers, can parse the input parameters
and store the results in the user specified variables. This avoids most
of the IS_* checks and convert_to_* conversions. The functions also
check for the appropriate number of parameters, and try to output
meaningful error messages.
Prototypes
----------
/* Implemented. */
int zend_parse_parameters(int num_args TSRMLS_DC, char *type_spec, ...);
int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, char *type_spec, ...);
The zend_parse_parameters() function takes the number of parameters
passed to the extension function, the type specifier string, and the
list of pointers to variables to store the results in. The _ex() version
also takes 'flags' argument -- current only ZEND_PARSE_PARAMS_QUIET can
be used as 'flags' to specify that the function should operate quietly
and not output any error messages.
Both functions return SUCCESS or FAILURE depending on the result.
The auto-conversions are performed as necessary. Arrays, objects, and
resources cannot be auto-converted.
Type specifiers
---------------
l - long
d - double
s - string (with possible null bytes) and its length
b - boolean, stored in zend_bool
r - resource (stored in zval)
a - array
o - object (of any type)
O - object (of specific type, specified by class entry)
z - the actual zval
The following characters also have a meaning in the specifier string:
| - indicates that the remaining parameters are optional, they
should be initialized to default values by the extension since they
will not be touched by the parsing function if they are not
passed to it.
/ - use SEPARATE_ZVAL_IF_NOT_REF() on the parameter it follows
! - the parameter it follows can be of specified type or NULL (only applies
to 'a', 'o', 'O', 'r', and 'z'). If NULL is passed, the results
pointer is set to NULL as well.
Examples
--------
/* Gets a long, a string and its length, and a zval */
long l;
char *s;
int s_len;
zval *param;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lsz",
&l, &s, &s_len, &param) == FAILURE) {
return;
}
/* Gets an object of class specified by my_ce, and an optional double. */
zval *obj;
double d = 0.5;
zend_class_entry my_ce;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O|d",
&obj, my_ce, &d) == FAILURE) {
return;
}
/* Gets an object or null, and an array.
If null is passed for object, obj will be set to NULL. */
zval *obj;
zval *arr;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o!a",
&obj, &arr) == FAILURE) {
return;
}
/* Gets a separated array which can also be null. */
zval *arr;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "a/!",
&arr) == FAILURE) {
return;
}
/* Get only the first three parameters (useful for varargs functions). */
zval *z;
zend_bool b;
zval *r;
if (zend_parse_parameters(3 TSRMLS_CC, "zbr!",
&z, &b, &r) == FAILURE) {
return;
}
/* Get either a set of 3 longs or a string. */
long l1, l2, l3;
char *s;
/*
* The function expects a pointer to a integer in this case, not a long
* or any other type. If you specify a type which is larger
* than a 'int', the upper bits might not be initialized
* properly, leading to random crashes on platforms like
* Tru64 or Linux/Alpha.
*/
int length;
if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC,
"lll", &l1, &l2, &l3) == SUCCESS) {
/* manipulate longs */
} else if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC,
"s", &s, &length) == SUCCESS) {
/* manipulate string */
} else {
/* output error */
return;
}
+155
View File
@@ -0,0 +1,155 @@
1. strrpos() and strripos() now use the entire string as a needle. Be aware
that the existing scripts may no longer work as you expect.
EX :
<?php
var_dump(strrpos("ABCDEF","DEF"));
var_dump(strrpos("ABCDEF","DAF"));
?>
Will give you different results. The former returns 3 while the latter
returns false rather than the position of the last occurrence of 'D'.
The same applies to strripos().
2. Illegal use of string offsets causes E_ERROR instead of E_WARNING.
EX :
<?php
$a = "foo";
unset($a[0][1][2]);
?>
Fatal error: Cannot use string offset as an array in ... on line 1
3. array_merge() was changed to accept only arrays. If a non-array variable is
passed, a E_WARNING will be thrown for every such parameter. Be careful
because your code may start emitting E_WARNING out of the blue.
4. Be careful when porting from ext/mysql to ext/mysqli. The following
functions return NULL when no more data is available in the result set
(ext/mysql's functions return FALSE).
- mysqli_fetch_row()
- mysqli_fetch_array()
- mysqli_fetch_assoc()
5. PATH_TRANSLATED server variable is no longer set implicitly under
Apache2 SAPI in contrast to the situation in PHP 4, where it is set to the
same value as the SCRIPT_FILENAME server variable when it is not populated
by Apache. This change was made to comply with the CGI specification.
Please refer to bug #23610 for further information.
6. Starting PHP 5.0.0 the T_ML_CONSTANT constant is no longer defined by the
ext/tokenizer extension. If error_reporting is set to E_ALL notices will
be produced. Instead of T_ML_CONSTANT for /* */ the T_COMMENT constant
is used, thus both // and /* */ are resolved as the T_COMMENT constant.
However the PHPDoc style comments /** */ ,which starting PHP 5 are parsed
by PHP, are recongnized as T_DOC_COMMENT.
7. $_SERVER should be populated with argc and argv if variables_order
includes "S". If you have specifically configured your system to not
create $_SERVER, then of course it shouldn't be there. The change was to
always make argc and argv available in the CLI version regardless of the
variables_order setting. As in, the CLI version will now always populate
the global $argc and $argv variables.
8. In some cases classes must be declared before used. It only happens only
if some of the new features of PHP 5 are used. Otherwise the behaviour is
the old.
Example 1 (works with no errors):
<?php
$a = new a();
class a {
}
?>
Example 2 (throws an error):
<?php
$a = new a();
interface b{
}
class a implements b {
}
?>
Output (example 2) :
Fatal error: Class 'a' not found in /tmp/cl.php on line 2
9. get_class() starting PHP 5 returns the name of the class as it was
declared which may lead to problems in older scripts that rely on
the previous behaviour - the class name is lowercased. Expect the
same behaviour from get_parent_class() when applicable.
Example :
<?php
class FooBar {
}
class ExtFooBar extends FooBar{}
$a = new FooBar();
var_dump(get_class($a), get_parent_class($a));
?>
Output (PHP 4):
string(6) "foobar"
string(9) "extfoobar"
Output (PHP 5):
string(6) "FooBar"
string(9) "ExtFooBar"
----------------------------------------------------------------------
Example code that will break :
//....
function someMethod($p) {
if (get_class($p) != 'helpingclass') {
return FALSE;
}
//...
}
//...
Possible solution is to search for get_class() and get_parent_class() in
all your scripts and use strtolower().
10. get_class_methods() returns the names of the methods of a class as they
declared. In PHP4 the names are all lowercased.
Example code :
<?php
class Foo{
function doFoo(){}
function hasFoo(){}
}
var_dump(get_class_methods("Foo"));
?>
Output (PHP4):
array(2) {
[0]=>
string(5) "dofoo"
[1]=>
string(6) "hasfoo"
}
Output (PHP5):
array(2) {
[0]=>
string(5) "doFoo"
[1]=>
string(6) "hasFoo"
}
11. Assignment $this is impossible. Starting PHP 5.0.0 $this has special
meaning in class methods and is recognized by the PHP parser. The latter
will generate a parse error when assignment to $this is found
Example code :
<?php
class Foo {
function assignNew($obj) {
$this = $obj;
}
}
$a = new Foo();
$b = new Foo();
$a->assignNew($b);
echo "I was executed\n";
?>
Output (PHP 4):
I was executed
Output (PHP 5):
PHP Fatal error: Cannot re-assign $this in /tmp/this_ex.php on line 4
+57
View File
@@ -0,0 +1,57 @@
QNX4 Installation Notes
-----------------------
NOTE: General installation instructions are in the INSTALL file
1. To compile and test PHP3 you have to grab, compile and install:
- GNU dbm library or another db library;
- GNU bison (1.25 or later; 1.25 tested);
- GNU flex (any version supporting -o and -P options; 2.5.4 tested);
- GNU diffutils (any version supporting -w option; 2.7 tested);
2. To use CVS version you may need also:
- GNU CVS (1.9 tested);
- GNU autoconf (2.12 tested);
- GNU m4 (1.3 or later preferable; 1.4 tested);
3. To run configure define -lunix in command line:
LDFLAGS=-lunix ./configure
4. To use Sybase SQL Anywhere define ODBC_QNX and CUSTOM_ODBC_LIBS in
command line and run configure with --with-custom-odbc:
CFLAGS=-DODBC_QNX LDFLAGS=-lunix CUSTOM_ODBC_LIBS="-ldblib -lodbc" ./configure --with-custom-odbc=/usr/lib/sqlany50
If you have SQL Anywhere version 5.5.00, then you have to add
CFLAGS=-DSQLANY_BUG
to workaround its SQLFreeEnv() bug. Other versions has not been tested,
so try without this flag first.
5. To build the Apache module, you may have to hardcode an include path for
alloc.h in your Apache base directory:
- APACHE_DIRECTORY/src/httpd.h:
change #include "alloc.h"
to #include "APACHE_DIRECTORY/src/alloc.h"
Unless you want to use system regex library, you have to hardcode also
a path to regex.h:
- APACHE_DIRECTORY/src/conf.h:
change #include <regex.h>
to #include "APACHE_DIRECTORY/src/regex/regex.h"
I don't know so far why this required for QNX, may be it is Watcom
compiler problem.
If you building Apache module with SQL Anywhere support, you'll get
symbol conflict with BOOL. It is defined in Apache (httpd.h) and in
SQL Anywhere (odbc.h). This has nothing to do with PHP, so you have to
fix it yourself someway.
6. With above precautions, it should compile as is and pass regression
tests completely:
make
make check
make install
Don't bother me unless you really sure you made that all but it
still doesn't work.
June 28, 1998
Igor Kovalenko -- owl@infomarket.ru
+155
View File
@@ -0,0 +1,155 @@
$Id$
=============================================================================
HOW TO CREATE A SELF-CONTAINED PHP EXTENSION
A self-contained extension can be distributed independently of
the PHP source. To create such an extension, two things are
required:
- Configuration file (config.m4)
- Source code for your module
We will describe now how to create these and how to put things
together.
PREPARING YOUR SYSTEM
While the result will run on any system, a developer's setup needs these
tools:
GNU autoconf
GNU automake
GNU libtool
GNU m4
All of these are available from
ftp://ftp.gnu.org/pub/gnu/
CONVERTING AN EXISTING EXTENSION
Just to show you how easy it is to create a self-contained
extension, we will convert an embedded extension into a
self-contained one. Install PHP and execute the following
commands.
$ mkdir /tmp/newext
$ cd /tmp/newext
You now have an empty directory. We will copy the files from
the mysql extension:
$ cp -rp php-4.0.X/ext/mysql/* .
It is time to finish the module. Run:
$ phpize
You can now ship the contents of the directory - the extension
can live completely on its own.
The user instructions boil down to
$ ./configure \
[--with-php-config=/path/to/php-config] \
[--with-mysql=MYSQL-DIR]
$ make install
The MySQL module will either use the embedded MySQL client
library or the MySQL installation in MYSQL-DIR.
DEFINING THE NEW EXTENSION
Our demo extension is called "foobar".
It consists of two source files "foo.c" and "bar.c"
(and any arbitrary amount of header files, but that is not
important here).
The demo extension does not reference any external
libraries (that is important, because the user does not
need to specify anything).
LTLIBRARY_SOURCES specifies the names of the sources files. You can
name an arbitrary number of source files here.
CREATING THE M4 CONFIGURATION FILE
The m4 configuration can perform additional checks. For a
self-contained extension, you do not need more than a few
macro calls.
------------------------------------------------------------------------------
PHP_ARG_ENABLE(foobar,whether to enable foobar,
[ --enable-foobar Enable foobar])
if test "$PHP_FOOBAR" != "no"; then
PHP_NEW_EXTENSION(foobar, foo.c bar.c, $ext_shared)
fi
------------------------------------------------------------------------------
PHP_ARG_ENABLE will automatically set the correct variables, so
that the extension will be enabled by PHP_NEW_EXTENSION in shared mode.
The first argument of PHP_NEW_EXTENSION describes the name of the
extension. The second names the source-code files. The third passes
$ext_shared which is set by PHP_ARG_ENABLE/WITH to PHP_NEW_EXTENSION.
Please use always PHP_ARG_ENABLE or PHP_ARG_WITH. Even if you do not
plan to distribute your module with PHP, these facilities allow you
to integrate your module easily into the main PHP module framework.
CREATING SOURCE FILES
ext_skel can be of great help when creating the common code for all modules
in PHP for you and also writing basic function definitions and C code for
handling arguments passed to your functions. See README.EXT_SKEL for further
information.
As for the rest, you are currently alone here. There are a lot of existing
modules, use a simple module as a starting point and add your own code.
CREATING THE SELF-CONTAINED EXTENSION
Put config.m4 and the source files into one directory. Then, run phpize
(this is installed during make install by PHP 4.0).
For example, if you configured PHP with --prefix=/php, you would run
$ /php/bin/phpize
This will automatically copy the necessary build files and create
configure from your config.m4.
And that's it. You now have a self-contained extension.
INSTALLING A SELF-CONTAINED EXTENSION
An extension can be installed by running:
$ ./configure \
[--with-php-config=/path/to/php-config]
$ make install
ADDING SHARED MODULE SUPPORT TO A MODULE
In order to be useful, a self-contained extension must be loadable
as a shared module. I will explain now how you can add shared module
support to an existing module called foo.
1. In config.m4, use PHP_ARG_WITH/PHP_ARG_ENABLE. Then you will
automatically be able to use --with-foo=shared[,..] or
--enable-foo=shared[,..].
2. In config.m4, use PHP_NEW_EXTENSION(foo,.., $ext_shared) to enable
building the extension.
3. Add the following lines to your C source file:
#ifdef COMPILE_DL_FOO
ZEND_GET_MODULE(foo)
#endif
+379
View File
@@ -0,0 +1,379 @@
An Overview of the PHP Streams abstraction
==========================================
$Id$
WARNING: some prototypes in this file are out of date.
The information contained here is being integrated into
the PHP manual - stay tuned...
Please send comments to: Wez Furlong <wez@thebrainroom.com>
Why Streams?
============
You may have noticed a shed-load of issock parameters flying around the PHP
code; we don't want them - they are ugly and cumbersome and force you to
special case sockets and files every time you need to work with a "user-level"
PHP file pointer.
Streams take care of that and present the PHP extension coder with an ANSI
stdio-alike API that looks much nicer and can be extended to support non file
based data sources.
Using Streams
=============
Streams use a php_stream* parameter just as ANSI stdio (fread etc.) use a
FILE* parameter.
The main functions are:
PHPAPI size_t php_stream_read(php_stream * stream, char * buf, size_t count);
PHPAPI size_t php_stream_write(php_stream * stream, const char * buf, size_t
count);
PHPAPI size_t php_stream_printf(php_stream * stream TSRMLS_DC,
const char * fmt, ...);
PHPAPI int php_stream_eof(php_stream * stream);
PHPAPI int php_stream_getc(php_stream * stream);
PHPAPI char *php_stream_gets(php_stream * stream, char *buf, size_t maxlen);
PHPAPI int php_stream_close(php_stream * stream);
PHPAPI int php_stream_flush(php_stream * stream);
PHPAPI int php_stream_seek(php_stream * stream, off_t offset, int whence);
PHPAPI off_t php_stream_tell(php_stream * stream);
PHPAPI int php_stream_lock(php_stream * stream, int mode);
These (should) behave in the same way as the ANSI stdio functions with similar
names: fread, fwrite, fprintf, feof, fgetc, fgets, fclose, fflush, fseek, ftell, flock.
Opening Streams
===============
In most cases, you should use this API:
PHPAPI php_stream *php_stream_open_wrapper(char *path, char *mode,
int options, char **opened_path TSRMLS_DC);
Where:
path is the file or resource to open.
mode is the stdio compatible mode eg: "wb", "rb" etc.
options is a combination of the following values:
IGNORE_PATH (default) - don't use include path to search for the file
USE_PATH - use include path to search for the file
IGNORE_URL - do not use plugin wrappers
REPORT_ERRORS - show errors in a standard format if something
goes wrong.
STREAM_MUST_SEEK - If you really need to be able to seek the stream
and don't need to be able to write to the original
file/URL, use this option to arrange for the stream
to be copied (if needed) into a stream that can
be seek()ed.
opened_path is used to return the path of the actual file opened,
but if you used STREAM_MUST_SEEK, may not be valid. You are
responsible for efree()ing opened_path. opened_path may be (and usually
is) NULL.
If you need to open a specific stream, or convert standard resources into
streams there are a range of functions to do this defined in php_streams.h.
A brief list of the most commonly used functions:
PHPAPI php_stream *php_stream_fopen_from_file(FILE *file, const char *mode);
Convert a FILE * into a stream.
PHPAPI php_stream *php_stream_fopen_tmpfile(void);
Open a FILE * with tmpfile() and convert into a stream.
PHPAPI php_stream *php_stream_fopen_temporary_file(const char *dir,
const char *pfx, char **opened_path TSRMLS_DC);
Generate a temporary file name and open it.
There are some network enabled relatives in php_network.h:
PHPAPI php_stream *php_stream_sock_open_from_socket(int socket, int persistent);
Convert a socket into a stream.
PHPAPI php_stream *php_stream_sock_open_host(const char *host, unsigned short port,
int socktype, int timeout, int persistent);
Open a connection to a host and return a stream.
PHPAPI php_stream *php_stream_sock_open_unix(const char *path, int persistent,
struct timeval *timeout);
Open a UNIX domain socket.
Stream Utilities
================
If you need to copy some data from one stream to another, you will be please
to know that the streams API provides a standard way to do this:
PHPAPI size_t php_stream_copy_to_stream(php_stream *src,
php_stream *dest, size_t maxlen);
If you want to copy all remaining data from the src stream, pass
PHP_STREAM_COPY_ALL as the maxlen parameter, otherwise maxlen indicates the
number of bytes to copy.
This function will try to use mmap where available to make the copying more
efficient.
If you want to read the contents of a stream into an allocated memory buffer,
you should use:
PHPAPI size_t php_stream_copy_to_mem(php_stream *src, char **buf,
size_t maxlen, int persistent);
This function will set buf to the address of the buffer that it allocated,
which will be maxlen bytes in length, or will be the entire length of the
data remaining on the stream if you set maxlen to PHP_STREAM_COPY_ALL.
The buffer is allocated using pemalloc(); you need to call pefree() to
release the memory when you are done.
As with copy_to_stream, this function will try use mmap where it can.
If you have an existing stream and need to be able to seek() it, you
can use this function to copy the contents into a new stream that can
be seek()ed:
PHPAPI int php_stream_make_seekable(php_stream *origstream, php_stream **newstream);
It returns one of the following values:
#define PHP_STREAM_UNCHANGED 0 /* orig stream was seekable anyway */
#define PHP_STREAM_RELEASED 1 /* newstream should be used; origstream is no longer valid */
#define PHP_STREAM_FAILED 2 /* an error occurred while attempting conversion */
#define PHP_STREAM_CRITICAL 3 /* an error occurred; origstream is in an unknown state; you should close origstream */
make_seekable will always set newstream to be the stream that is valid
if the function succeeds.
When you have finished, remember to close the stream.
NOTE: If you only need to seek forward, there is no need to call this
function, as the php_stream_seek can emulate forward seeking when the
whence parameter is SEEK_CUR.
NOTE: Writing to the stream may not affect the original source, so it
only makes sense to use this for read-only use.
NOTE: If the origstream is network based, this function will block
until the whole contents have been downloaded.
NOTE: Never call this function with an origstream that is referenced
as a resource! It will close the origstream on success, and this
can lead to a crash when the resource is later used/released.
NOTE: If you are opening a stream and need it to be seekable, use the
STREAM_MUST_SEEK option to php_stream_open_wrapper();
PHPAPI int php_stream_supports_lock(php_stream * stream);
This function will return either 1 (success) or 0 (failure) indicating whether or
not a lock can be set on this stream. Typically you can only set locks on stdio streams.
Casting Streams
===============
What if your extension needs to access the FILE* of a user level file pointer?
You need to "cast" the stream into a FILE*, and this is how you do it:
FILE * fp;
php_stream * stream; /* already opened */
if (php_stream_cast(stream, PHP_STREAM_AS_STDIO, (void*)&fp, REPORT_ERRORS) == FAILURE) {
RETURN_FALSE;
}
The prototype is:
PHPAPI int php_stream_cast(php_stream * stream, int castas, void ** ret, int
show_err);
The show_err parameter, if non-zero, will cause the function to display an
appropriate error message of type E_WARNING if the cast fails.
castas can be one of the following values:
PHP_STREAM_AS_STDIO - a stdio FILE*
PHP_STREAM_AS_FD - a generic file descriptor
PHP_STREAM_AS_SOCKETD - a socket descriptor
If you ask a socket stream for a FILE*, the abstraction will use fdopen to
create it for you. Be warned that doing so may cause buffered data to be lost
if you mix ANSI stdio calls on the FILE* with php stream calls on the stream.
If your system has the fopencookie function, php streams can synthesize a
FILE* on top of any stream, which is useful for SSL sockets, memory based
streams, data base streams etc. etc.
In situations where this is not desirable, you should query the stream
to see if it naturally supports FILE *. You can use this code snippet
for this purpose:
if (php_stream_is(stream, PHP_STREAM_IS_STDIO)) {
/* can safely cast to FILE* with no adverse side effects */
}
You can use:
PHPAPI int php_stream_can_cast(php_stream * stream, int castas)
to find out if a stream can be cast, without actually performing the cast, so
to check if a stream is a socket you might use:
if (php_stream_can_cast(stream, PHP_STREAM_AS_SOCKETD) == SUCCESS) {
/* it can be a socket */
}
Please note the difference between php_stream_is and php_stream_can_cast;
stream_is tells you if the stream is a particular type of stream, whereas
can_cast tells you if the stream can be forced into the form you request.
The former doesn't change anything, while the later *might* change some
state in the stream.
Stream Internals
================
There are two main structures associated with a stream - the php_stream
itself, which holds some state information (and possibly a buffer) and a
php_stream_ops structure, which holds the "virtual method table" for the
underlying implementation.
The php_streams ops struct consists of pointers to methods that implement
read, write, close, flush, seek, gets and cast operations. Of these, an
implementation need only implement write, read, close and flush. The gets
method is intended to be used for streams if there is an underlying method
that can efficiently behave as fgets. The ops struct also contains a label
for the implementation that will be used when printing error messages - the
stdio implementation has a label of "STDIO" for example.
The idea is that a stream implementation defines a php_stream_ops struct, and
associates it with a php_stream using php_stream_alloc.
As an example, the php_stream_fopen() function looks like this:
PHPAPI php_stream * php_stream_fopen(const char * filename, const char * mode)
{
FILE * fp = fopen(filename, mode);
php_stream * ret;
if (fp) {
ret = php_stream_alloc(&php_stream_stdio_ops, fp, 0, 0, mode);
if (ret)
return ret;
fclose(fp);
}
return NULL;
}
php_stream_stdio_ops is a php_stream_ops structure that can be used to handle
FILE* based streams.
A socket based stream would use code similar to that above to create a stream
to be passed back to fopen_wrapper (or it's yet to be implemented successor).
The prototype for php_stream_alloc is this:
PHPAPI php_stream * php_stream_alloc(php_stream_ops * ops, void * abstract,
size_t bufsize, int persistent, const char * mode)
ops is a pointer to the implementation,
abstract holds implementation specific data that is relevant to this instance
of the stream,
bufsize is the size of the buffer to use - if 0, then buffering at the stream
level will be disabled (recommended for underlying sources that implement
their own buffering - such a FILE*),
persistent controls how the memory is to be allocated - persistently so that
it lasts across requests, or non-persistently so that it is freed at the end
of a request (it uses pemalloc),
mode is the stdio-like mode of operation - php streams places no real meaning
in the mode parameter, except that it checks for a 'w' in the string when
attempting to write (this may change).
The mode parameter is passed on to fdopen/fopencookie when the stream is cast
into a FILE*, so it should be compatible with the mode parameter of fopen().
Writing your own stream implementation
======================================
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
RULE #1: when writing your own streams: make sure you have configured PHP with
--enable-debug.
I've taken some great pains to hook into the Zend memory manager to help track
down allocation problems. It will also help you spot incorrect use of the
STREAMS_DC, STREAMS_CC and the semi-private STREAMS_REL_CC macros for function
definitions.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
RULE #2: Please use the stdio stream as a reference; it will help you
understand the semantics of the stream operations, and it will always
be more up to date than these docs :-)
First, you need to figure out what data you need to associate with the
php_stream. For example, you might need a pointer to some memory for memory
based streams, or if you were making a stream to read data from an RDBMS like
MySQL, you might want to store the connection and rowset handles.
The stream has a field called abstract that you can use to hold this data.
If you need to store more than a single field of data, define a structure to
hold it, allocate it (use pemalloc with the persistent flag set
appropriately), and use the abstract pointer to refer to it.
For structured state you might have this:
struct my_state {
MYSQL conn;
MYSQL_RES * result;
};
struct my_state * state = pemalloc(sizeof(struct my_state), persistent);
/* initialize the connection, and run a query, using the fields in state to
* hold the results */
state->result = mysql_use_result(&state->conn);
/* now allocate the stream itself */
stream = php_stream_alloc(&my_ops, state, 0, persistent, "r");
/* now stream->abstract == state */
Once you have that part figured out, you can write your implementation and
define the your own php_stream_ops struct (we called it my_ops in the above
example).
For example, for reading from this weird MySQL stream:
static size_t php_mysqlop_read(php_stream * stream, char * buf, size_t count)
{
struct my_state * state = (struct my_state*)stream->abstract;
if (buf == NULL && count == 0) {
/* in this special case, php_streams is asking if we have reached the
* end of file */
if (... at end of file ...)
return EOF;
else
return 0;
}
/* pull out some data from the stream and put it in buf */
... mysql_fetch_row(state->result) ...
/* we could do something strange, like format the data as XML here,
and place that in the buf, but that brings in some complexities,
such as coping with a buffer size too small to hold the data,
so I won't even go in to how to do that here */
}
Implement the other operations - remember that write, read, close and flush
are all mandatory. The rest are optional. Declare your stream ops struct:
php_stream_ops my_ops = {
php_mysqlop_write, php_mysqlop_read, php_mysqlop_close,
php_mysqlop_flush, NULL, NULL, NULL,
"Strange MySQL example"
}
Thats it!
Take a look at the STDIO implementation in streams.c for more information
about how these operations work.
The main thing to remember is that in your close operation you need to release
and free the resources you allocated for the abstract field. In the case of
the example above, you need to use mysql_free_result on the rowset, close the
connection and then use pefree to dispose of the struct you allocated.
You may read the stream->persistent field to determine if your struct was
allocated in persistent mode or not.
vim:tw=78:et
+126
View File
@@ -0,0 +1,126 @@
Submitting Patch for PHP
========================
This document describes how to submit a patch for PHP. Since you are
reading this document, you are willing to submit a patch for PHP.
Please keep reading! Submitting a patch for PHP is easy. The hard
part is making it acceptable for inclusion into our repository. :-)
How to create patch?
--------------------
We are working with CVS. You need to get CVS source to create a patch
that we accept. Visit http://www.php.net/anoncvs.php to get CVS
source. You can check out older versions, but make sure you get
the default branch (i.e. Do not use -r option when you check out the
CVS source)
Read CODING_STANDARDS file before you start working.
Now you are ready to create a patch. Modify source to fix a bug in PHP or
add a new feature to PHP. After you finished editing, please test your
patch. Read README.TESTING for testing.
After you finish testing your patch, take diff file using
"cvs diff > your.patch" command.
Read README.TESTING for submitting a test script for your patch. This is
not strictly required, but it is preferred to submit a test script along
with your patch. Making new test script is very easy. It also helps us
to understand what you have been fixed or added to PHP.
Tips for creating patch
-----------------------
If you would like to fix multiple bugs. It is easier for us if you
could create 1 patch for 1 bug, but this is not strictly required.
Note though that you might get little response, if your patch is
too hard to review.
If you would like change/add many lines, it is better to ask module
maintainer and/or internals@lists.php.net, or pear-dev@lists.php.net if
you are patching PEAR. Official module maintainers can be found in
EXTENSIONS file in PHP source.
If you are new to CVS (Concurrent Versions System), visit
http://cvshome.org/ for details.
Recommended CVS client settings for creating patch file
------------------------------------------------------
Recommended ~/.cvsrc file setting is:
------
cvs -z3
update -d -P
checkout -P
diff -u
------
diff -u means:
-u Use the unified output format.
With this CVS setting, you don't have to worry about adding/deleting
newlines and spaces.
Check list for submitting patch
-------------------------------
- Did you run "make test" to check if your patch didn't break
other features?
- Did you compile PHP with --enable-debug and check the PHP and
web server error logs when you test your patch?
- Did you build PHP for multi-threaded web servers. (Optional)
- Did you create test script for "make test"? (Recommended)
- Did you check your patch is unified format and it does not
contain white space changes? (If you are not using recommended
cvs setting)
- Did you update CVS source before you take final patch?
- Did you read the patch again?
Where to send your patch?
-------------------------
If you are patching C source, send the patch to internals@lists.php.net.
If you are patching a module, you should also send the patch to the
maintainer. Official module maintainers are listed in EXTENSION file
in source.
If you are patching PEAR, send the patch to pear-dev@lists.php.net.
Please add the prefix "[PATCH]" to your email subject and make sure
to include the patch as a MIME attachment even if it is short.
NOTE: only MIME attachments of type 'text/*' are accepted. The
easiest way to accomplish this, is to make the extension
'.txt'.
Test scripts should be included in the same email.
Explain what has been fixed/added/changed by your patch.
Finally, add the bug Id(s) which can be closed by your patch, if any.
What happens after you submit your patch
----------------------------------------
If your patch is easy to review and has obviously no side-effects,
it might take up to a few hours until someone commits it.
Because this is a volunteer-driven effort, more complex patches will
require more patience on your side.
If you did not receive any feedback in a few days, please consider
resubmitting the description of your patch, along-side with
these questions:
- Is my patch too hard to review? Because of which factors?
- Should I split it up in multiple parts?
- Are there any unwanted whitespace changes?
What happens when your patch is applied?
----------------------------------------
Your name will be included together with your email address in the CVS
commit log. If your patch affects end-users, a brief description
and your name might be added to the NEWS file.
Thank you for submitting patch for PHP!
+179
View File
@@ -0,0 +1,179 @@
[IMPORTANT NOTICE]
------------------
Failed tests usualy indicate a problem with your local system setup
and not within PHP itself (at least for official PHP release versions).
You may decide to automaticaly submit a test summary to our QA workflow
at the end of a test run.
Please do *not* submit a failed test as a bug or ask for help on why
it failed on your system without providing substantial backup information
on *why* the test failed on your special setup. Thank you :-)
[Testing Basics]
----------------
The easiest way to test your PHP build is to run "make test" from the
command line after successfully compiling. This will run the complete
tests for all enabled functionalities and extensions using the PHP
CLI binary.
To execute test scripts, you must build PHP with some SAPI, then you
type "make test" to execute all or some test scripts saved under
"tests" directory under source root directory.
Usage:
make test
"make test" basically executes "run-tests.php" script
under the source root (parallel builds will not work). Therefore you
can execute the script as follows:
TEST_PHP_EXECUTABLE=sapi/cli/php \
sapi/cli/php [-c /path/to/php.ini] run-tests.php [ext/foo/tests/GLOB]
[Which "php" executable "make test" look for]
---------------------------------------------
You must use TEST_PHP_EXECUTABLE environment variable to explicitly
select the php executable to be used to run the tests. That can either
be the CLI or CGI executable.
"make test" executes "run-tests.php" script with "php" binary. Some
test scripts such as session must be executed by CGI SAPI. Therefore,
you must build PHP with CGI SAPI to perform all tests.
NOTE: PHP binary executing "run-tests.php" and php binary used for
executing test scripts may differ. If you use different PHP binary for
executing "run-tests.php" script, you may get errors.
[Which php.ini is used]
-----------------------
"make test" uses the same php.ini file as it would once installed.
The tests have been written to be independent of that php.ini file,
so if you find a test that is affected by a setting, please report
this, so we can address the issue.
[Which test scripts are executed]
---------------------------------
"run-tests.php" ("make test"), without any arguments executes all
test scripts by extracting all directories named "tests"
from the source root and any subdirectories below. If there are files,
which have a "phpt" extension, "run-tests.php" looks at the sections
in these files, determines whether it should run it, by evaluating
the 'SKIP' section. If the test is eligible for execution, the 'FILE'
section is extracted into a ".php" file (with the same name besides
the extension) and gets executed.
When an argument is given or TESTS environment variable is set, the
GLOB is expanded by the shell and any file with extension "*.phpt" is
regarded as a test file.
Tester can easily execute tests selectively with as follows.
Examples:
./sapi/cli/php run-tests.php ext/mbstring/*
./sapi/cli/php run-tests.php ext/mbstring/020.phpt
[Test results]
--------------
Test results are printed to standard output. If there is a failed test,
the "run-tests.php" script saves the result, the expected result and the
code executed to the test script directory. For example, if
ext/myext/tests/myext.phpt fails to pass, the following files are created:
ext/myext/tests/myext.php - actual test file executed
ext/myext/tests/myext.log - log of test execution (L)
ext/myext/tests/myext.exp - expected output (E)
ext/myext/tests/myext.out - output from test script (O)
ext/myext/tests/myext.diff - diff of .out and .exp (D)
Failed tests are always bugs. Either the test is bugged or not considering
factors applying to the tester's environment, or there is a bug in PHP.
If this is a known bug, we strive to provide bug numbers, in either the
test name or the file name. You can check the status of such a bug, by
going to: http://bugs.php.net/12345 where 12345 is the bug number.
For clarity and automated processing, bug numbers are prefixed by a hash
sign '#' in test names and/or test cases are named bug12345.phpt.
NOTE: The files generated by tests can be selected by setting the
environment variable TEST_PHP_LOG_FORMAT. For each file you want to be
generated use the character in brackets as shown above (default is LEOD).
The php file will be generated always.
NOTE: You can set environment variable TEST_PHP_DETAILED to enable
detailed test information.
[Automated testing]
If you like to keep up to speed, with latest developments and quality
assurance, setting the environment variable NO_INTERACTION to 1, will not
prompt the tester for any user input.
Normally, the exit status of "make test" is zero, regardless of the results
of independent tests. Set the environment variable REPORT_EXIT_STATUS to 1,
and "make test" will set the exit status ("$?") to non-zero, when an
individual test has failed.
Example script to be run by cron(1):
========== qa-test.sh =============
#!/bin/sh
CO_DIR=$HOME/cvs/php5
MYMAIL=qa-test@domain.com
TMPDIR=/var/tmp
TODAY=`date +"%Y%m%d"`
# Make sure compilation enviroment is correct
CONFIGURE_OPTS='--disable-all --enable-cli --with-pcre'
export MAKE=gmake
export CC=gcc
# Set test environment
export NO_INTERACTION=1
export REPORT_EXIT_STATUS=1
cd $CO_DIR
cvs update . >>$TMPDIR/phpqatest.$TODAY
./cvsclean ; ./buildconf ; ./configure $CONFIGURE_OPTS ; $MAKE
$MAKE test >>$TMPDIR/phpqatest.$TODAY 2>&1
if test $? -gt 0
then
cat $TMPDIR/phpqatest.$TODAY | mail -s"PHP-QA Test Failed for $TODAY" $MYMAIL
fi
========== end of qa-test.sh =============
NOTE: the exit status of run-tests.php will be 1 when
REPORT_EXIT_STATUS is set. The result of "make test" may be higher
than that. At present, gmake 3.79.1 returns 2, so it is
advised to test for non-zero, rather then a specific value.
[Creating new test files]
-------------------------
Writing test file is very easy if you are used to PHP.
See the HOWTO at http://qa.php.net/write-test.php
[How to help us]
----------------
If you find bug in PHP, you can submit bug report AND test script
for us. You don't have to write complete script, just give us test
script with following format. Please test the script and make sure
you write the correct ACTUAL OUTPUT and EXPECTED OUTPUT before you
submit.
<?php
/*
Bug #12345
substr() bug. Do not return expected string.
ACTUAL OUTPUT
XYXA
EXPECTED OUTPUT
ABCD
*/
$str = "XYZABCD";
echo substr($str,3,7);
?>
+137
View File
@@ -0,0 +1,137 @@
[IMPORTANT NOTICE]
------------------
This is an addendum to README.TESTING with additional information
specific to run-tests2.php.
run-tests2.php is backward compatible with tests developed for
the original run-tests.php script. run-tests2 is *not* used by
'make test'. run-tests2 was developed to provide support for
testing PHP under it's primary environment, HTTP, and can run the
PHP tests under any of the SAPI modules that are direct executables,
or are accessable via HTTP.
[New features]
----------------
* Command line interface:
You can run 'php run-tests2.php -h' to get all the possible options.
* Configuration file:
the -c argument will allow you to use a configuration file. This is
handy if you are testing multiple environments and need various options
depending on the environment.
see run-tests-config.php for details.
* CGI Emulation:
Will emulate a CGI environment when testing with the cgi sapi executable.
* HTTP testing:
can be configured to run test scripts through an HTTP server running
on localhost. localhost is required since either the web server must
alias a directory to the php source directory, or the test scripts
must be copied to a directory under the web server
(see config options TEST_WEB_BASE_URL, TEST_BASE_PATH, and TEST_WEB_EXT)
* New sections supported for test files (see below)
When running tests over http, tests that require ini settings different that what
the web server runs under will be skipped. Since the test harness defines a number
of ini settings by default, the web server may require special configuration to
make testing work.
[Example Usage]
----------------
Some (but not all!) examples of usage:
1. run tests from the php source directory
php run-tests2.php -p /path/to/php-cli
2. run tests using cgi emulation
php run-tests2.php -p /path/to/php-cgi
3. run tests over http, copying test files into document root
php run-tests2.php -w -u http://localhost/test -m /path/to/htdocs/test
4. run tests over http, php sources have been aliased in web server
php run-tests2.php -w -u http://localhost/test
5. run tests using configuration file
php run-tests2.php -c /path/to/run-tests-config.php
6. run tests using configuration file, but overriding some settings:
(config file must be first)
php run-tests2.php -c /path/to/run-tests-config.php -w -t 3 -d /path/to/testdir
NOTE: configuration as described in README.TESTING still works.
[New Test Sections]
----------------
In addition to the traditional test sections
(see http://qa.php.net/write-test.php), several new sections are available
under run-tests2.
--POST--
This is not a new section, but not multipart posts are supported for testing
file uploads, or other types of POST data.
--CGI--
This section takes no value. It merely provides a simple marker for tests
that MUST be run as CGI, even if there is no --POST-- or --GET-- sections
in the test file.
--DESCRIPTION--
Not used for anything, just a section for documenting the test
--ENV--
This section get's eval()'d to help build an environment for the
execution of the test. This can be used to change environment
vars that are used for CGI emulation, or simply to set env vars
for cli testing. A full example looks like:
--ENV--
return <<<END
PATH_TRANSLATED=$filename
PATH_INFO=$scriptname
SCRIPT_NAME=$scriptname
END;
Some variables are made easily available for use in this section, they
include:
$filename full native path to file, will become PATH_TRANSLATED
$filepath =dirname($filename)
$scriptname this is what will become SCRIPT_NAME unless you override it
$docroot the equivelant of DOCUMENT_ROOT under Apache
$cwd the directory that the test is being initiated from
$this->conf all run-tests2 configuration vars
$this->env all environment variables that will get passed to the test
--REQUEST--
This section is also eval'd, and is similar in nature to --ENV--. However,
this section is used to build the url used in an HTTP request. Valid values
to set in this section would include:
SCRIPT_NAME The inital part of the request url
PATH_INFO The pathinfo part of a request url
FRAGMENT The fragment section of a url (after #)
QUERY_STRING The query part of a url (after ?)
--REQUEST--
return <<<END
PATH_INFO=/path/info
END;
--HEADERS--
This section is also eval'd. It is used to provide additional headers sent
in an HTTP request, such as content type for multipart posts, cookies, etc.
--HEADERS--
return <<<END
Content-Type=multipart/form-data; boundary=---------------------------240723202011929
Content-Length=100
END;
--EXPECTHEADERS--
This section can be used to define what headers are required to be
received back from a request, and is checked in addition to the
regular expect sections. For example:
--EXPECTHEADERS--
Status: 404
+123
View File
@@ -0,0 +1,123 @@
PHP Build System V5 Overview
- supports Makefile.ins during transition phase
- not-really-portable Makefile includes have been eliminated
- supports separate build directories without VPATH by using
explicit rules only
- does not waste disk-space/CPU-time for building temporary libraries
=> especially noticeable on slower systems
- slow recursive make replaced with one global Makefile
- eases integration of proper dependencies
- adds PHP_DEFINE(what[, value]) which creates a single include-file
per what. This will allow more fine-grained dependencies.
- abandoning the "one library per directory" concept
- improved integration of the CLI
- several new targets
build-modules: builds and copies dynamic modules into modules/
install-cli: installs the CLI only, so that the install-sapi
target does only what its name says
- finally abandoned automake (still requires aclocal at this time)
- changed some configure-time constructs to run at buildconf-time
- upgraded shtool to 1.5.4
- removed $(moduledir) (use EXTENSION_DIR)
The Reason For a New System
It became more and more apparent that there is a severe need
for addressing the portability concerns and improving the chance
that your build is correct (how often have you been told to
"make clean"? When this is done, you won't need to anymore).
If You Build PHP on a Unix System
You, as a user of PHP, will notice no changes. Of course, the build
system will be faster, look better and work smarter.
If You Are Developing PHP
Extension developers:
Makefile.ins are abandoned. The files which are to be compiled
are specified in the config.m4 now using the following macro:
PHP_NEW_EXTENSION(foo, foo.c bar.c baz.cpp, $ext_shared)
E.g. this enables the extension foo which consists of three source-code
modules, two in C and one in C++. And, depending on the user's wishes,
the extension will even be built as a dynamic module.
The full syntax:
PHP_NEW_EXTENSION(extname, sources [, shared [,sapi_class[, extra-cflags]]])
Please have a look at acinclude.m4 for the gory details and meanings
of the other parameters.
And that's basically it for the extension side.
If you previously built sub-libraries for this module, add
the source-code files here as well. If you need to specify
separate include directories, do it this way:
PHP_NEW_EXTENSION(foo, foo.c mylib/bar.c mylib/gregor.c,,,-I@ext_srcdir@/lib)
E.g. this builds the three files which are located relative to the
extension source directory and compiles all three files with the
special include directive (@ext_srcdir@ is automatically replaced).
Now, you need to tell the build system that you want to build files
in a directory called $ext_builddir/lib:
PHP_ADD_BUILD_DIR($ext_builddir/lib)
Make sure to call this after PHP_NEW_EXTENSION, because $ext_builddir
is only set by the latter.
If you have a complex extension, you might to need add special
Make rules. You can do this by calling PHP_ADD_MAKEFILE_FRAGMENT
in your config.m4 after PHP_NEW_EXTENSION.
This will read a file in the source-dir of your extension called
Makefile.frag. In this file, $(builddir) and $(srcdir) will be
replaced by the values which are correct for your extension
and which are again determined by the PHP_NEW_EXTENSION macro.
Make sure to prefix *all* relative paths correctly with either
$(builddir) or $(srcdir). Because the build system does not
change the working directory anymore, we must use either
absolute paths or relative ones to the top build-directory.
Correct prefixing ensures that.
SAPI developers:
Instead of using PHP_SAPI=foo/PHP_BUILD_XYZ, you will need to type
PHP_SELECT_SAPI(name, type, sources.c)
I.e. specify the source-code files as above and also pass the
information regarding how PHP is supposed to be built (shared
module, program, etc).
For example for APXS:
PHP_SELECT_SAPI(apache, shared, sapi_apache.c mod_php5.c php_apache.c)
General info
The foundation for the new system is the flexible handling of
sources and their contexts. With the help of macros you
can define special flags for each source-file, where it is
located, in which target context it can work, etc.
Have a look at the well documented macros
PHP_ADD_SOURCES(_X) in acinclude.m4.
+174
View File
@@ -0,0 +1,174 @@
The Win32 Build System.
$Id$
Wez Furlong <wez@thebrainroom.com>
If you need help with the build system, send mail to
internals@lists.php.net; please don't email me directly.
===========================================================
Contents:
1. How to build PHP under windows
a. Requirements
b. Opening a command prompt
c. Generating configure.js
d. Configuring
e. Building
f. Cleaning up
g. Running the test suite
h. snapshot building
2. How to write config.w32 files
x. to be written.
===========================================================
1. How to build PHP under windows
a. Requirements
You need:
- Windows Scripting Host (cscript.exe)
- Microsoft Build Tools from:
Microsoft Visual Studio (VC6) or later
You also need:
- bindlib_w32 [http://www.php.net/extra/bindlib_w32.zip]
- win32build [http://www.php.net/extra/win32build.zip]
b. Opening the Build Environment Command Prompt:
- Using Visual Studio (VC6)
1. Install it
2. If you have a VC++ Command Prompt icon on your start menu,
click on it to get a Command Prompt with the env vars
set up correctly.
If not, create a new shortcut and set the Target to:
%comspec% /k "C:\Program Files\Microsoft Visual Studio\VC98\Bin\vcvars32.bat"
You might also want to set the prompt to start in
a convenient location (such as the root of your
PHP source checkout).
- Using Visual Studio .Net
1. Install it.
2. Under the Visual Studio .Net Tools sub menu of your start
menu, you should have a Visual Studio .Net Command Prompt
icon. If not, create a new shortcut and set the Target to:
%comspec% /k "C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\Tools\vsvars32.bat"
You might also want to set the prompt to start in
a convenient location (such as the root of your
PHP source checkout).
- Using the Platform SDK tools
1. Download the Platform SDK:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
- You need the Core SDK, which is approx 200MB to download
and requires approx 500MB of disk space.
- The other components of the SDK are not required by PHP
- You might be able to reduce the download size by downloading
the installer control component first and then selecting
only the Build Environment (around 30MB), but I haven't
tried this.
** Note: it seems that MS don't include the 32 bit
build tools in the platform SDK any longer, so
you will probably have very limited luck if you
don't also have VC++ or VS.Net already installed.
2. Once installed, you will have an icon on your start menu
that will launch the build environment; the latest SDK's
install a number of different versions of this; you probably
want to choose the Windows 2000 Retail build environment.
Clicking on this will open a command prompt with its Path,
Include and Lib env vars set to point to the build tools
and win32 headers.
c. Generating configure
Change directory to where you have your PHP 5 sources.
Run buildconf.bat.
d. Configuring
cscript /nologo configure.js --help
Will give you a list of configuration options; these will
have the form:
--enable-foo or --disable-foo or --with-foo or --without-foo.
--enable-foo will turn something on, and is equivalent to
specifying --enable-foo=yes
--disable-foo will turn something off, and is equivalent to
specifying --enable-foo=no
--enable-foo=shared will attempt to build that feature as
a shared, dynamically loadable module.
Sometimes a configure option needs additional information
about where to find headers and libraries; quite often
you can specify --enable-foo=option where option could be
the path to where to find those files. If you want to
specify a parameter and build it as shared, you can use
this syntax instead: --enable-foo=shared,option
The same rules all apply to --with-foo and --without-foo;
the only difference is the way the options are named;
the convention is that --enable-foo means that you are
switching on something that comes with PHP, whereas
--with-foo means that you want to build in something
external to PHP.
e. Building
Once you have successfully configured your build (make
sure you read the output from the command to make sure
it worked correctly), you can build the code; simply type
"nmake" at the command prompt, and it will build everthing
you asked for.
Once the build has completed, you will find your binaries
in the build dir determined by configure; this is typically
Release_TS for release builds or Debug_TS for debug builds.
If you build a non-thread-safe build, it will use Release
or Debug to store the files. Also in this build dir you
will find sub directories for each module that went into
your PHP build. The files you'll want to keep are the
.exe and .dll files directly in your build dir.
f. Cleaning Up
You can automatically delete everything that was built
by running "nmake clean". This will delete everything
that was put there when you ran nmake, including the
.exe and .dll files.
g. Running the test suite
You can verify that your build is working well by running
the regression test suite. You do this by typing
"nmake test". You can specify the tests you want to run
by defing the TESTS variable - if you wanted to run the
sqlite test suite only, you would type
"nmake /D TESTS=ext/sqlite/tests test"
h. Snapshot Building
If you want to set up an automated build that will tolerate
breakages in some of the modules, you can use the
--enable-snapshot-build configure option to generate a
makefile optimized for that purpose. A snapshot build will
switch the argument parser so that the default option for
configure switches that your don't specify will be set
to "shared". The effect of this is to turn on all options
unless you explicitly disable them. When you have configured
your snapshot build, you can use "nmake build-snap" to build
everything, ignoring build errors in individual extensions
or SAPI.
vim:tw=78:sw=1:ts=1:et
+112
View File
@@ -0,0 +1,112 @@
Using PHP 5 with the Zeus Web Server
-----------------------------------
Zeus fully supports running PHP in combination with our
webserver. There are three different interfaces that can be used to
enable PHP:
* CGI
* ISAPI
* FastCGI
Of the three, we recommend using FastCGI, which has been tested and
benchmarked as providing the best performance and reliability.
Full details of how to install PHP are available from our
website, at:
http://support.zeus.com/products/php.html
If you have any problems, please check the support site for more
up-to-date information and advice.
Quick guide to installing CGI/FastCGI with Zeus
-----------------------------------------------
Step 1 - Compile PHP as FastCGI.
Compile as follows:
./configure --enable-fastcgi
make
Note that PHP has many options to the configure script -
e.g. --with-mysql. You will probably want to select your usual options
before compiling; the above is just a bare minimum, for illustration.
After compilation finishes, you will be left with an executable
program called 'php'. Copy this into your document root, under a
dedicated FastCGI directory (e.g. $DOCROOT/fcgi-bin/php)
Step 2 - configure Zeus
Four stages:
- enable FastCGI
- configure FastCGI
- setup alias for FastCGI
- setup alias for PHP
1) Using the admin server, go to the 'module configuration' page for
your virtual server, and ensure that 'fastcgi' is enabled (select the
tickbox to the left).
2) While we can run FastCGI's locally, there are known problems with
some OS's (specifically, the communication between web server and
FastCGI happens over a unix domain socket, and some OS's have trouble
sustaining high connection rates over these sockets). So instead, we
are going to set up the PHP FastCGI to run 'remotely' over localhost
(this uses TCP sockets, which do not suffer this problem). Go to the
'fastcgi configuration' page, and under 'add remote fastcgi':
Add Remote FastCGI
Docroot path /fcgi-bin/php
Remote machine localhost:8002
The first entry is where you saved PHP, above.
The second entry is localhost:<any unused port>
We will start the FastCGI listening on this port shortly.
Click 'update' to commit these changes.
3) Go to the path mapping module and add an alias for FastCGI:
Add Alias
Docroot path /fcgi-bin
Filesystem directory /path/to/docroot/fcgi-bin
Alias type fastcgi
Click 'update' to commit these changes
4) Also on the path mapping module, add a handler for PHP:
Add handler
File extension php
Handler /fcgi-bin/php
Click 'update' to commit these changes
Finally restart your virtual server for these changes to take effect.
Step 3 - start PHP as a FastCGI runner
When you start PHP, it will pre-fork a given number of child processes
to handle incoming PHP requests. Each process will handle a given
number of requests before exiting (and being replaced by a newly
forked process). You can control these two parameters by setting the
following environment variables BEFORE starting the FastCGI runner:
PHP_FCGI_CHILDREN - the number of child processes to pre-fork. This
variable MUST be set, if not then the PHP will not run as a FastCGI.
We recommend a value of 8 for a fairly busy site. If you have many,
long-running PHP scripts, then you may need to increase this further.
PHP_FCGI_MAX_REQUESTS - the number of requests each PHP child process
handles before exiting. If not set, defaults to 500.
To start the FastCGI runner, execute '$ZEUSHOME/web/bin/fcgirunner
8002 $DOCROOT/fcgi-bin/php'. Substitute the appropriate values for
$ZEUSHOME and $DOCROOT; also substitute for 8002 the port you chose,
above.
To stop the runner (e.g. to experiment with the above environment
variables) you will need to manually stop and running PHP
processes. (Use 'ps' and 'kill'). As it is PHP which is forking lots
of children and not the runner, Zeus unfortunately cannot keep track
of what processes are running, sorry. A typical command line may look
like 'ps -efl | grep $DOCROOT/fcgi-bin/php | grep -v grep | awk
'{print $4}' | xargs kill'
+193
View File
@@ -0,0 +1,193 @@
Input Filter Support in PHP 5
-----------------------------
XSS (Cross Site Scripting) hacks are becoming more and more prevalent,
and can be quite difficult to prevent. Whenever you accept user data
and somehow display this data back to users, you are likely vulnerable
to XSS hacks.
The Input Filter support in PHP 5 is aimed at providing the framework
through which a company-wide or site-wide security policy can be
enforced. It is implemented as a SAPI hook and is called from the
treat_data and post handler functions. To implement your own security
policy you will need to write a standard PHP extension.
A simple implementation might look like the following. This stores the
original raw user data and adds a my_get_raw() function while the normal
$_POST, $_GET and $_COOKIE arrays are only populated with stripped
data. In this simple example all I am doing is calling strip_tags() on
the data. If register_globals is turned on, the default globals that
are created will be stripped ($foo) while a $RAW_foo is created with the
original user input.
ZEND_BEGIN_MODULE_GLOBALS(my_input_filter)
zval *post_array;
zval *get_array;
zval *cookie_array;
ZEND_END_MODULE_GLOBALS(my_input_filter)
#ifdef ZTS
#define IF_G(v) TSRMG(my_input_filter_globals_id, zend_my_input_filter_globals *, v)
#else
#define IF_G(v) (my_input_filter_globals.v)
#endif
ZEND_DECLARE_MODULE_GLOBALS(my_input_filter)
zend_function_entry my_input_filter_functions[] = {
PHP_FE(my_get_raw, NULL)
{NULL, NULL, NULL}
};
zend_module_entry my_input_filter_module_entry = {
STANDARD_MODULE_HEADER,
"my_input_filter",
my_input_filter_functions,
PHP_MINIT(my_input_filter),
PHP_MSHUTDOWN(my_input_filter),
NULL,
PHP_RSHUTDOWN(my_input_filter),
PHP_MINFO(my_input_filter),
"0.1",
STANDARD_MODULE_PROPERTIES
};
PHP_MINIT_FUNCTION(my_input_filter)
{
ZEND_INIT_MODULE_GLOBALS(my_input_filter, php_my_input_filter_init_globals, NULL);
REGISTER_LONG_CONSTANT("POST", PARSE_POST, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("GET", PARSE_GET, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("COOKIE", PARSE_COOKIE, CONST_CS | CONST_PERSISTENT);
sapi_register_input_filter(my_sapi_input_filter);
return SUCCESS;
}
PHP_RSHUTDOWN_FUNCTION(my_input_filter)
{
if(IF_G(get_array)) {
zval_ptr_dtor(&IF_G(get_array));
IF_G(get_array) = NULL;
}
if(IF_G(post_array)) {
zval_ptr_dtor(&IF_G(post_array));
IF_G(post_array) = NULL;
}
if(IF_G(cookie_array)) {
zval_ptr_dtor(&IF_G(cookie_array));
IF_G(cookie_array) = NULL;
}
return SUCCESS;
}
PHP_MINFO_FUNCTION(my_input_filter)
{
php_info_print_table_start();
php_info_print_table_row( 2, "My Input Filter Support", "enabled" );
php_info_print_table_row( 2, "Revision", "$Revision$");
php_info_print_table_end();
}
/* The filter handler. If you return 1 from it, then PHP also registers the
* (modified) variable. Returning 0 prevents PHP from registering the variable;
* you can use this if your filter already registers the variable under a
* different name, or if you just don't want the variable registered at all. */
SAPI_INPUT_FILTER_FUNC(my_sapi_input_filter)
{
zval new_var;
zval *array_ptr = NULL;
char *raw_var;
int var_len;
assert(*val != NULL);
switch(arg) {
case PARSE_GET:
if(!IF_G(get_array)) {
ALLOC_ZVAL(array_ptr);
array_init(array_ptr);
INIT_PZVAL(array_ptr);
}
IF_G(get_array) = array_ptr;
break;
case PARSE_POST:
if(!IF_G(post_array)) {
ALLOC_ZVAL(array_ptr);
array_init(array_ptr);
INIT_PZVAL(array_ptr);
}
IF_G(post_array) = array_ptr;
break;
case PARSE_COOKIE:
if(!IF_G(cookie_array)) {
ALLOC_ZVAL(array_ptr);
array_init(array_ptr);
INIT_PZVAL(array_ptr);
}
IF_G(cookie_array) = array_ptr;
break;
}
Z_STRLEN(new_var) = val_len;
Z_STRVAL(new_var) = estrndup(*val, val_len);
Z_TYPE(new_var) = IS_STRING;
var_len = strlen(var);
raw_var = emalloc(var_len+5); /* RAW_ and a \0 */
strcpy(raw_var, "RAW_");
strlcat(raw_var,var,var_len+5);
php_register_variable_ex(raw_var, &new_var, array_ptr TSRMLS_DC);
php_strip_tags(*val, val_len, NULL, NULL, 0);
*new_val_len = strlen(*val);
return 1;
}
PHP_FUNCTION(my_get_raw)
{
long arg;
char *var;
int var_len;
zval **tmp;
zval *array_ptr = NULL;
HashTable *hash_ptr;
char *raw_var;
if(zend_parse_parameters(2 TSRMLS_CC, "ls", &arg, &var, &var_len) == FAILURE) {
return;
}
switch(arg) {
case PARSE_GET:
array_ptr = IF_G(get_array);
break;
case PARSE_POST:
array_ptr = IF_G(post_array);
break;
case PARSE_COOKIE:
array_ptr = IF_G(post_array);
break;
}
if(!array_ptr) RETURN_FALSE;
/*
* I'm changing the variable name here because when running with register_globals on,
* the variable will end up in the global symbol table
*/
raw_var = emalloc(var_len+5); /* RAW_ and a \0 */
strcpy(raw_var, "RAW_");
strlcat(raw_var,var,var_len+5);
hash_ptr = HASH_OF(array_ptr);
if(zend_hash_find(hash_ptr, raw_var, var_len+5, (void **)&tmp) == SUCCESS) {
*return_value = **tmp;
zval_copy_ctor(return_value);
} else {
RETVAL_FALSE;
}
efree(raw_var);
}
+144
View File
@@ -0,0 +1,144 @@
Things to do or at least think about doing in the future. Name in
parenthesis means that person has taken on this project.
Zend
----
* Allow foreach ($array as $k => list($a, $b)) syntax for multi
dimensional arrays.
* Look at replacing c-lib call tolower().
* Make hash API functions work with HASH_OF() to save time.
* Native large number support (probably with GNU GMP)
* Const'ify APIs. Right now, many functions leave parameters untouched,
but don't declare those as const. This makes interaction with other
interfaces difficult which pass const parameters to us.
global
------
* Make sure that all ZTS globals get destructed. Most ts_allocate_id()
calls should have a dtor entry.
* on some platforms unimplemented function will just do nothing
(e.g. symlink) they should print a warning or not even be defined!
(DONE ?)
* --enable-all in configure. (--enable-shared=max ...)
* make configure print out a summary when it's done (like XEmacs)
* replace standard functions which work on static data with
reentrancy-safe functions (DONE?).
* make SAPI conform to CGI/1.1. Currently, all SAPI modules
define REMOTE_ADDR etc. themselves and reach only various level
of compliance.
* see what functions might need to be changed to use HashPosition, so
that the internal array pointer is not affected.
* Move most extensions and PEAR packages out of the PHP CVS tree,
include them again during release packaging.
Other
* use thread-safe resolver functions (either require BIND 8 or adns).
* implement javadoc based function docs template system.
* provide optional IPv6 support (seems to be done?).
* find a better way to implement script timeouts. SIGVTALRM is used
by some POSIX threads implementations (i.e. OpenBSD) and is not
available in ZTS mode.
* Implement flush feature suitable for nested output buffers.
Streams
-------
* Route filestat.c through the wrapper layer; isolate the statcache code
so that it is independent of php functions and can be applied to any
stream/path.
* Implement generalized connection pool for stated protocols such as
ftp and http/1.1 (using keep-alive) to avoid having to negotiate
new command/request stream for each subsequent call; Possibly store
resources in contexts (creating a default context if necessary) to
allow segmentation of connection pools.
* Add a method to take ownership of the memory buffer in memory streams so
that generating string values for zvals doesn't require an estrdup.
* bundle and use curl lib for fopen wrapper.
documentation
-------------
* Add remarks in the documentation which functions are not implemented
on win32.
* Add remarks in the documentation which functions are not binary-safe.
* Update curl documentation (DONE?)
* Add developer documentation.
* Add detailed documentation for Java extension.
ext/curl
--------
* Have a warning scheme for when people use unsupported features.
ext/oci8
--------
* All OCIFetch*() functions should return 0 for no more data and false on
error.
* Have a flag that trims trailing spaces from CHAR fields on retrieval.
* Make allow_call_time_pass_reference=Off working.
* For additional todo information, see oci8.c, in ext/oci8
ext/odbc
--------
For PHP 4.3.0:
* update all php_error calls to php_error_docref where valid
* integrate EXPERIMENTAL ODBC update for use in PHP 5.0, use for
testing purposes only.
For PHP 5.0.0
* Activate EXPERIMENTAL ODBC codebase update
ext/pcre
--------
* Allow user to set PCRE_NOTEMPTY, PCRE_ANCHORED at execution time, maybe
ext/pcntl
---------
* Change internal callback handler to use TICKS
* Remove all zend_extension code
* Add object callback support to pcntl_signal()
ext/pgsql
---------
For PHP 4.3.0:
* Add pg_metadata() with metadata cache feature.
* Add pg_convert() to check and convert array value for query.
* Add pg_insert/pg_update/pg_delete/pg_select for simple query.
ext/session
-----------
For PHP 4.3.0:
* session_abort() to abort session. ie: Do not save session data.
* Allow unset($_SESSION) or unset($HTTP_SESSION_VARS) to unset
session vars regardless of register_globals setting.
Other:
* Maybe implement finer-grained session variables that could be
locked individually.
* Write a network-transparent storage back-end with fallover
facilities
* Provide a callback facility which is executed upon encountering
an unknown class name during deserialization
ext/standard
------------
* Add a version number to data serialized via serialize().
* Possibly modify parsing of GPC data to automatically create arrays if
variable name is seen more than once.
* Implement regex-cache for url-functions.
* Move socket related functions to fsock.c.
ext/wddx
--------
* See if we can support the remaining data types:
dateTime
binary
http://www.wddx.org/WDDX_SDK_10a/7__References/WDDX_DTD.htm
(Andrei)
* implement wddx_packet_as_javascript(). (Andrei)
other cool stuff
----------------
* PVM extension
vim:et:sw=4:ts=4
+4
View File
@@ -0,0 +1,4 @@
Zend Engine
-----------
- Look at making zend_constant value member be a zval* instead of zval. (Andi)
- Implement inheritance rules for type hints. (Marcus)
+109
View File
@@ -0,0 +1,109 @@
Component: Zend Engine 2
Important stuff to finish: PPP members/PPP methods,
support of overloaded extensions, possibly differentiate
between class and namespace as discussed with Stig in
Germany.
Responsibility: Zeev, Andi, Stas
Time frame: Couple of months for first part and extensions will be
ongoing while PHP is being fixed.
Things to leave for later versions: Native aggregation
support, accessing static members via object and not class.
Component: Aggregation
Responsibility: Andi, Stig?
Time frame: ?
Component: Redesign of API Versioning
Responsibility: ?
Time frame: 1 month
Component: Thread Safety
Identify the extensions that are not thread safe by design
or due to dependant libraries and identify them as such.
If possible try to resolve thread safety issue via code
improvements (if php code or patches will be accepted by
library maintainers). For situations where thread safety
cannot easily be acheived a flag in the extension API is
set so PHP can identify non-thread safe extensions. These
extensions will not be loaded in a ZTS compiled binary
(unless it is cli/cgi).
Responsibility: ?
Time frame: ?
Component: SAPI
Environment variables defined in the CGI spec need to be
verified in each SAPI module that they conform to the CGI
spec correctly. If they do not, the SAPI module needs to
fix the variable prior to script execution. Having this
conformity will aid in having PHP scripts run correctly
under different sapi modules.
Responsibility: Shane Caraveo & each sapi module owner
Timeframe: ? (but shouldn't be much effort, most modules are probably ok)
Component: Input Filtering
- Implement a SAPI input filter hook that will get called
just before registering a variable in the
treat_data/post_handler hooks. (done)
- Make sure this is also done in mbstring (done)
- Provide access functions, or perhaps a new
$_RAW_GET/POST/Cookie set of superglobals to get at the
unfiltered data
- Provide a .ini directive which allows people to set their
input filter to one of the built-in strip_tags,
htmlspecialchars or whatever other internal function might
be useful here.
- (The main benefit of this is to make it easier for people
to solve the XSS problem once and for all without having
to go through every line of their code and adding input
validation/filtering everywhere)
Responsibility: Rasmus
Timeframe: Yesterday
Component: RPC Abstraction Layer
Porting java, com, dotnet, xmlrpc, corba, soap and python, srm
(are there more ?) to work with the new oo api and preferably
by using ext/rpc.
Responsibility: Harald
Time frame: 2 months (but i have to wait for a few engine features first)
Component: OO Extensions
Each OO extension has to be revised and rewritten to fit into
the new OO model. We should decide which extensions are a must
to have for the release and which can be ported by the maintainer
later as a separate pecl release.
A list of extensions to be extended that have to be investigated:
* browscap
* aggregate
* all *sql extensions (*_fetch_object)
* domxml (seems like christian is rewriting it anyways)
* ming
Responsibility: Harald (, extension maintainers)
Component: Abstract Data Types (ADT)
Responsibility: Sterling, Harald
Time frame: ?
Component: Test Suite
Extending the test suite with atleast a test for every
function in an extension that doesn't require external
resources. Also developing an automated test thing which
cvs ups's, compiles and tests the build on a daily base on
as much platforms/extensions as possible.
The test suite will also be extended to support threaded
testing and testing for differing sapi modules (via http
calls or other methods).
Reponsibility: Derick (, extension maintainers)
Time frame: 3 months
+26
View File
@@ -0,0 +1,26 @@
Copyright (c) 1999-2006, Andi Gutmans, Sascha Schumann, Zeev Suraski.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
- Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
- Neither name of the copyright holders nor the names of their contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS
IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+6
View File
@@ -0,0 +1,6 @@
## process this file with automake to produce Makefile.am
AUTOMAKE_OPTIONS=foreign
noinst_LTLIBRARIES=libtsrm.la
libtsrm_la_SOURCES = TSRM.c tsrm_strtok_r.c tsrm_virtual_cwd.c
depend:
+2
View File
@@ -0,0 +1,2 @@
- Improve the lock in ts_resource_ex() in order to cover less code.
This can probably be done by more careful hash table access
+718
View File
@@ -0,0 +1,718 @@
/*
+----------------------------------------------------------------------+
| Thread Safe Resource Manager |
+----------------------------------------------------------------------+
| Copyright (c) 1999-2006, 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 |
+----------------------------------------------------------------------+
| Authors: Zeev Suraski <zeev@zend.com> |
+----------------------------------------------------------------------+
*/
#include "TSRM.h"
#ifdef ZTS
#include <stdio.h>
#if HAVE_STDARG_H
#include <stdarg.h>
#endif
typedef struct _tsrm_tls_entry tsrm_tls_entry;
struct _tsrm_tls_entry {
void **storage;
int count;
THREAD_T thread_id;
tsrm_tls_entry *next;
};
typedef struct {
size_t size;
ts_allocate_ctor ctor;
ts_allocate_dtor dtor;
int done;
} tsrm_resource_type;
/* The memory manager table */
static tsrm_tls_entry **tsrm_tls_table=NULL;
static int tsrm_tls_table_size;
static ts_rsrc_id id_count;
/* The resource sizes table */
static tsrm_resource_type *resource_types_table=NULL;
static int resource_types_table_size;
static MUTEX_T tsmm_mutex; /* thread-safe memory manager mutex */
/* New thread handlers */
static tsrm_thread_begin_func_t tsrm_new_thread_begin_handler;
static tsrm_thread_end_func_t tsrm_new_thread_end_handler;
/* Debug support */
int tsrm_error(int level, const char *format, ...);
/* Read a resource from a thread's resource storage */
static int tsrm_error_level;
static FILE *tsrm_error_file;
#if TSRM_DEBUG
#define TSRM_ERROR(args) tsrm_error args
#define TSRM_SAFE_RETURN_RSRC(array, offset, range) \
{ \
int unshuffled_offset = TSRM_UNSHUFFLE_RSRC_ID(offset); \
\
if (offset==0) { \
return &array; \
} else if ((unshuffled_offset)>=0 && (unshuffled_offset)<(range)) { \
TSRM_ERROR((TSRM_ERROR_LEVEL_INFO, "Successfully fetched resource id %d for thread id %ld - 0x%0.8X", \
unshuffled_offset, (long) thread_resources->thread_id, array[unshuffled_offset])); \
return array[unshuffled_offset]; \
} else { \
TSRM_ERROR((TSRM_ERROR_LEVEL_ERROR, "Resource id %d is out of range (%d..%d)", \
unshuffled_offset, TSRM_SHUFFLE_RSRC_ID(0), TSRM_SHUFFLE_RSRC_ID(thread_resources->count-1))); \
return NULL; \
} \
}
#else
#define TSRM_ERROR(args)
#define TSRM_SAFE_RETURN_RSRC(array, offset, range) \
if (offset==0) { \
return &array; \
} else { \
return array[TSRM_UNSHUFFLE_RSRC_ID(offset)]; \
}
#endif
#if defined(PTHREADS)
/* Thread local storage */
static pthread_key_t tls_key;
# define tsrm_tls_set(what) pthread_setspecific(tls_key, (void*)(what))
# define tsrm_tls_get() pthread_getspecific(tls_key)
#elif defined(TSRM_ST)
static int tls_key;
# define tsrm_tls_set(what) st_thread_setspecific(tls_key, (void*)(what))
# define tsrm_tls_get() st_thread_getspecific(tls_key)
#elif defined(TSRM_WIN32)
static DWORD tls_key;
# define tsrm_tls_set(what) TlsSetValue(tls_key, (void*)(what))
# define tsrm_tls_get() TlsGetValue(tls_key)
#elif defined(BETHREADS)
static int32 tls_key;
# define tsrm_tls_set(what) tls_set(tls_key, (void*)(what))
# define tsrm_tls_get() (tsrm_tls_entry*)tls_get(tls_key)
#else
# define tsrm_tls_set(what)
# define tsrm_tls_get() NULL
# warning tsrm_set_interpreter_context is probably broken on this platform
#endif
/* Startup TSRM (call once for the entire process) */
TSRM_API int tsrm_startup(int expected_threads, int expected_resources, int debug_level, char *debug_filename)
{
#if defined(GNUPTH)
pth_init();
#elif defined(PTHREADS)
pthread_key_create( &tls_key, 0 );
#elif defined(TSRM_ST)
st_init();
st_key_create(&tls_key, 0);
#elif defined(TSRM_WIN32)
tls_key = TlsAlloc();
#elif defined(BETHREADS)
tls_key = tls_allocate();
#endif
tsrm_error_file = stderr;
tsrm_error_set(debug_level, debug_filename);
tsrm_tls_table_size = expected_threads;
tsrm_tls_table = (tsrm_tls_entry **) calloc(tsrm_tls_table_size, sizeof(tsrm_tls_entry *));
if (!tsrm_tls_table) {
TSRM_ERROR((TSRM_ERROR_LEVEL_ERROR, "Unable to allocate TLS table"));
return 0;
}
id_count=0;
resource_types_table_size = expected_resources;
resource_types_table = (tsrm_resource_type *) calloc(resource_types_table_size, sizeof(tsrm_resource_type));
if (!resource_types_table) {
TSRM_ERROR((TSRM_ERROR_LEVEL_ERROR, "Unable to allocate resource types table"));
free(tsrm_tls_table);
tsrm_tls_table = NULL;
return 0;
}
tsmm_mutex = tsrm_mutex_alloc();
tsrm_new_thread_begin_handler = tsrm_new_thread_end_handler = NULL;
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Started up TSRM, %d expected threads, %d expected resources", expected_threads, expected_resources));
return 1;
}
/* Shutdown TSRM (call once for the entire process) */
TSRM_API void tsrm_shutdown(void)
{
int i;
if (tsrm_tls_table) {
for (i=0; i<tsrm_tls_table_size; i++) {
tsrm_tls_entry *p = tsrm_tls_table[i], *next_p;
while (p) {
int j;
next_p = p->next;
for (j=0; j<p->count; j++) {
if (p->storage[j]) {
if (resource_types_table && !resource_types_table[j].done && resource_types_table[j].dtor) {
resource_types_table[j].dtor(p->storage[j], &p->storage);
}
free(p->storage[j]);
}
}
free(p->storage);
free(p);
p = next_p;
}
}
free(tsrm_tls_table);
tsrm_tls_table = NULL;
}
if (resource_types_table) {
free(resource_types_table);
resource_types_table=NULL;
}
tsrm_mutex_free(tsmm_mutex);
tsmm_mutex = NULL;
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Shutdown TSRM"));
if (tsrm_error_file!=stderr) {
fclose(tsrm_error_file);
}
#if defined(GNUPTH)
pth_kill();
#elif defined(PTHREADS)
pthread_setspecific(tls_key, 0);
pthread_key_delete(tls_key);
#elif defined(TSRM_WIN32)
TlsFree(tls_key);
#endif
}
/* allocates a new thread-safe-resource id */
TSRM_API ts_rsrc_id ts_allocate_id(ts_rsrc_id *rsrc_id, size_t size, ts_allocate_ctor ctor, ts_allocate_dtor dtor)
{
int i;
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Obtaining a new resource id, %d bytes", size));
tsrm_mutex_lock(tsmm_mutex);
/* obtain a resource id */
*rsrc_id = TSRM_SHUFFLE_RSRC_ID(id_count++);
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Obtained resource id %d", *rsrc_id));
/* store the new resource type in the resource sizes table */
if (resource_types_table_size < id_count) {
resource_types_table = (tsrm_resource_type *) realloc(resource_types_table, sizeof(tsrm_resource_type)*id_count);
if (!resource_types_table) {
tsrm_mutex_unlock(tsmm_mutex);
TSRM_ERROR((TSRM_ERROR_LEVEL_ERROR, "Unable to allocate storage for resource"));
*rsrc_id = 0;
return 0;
}
resource_types_table_size = id_count;
}
resource_types_table[TSRM_UNSHUFFLE_RSRC_ID(*rsrc_id)].size = size;
resource_types_table[TSRM_UNSHUFFLE_RSRC_ID(*rsrc_id)].ctor = ctor;
resource_types_table[TSRM_UNSHUFFLE_RSRC_ID(*rsrc_id)].dtor = dtor;
resource_types_table[TSRM_UNSHUFFLE_RSRC_ID(*rsrc_id)].done = 0;
/* enlarge the arrays for the already active threads */
for (i=0; i<tsrm_tls_table_size; i++) {
tsrm_tls_entry *p = tsrm_tls_table[i];
while (p) {
if (p->count < id_count) {
int j;
p->storage = (void *) realloc(p->storage, sizeof(void *)*id_count);
for (j=p->count; j<id_count; j++) {
p->storage[j] = (void *) malloc(resource_types_table[j].size);
if (resource_types_table[j].ctor) {
resource_types_table[j].ctor(p->storage[j], &p->storage);
}
}
p->count = id_count;
}
p = p->next;
}
}
tsrm_mutex_unlock(tsmm_mutex);
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Successfully allocated new resource id %d", *rsrc_id));
return *rsrc_id;
}
static void allocate_new_resource(tsrm_tls_entry **thread_resources_ptr, THREAD_T thread_id)
{
int i;
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Creating data structures for thread %x", thread_id));
(*thread_resources_ptr) = (tsrm_tls_entry *) malloc(sizeof(tsrm_tls_entry));
(*thread_resources_ptr)->storage = (void **) malloc(sizeof(void *)*id_count);
(*thread_resources_ptr)->count = id_count;
(*thread_resources_ptr)->thread_id = thread_id;
(*thread_resources_ptr)->next = NULL;
/* Set thread local storage to this new thread resources structure */
tsrm_tls_set(*thread_resources_ptr);
if (tsrm_new_thread_begin_handler) {
tsrm_new_thread_begin_handler(thread_id, &((*thread_resources_ptr)->storage));
}
for (i=0; i<id_count; i++) {
if (resource_types_table[i].done) {
(*thread_resources_ptr)->storage[i] = NULL;
} else
{
(*thread_resources_ptr)->storage[i] = (void *) malloc(resource_types_table[i].size);
if (resource_types_table[i].ctor) {
resource_types_table[i].ctor((*thread_resources_ptr)->storage[i], &(*thread_resources_ptr)->storage);
}
}
}
if (tsrm_new_thread_end_handler) {
tsrm_new_thread_end_handler(thread_id, &((*thread_resources_ptr)->storage));
}
tsrm_mutex_unlock(tsmm_mutex);
}
/* fetches the requested resource for the current thread */
TSRM_API void *ts_resource_ex(ts_rsrc_id id, THREAD_T *th_id)
{
THREAD_T thread_id;
int hash_value;
tsrm_tls_entry *thread_resources;
#ifdef NETWARE
/* The below if loop is added for NetWare to fix an abend while unloading PHP
* when an Apache unload command is issued on the system console.
* While exiting from PHP, at the end for some reason, this function is called
* with tsrm_tls_table = NULL. When this happened, the server abends when
* tsrm_tls_table is accessed since it is NULL.
*/
if(tsrm_tls_table) {
#endif
if (!th_id) {
/* Fast path for looking up the resources for the current
* thread. Its used by just about every call to
* ts_resource_ex(). This avoids the need for a mutex lock
* and our hashtable lookup.
*/
thread_resources = tsrm_tls_get();
if (thread_resources) {
TSRM_ERROR((TSRM_ERROR_LEVEL_INFO, "Fetching resource id %d for current thread %d", id, (long) thread_resources->thread_id));
/* Read a specific resource from the thread's resources.
* This is called outside of a mutex, so have to be aware about external
* changes to the structure as we read it.
*/
TSRM_SAFE_RETURN_RSRC(thread_resources->storage, id, thread_resources->count);
}
thread_id = tsrm_thread_id();
} else {
thread_id = *th_id;
}
TSRM_ERROR((TSRM_ERROR_LEVEL_INFO, "Fetching resource id %d for thread %ld", id, (long) thread_id));
tsrm_mutex_lock(tsmm_mutex);
hash_value = THREAD_HASH_OF(thread_id, tsrm_tls_table_size);
thread_resources = tsrm_tls_table[hash_value];
if (!thread_resources) {
allocate_new_resource(&tsrm_tls_table[hash_value], thread_id);
return ts_resource_ex(id, &thread_id);
} else {
do {
if (thread_resources->thread_id == thread_id) {
break;
}
if (thread_resources->next) {
thread_resources = thread_resources->next;
} else {
allocate_new_resource(&thread_resources->next, thread_id);
return ts_resource_ex(id, &thread_id);
/*
* thread_resources = thread_resources->next;
* break;
*/
}
} while (thread_resources);
}
tsrm_mutex_unlock(tsmm_mutex);
/* Read a specific resource from the thread's resources.
* This is called outside of a mutex, so have to be aware about external
* changes to the structure as we read it.
*/
TSRM_SAFE_RETURN_RSRC(thread_resources->storage, id, thread_resources->count);
#ifdef NETWARE
} /* if(tsrm_tls_table) */
#endif
}
/* frees an interpreter context. You are responsible for making sure that
* it is not linked into the TSRM hash, and not marked as the current interpreter */
void tsrm_free_interpreter_context(void *context)
{
tsrm_tls_entry *next, *thread_resources = (tsrm_tls_entry*)context;
int i;
while (thread_resources) {
next = thread_resources->next;
for (i=0; i<thread_resources->count; i++) {
if (resource_types_table[i].dtor) {
resource_types_table[i].dtor(thread_resources->storage[i], &thread_resources->storage);
}
}
for (i=0; i<thread_resources->count; i++) {
free(thread_resources->storage[i]);
}
free(thread_resources->storage);
free(thread_resources);
thread_resources = next;
}
}
void *tsrm_set_interpreter_context(void *new_ctx)
{
tsrm_tls_entry *current;
current = tsrm_tls_get();
/* TODO: unlink current from the global linked list, and replace it
* it with the new context, protected by mutex where/if appropriate */
/* Set thread local storage to this new thread resources structure */
tsrm_tls_set(new_ctx);
/* return old context, so caller can restore it when they're done */
return current;
}
/* allocates a new interpreter context */
void *tsrm_new_interpreter_context(void)
{
tsrm_tls_entry *new_ctx, *current;
THREAD_T thread_id;
thread_id = tsrm_thread_id();
tsrm_mutex_lock(tsmm_mutex);
current = tsrm_tls_get();
allocate_new_resource(&new_ctx, thread_id);
/* switch back to the context that was in use prior to our creation
* of the new one */
return tsrm_set_interpreter_context(current);
}
/* frees all resources allocated for the current thread */
void ts_free_thread(void)
{
tsrm_tls_entry *thread_resources;
int i;
THREAD_T thread_id = tsrm_thread_id();
int hash_value;
tsrm_tls_entry *last=NULL;
tsrm_mutex_lock(tsmm_mutex);
hash_value = THREAD_HASH_OF(thread_id, tsrm_tls_table_size);
thread_resources = tsrm_tls_table[hash_value];
while (thread_resources) {
if (thread_resources->thread_id == thread_id) {
for (i=0; i<thread_resources->count; i++) {
if (resource_types_table[i].dtor) {
resource_types_table[i].dtor(thread_resources->storage[i], &thread_resources->storage);
}
}
for (i=0; i<thread_resources->count; i++) {
free(thread_resources->storage[i]);
}
free(thread_resources->storage);
if (last) {
last->next = thread_resources->next;
} else {
tsrm_tls_table[hash_value] = thread_resources->next;
}
tsrm_tls_set(0);
free(thread_resources);
break;
}
if (thread_resources->next) {
last = thread_resources;
}
thread_resources = thread_resources->next;
}
tsrm_mutex_unlock(tsmm_mutex);
}
/* deallocates all occurrences of a given id */
void ts_free_id(ts_rsrc_id id)
{
int i;
int j = TSRM_UNSHUFFLE_RSRC_ID(id);
tsrm_mutex_lock(tsmm_mutex);
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Freeing resource id %d", id));
if (tsrm_tls_table) {
for (i=0; i<tsrm_tls_table_size; i++) {
tsrm_tls_entry *p = tsrm_tls_table[i];
while (p) {
if (p->count > j && p->storage[j]) {
if (resource_types_table && resource_types_table[j].dtor) {
resource_types_table[j].dtor(p->storage[j], &p->storage);
}
free(p->storage[j]);
p->storage[j] = NULL;
}
p = p->next;
}
}
}
resource_types_table[j].done = 1;
tsrm_mutex_unlock(tsmm_mutex);
TSRM_ERROR((TSRM_ERROR_LEVEL_CORE, "Successfully freed resource id %d", id));
}
/*
* Utility Functions
*/
/* Obtain the current thread id */
TSRM_API THREAD_T tsrm_thread_id(void)
{
#ifdef TSRM_WIN32
return GetCurrentThreadId();
#elif defined(GNUPTH)
return pth_self();
#elif defined(PTHREADS)
return pthread_self();
#elif defined(NSAPI)
return systhread_current();
#elif defined(PI3WEB)
return PIThread_getCurrent();
#elif defined(TSRM_ST)
return st_thread_self();
#elif defined(BETHREADS)
return find_thread(NULL);
#endif
}
/* Allocate a mutex */
TSRM_API MUTEX_T tsrm_mutex_alloc(void)
{
MUTEX_T mutexp;
#ifdef TSRM_WIN32
mutexp = malloc(sizeof(CRITICAL_SECTION));
InitializeCriticalSection(mutexp);
#elif defined(GNUPTH)
mutexp = (MUTEX_T) malloc(sizeof(*mutexp));
pth_mutex_init(mutexp);
#elif defined(PTHREADS)
mutexp = (pthread_mutex_t *)malloc(sizeof(pthread_mutex_t));
pthread_mutex_init(mutexp,NULL);
#elif defined(NSAPI)
mutexp = crit_init();
#elif defined(PI3WEB)
mutexp = PIPlatform_allocLocalMutex();
#elif defined(TSRM_ST)
mutexp = st_mutex_new();
#elif defined(BETHREADS)
mutexp = (beos_ben*)malloc(sizeof(beos_ben));
mutexp->ben = 0;
mutexp->sem = create_sem(1, "PHP sempahore");
#endif
#ifdef THR_DEBUG
printf("Mutex created thread: %d\n",mythreadid());
#endif
return( mutexp );
}
/* Free a mutex */
TSRM_API void tsrm_mutex_free(MUTEX_T mutexp)
{
if (mutexp) {
#ifdef TSRM_WIN32
DeleteCriticalSection(mutexp);
free(mutexp);
#elif defined(GNUPTH)
free(mutexp);
#elif defined(PTHREADS)
pthread_mutex_destroy(mutexp);
free(mutexp);
#elif defined(NSAPI)
crit_terminate(mutexp);
#elif defined(PI3WEB)
PISync_delete(mutexp);
#elif defined(TSRM_ST)
st_mutex_destroy(mutexp);
#elif defined(BETHREADS)
delete_sem(mutexp->sem);
free(mutexp);
#endif
}
#ifdef THR_DEBUG
printf("Mutex freed thread: %d\n",mythreadid());
#endif
}
/* Lock a mutex */
TSRM_API int tsrm_mutex_lock(MUTEX_T mutexp)
{
TSRM_ERROR((TSRM_ERROR_LEVEL_INFO, "Mutex locked thread: %ld", tsrm_thread_id()));
#ifdef TSRM_WIN32
EnterCriticalSection(mutexp);
return 1;
#elif defined(GNUPTH)
return pth_mutex_acquire(mutexp, 0, NULL);
#elif defined(PTHREADS)
return pthread_mutex_lock(mutexp);
#elif defined(NSAPI)
return crit_enter(mutexp);
#elif defined(PI3WEB)
return PISync_lock(mutexp);
#elif defined(TSRM_ST)
return st_mutex_lock(mutexp);
#elif defined(BETHREADS)
if (atomic_add(&mutexp->ben, 1) != 0)
return acquire_sem(mutexp->sem);
return 0;
#endif
}
/* Unlock a mutex */
TSRM_API int tsrm_mutex_unlock(MUTEX_T mutexp)
{
TSRM_ERROR((TSRM_ERROR_LEVEL_INFO, "Mutex unlocked thread: %ld", tsrm_thread_id()));
#ifdef TSRM_WIN32
LeaveCriticalSection(mutexp);
return 1;
#elif defined(GNUPTH)
return pth_mutex_release(mutexp);
#elif defined(PTHREADS)
return pthread_mutex_unlock(mutexp);
#elif defined(NSAPI)
return crit_exit(mutexp);
#elif defined(PI3WEB)
return PISync_unlock(mutexp);
#elif defined(TSRM_ST)
return st_mutex_unlock(mutexp);
#elif defined(BETHREADS)
if (atomic_add(&mutexp->ben, -1) != 1)
return release_sem(mutexp->sem);
return 0;
#endif
}
TSRM_API void *tsrm_set_new_thread_begin_handler(tsrm_thread_begin_func_t new_thread_begin_handler)
{
void *retval = (void *) tsrm_new_thread_begin_handler;
tsrm_new_thread_begin_handler = new_thread_begin_handler;
return retval;
}
TSRM_API void *tsrm_set_new_thread_end_handler(tsrm_thread_end_func_t new_thread_end_handler)
{
void *retval = (void *) tsrm_new_thread_end_handler;
tsrm_new_thread_end_handler = new_thread_end_handler;
return retval;
}
/*
* Debug support
*/
#if TSRM_DEBUG
int tsrm_error(int level, const char *format, ...)
{
if (level<=tsrm_error_level) {
va_list args;
int size;
fprintf(tsrm_error_file, "TSRM: ");
va_start(args, format);
size = vfprintf(tsrm_error_file, format, args);
va_end(args);
fprintf(tsrm_error_file, "\n");
fflush(tsrm_error_file);
return size;
} else {
return 0;
}
}
#endif
void tsrm_error_set(int level, char *debug_filename)
{
tsrm_error_level = level;
#if TSRM_DEBUG
if (tsrm_error_file!=stderr) { /* close files opened earlier */
fclose(tsrm_error_file);
}
if (debug_filename) {
tsrm_error_file = fopen(debug_filename, "w");
if (!tsrm_error_file) {
tsrm_error_file = stderr;
}
} else {
tsrm_error_file = stderr;
}
#endif
}
#endif /* ZTS */
+186
View File
@@ -0,0 +1,186 @@
# Microsoft Developer Studio Project File - Name="TSRM" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Static Library" 0x0104
CFG=TSRM - Win32 Debug_TS
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "TSRM.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "TSRM.mak" CFG="TSRM - Win32 Debug_TS"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "TSRM - Win32 Debug_TS" (based on "Win32 (x86) Static Library")
!MESSAGE "TSRM - Win32 Release_TS" (based on "Win32 (x86) Static Library")
!MESSAGE "TSRM - Win32 Release_TS_inline" (based on "Win32 (x86) Static Library")
!MESSAGE "TSRM - Win32 Release_TSDbg" (based on "Win32 (x86) Static Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "TSRM - Win32 Debug_TS"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "TSRM___Win32_Debug_TS"
# PROP BASE Intermediate_Dir "TSRM___Win32_Debug_TS"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug_TS"
# PROP Intermediate_Dir "Debug_TS"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /I "C:\Projects\TSRM" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "." /D "_DEBUG" /D "ZTS" /D "_LIB" /D "TSRM_EXPORTS" /D "WIN32" /D "_MBCS" /D TSRM_DEBUG=1 /YX /FD /GZ /c
# ADD BASE RSC /l 0x40d /d "_DEBUG"
# ADD RSC /l 0x40d /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo
!ELSEIF "$(CFG)" == "TSRM - Win32 Release_TS"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "TSRM___Win32_Release_TS"
# PROP BASE Intermediate_Dir "TSRM___Win32_Release_TS"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release_TS"
# PROP Intermediate_Dir "Release_TS"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /D "NDEBUG" /D "ZTS" /D "_LIB" /D "TSRM_EXPORTS" /D "WIN32" /D "_MBCS" /D TSRM_DEBUG=0 /YX /FD /c
# ADD BASE RSC /l 0x40d /d "NDEBUG"
# ADD RSC /l 0x40d /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo
!ELSEIF "$(CFG)" == "TSRM - Win32 Release_TS_inline"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "TSRM___Win32_Release_TS_inline"
# PROP BASE Intermediate_Dir "TSRM___Win32_Release_TS_inline"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release_TS_inline"
# PROP Intermediate_Dir "Release_TS_inline"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "TSRM_EXPORTS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "." /D "NDEBUG" /D "ZTS" /D "_LIB" /D "TSRM_EXPORTS" /D "WIN32" /D "_MBCS" /D TSRM_DEBUG=0 /YX /FD /c
# ADD BASE RSC /l 0x40d /d "NDEBUG"
# ADD RSC /l 0x40d /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo
!ELSEIF "$(CFG)" == "TSRM - Win32 Release_TSDbg"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "TSRM___Win32_Release_TSDbg"
# PROP BASE Intermediate_Dir "TSRM___Win32_Release_TSDbg"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release_TSDbg"
# PROP Intermediate_Dir "Release_TSDbg"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "." /D "NDEBUG" /D "ZTS" /D "_LIB" /D "TSRM_EXPORTS" /D "WIN32" /D "_MBCS" /D TSRM_DEBUG=0 /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /Zi /Od /I "." /D "NDEBUG" /D "ZTS" /D "_LIB" /D "TSRM_EXPORTS" /D "WIN32" /D "_MBCS" /D TSRM_DEBUG=0 /YX /FD /c
# ADD BASE RSC /l 0x40d /d "NDEBUG"
# ADD RSC /l 0x40d /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo
!ENDIF
# Begin Target
# Name "TSRM - Win32 Debug_TS"
# Name "TSRM - Win32 Release_TS"
# Name "TSRM - Win32 Release_TS_inline"
# Name "TSRM - Win32 Release_TSDbg"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\TSRM.c
# End Source File
# Begin Source File
SOURCE=.\tsrm_strtok_r.c
# End Source File
# Begin Source File
SOURCE=.\tsrm_virtual_cwd.c
# End Source File
# Begin Source File
SOURCE=.\tsrm_win32.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=.\readdir.h
# End Source File
# Begin Source File
SOURCE=.\TSRM.h
# End Source File
# Begin Source File
SOURCE=.\tsrm_config.w32.h
# End Source File
# Begin Source File
SOURCE=.\tsrm_config_common.h
# End Source File
# Begin Source File
SOURCE=.\tsrm_strtok_r.h
# End Source File
# Begin Source File
SOURCE=.\tsrm_virtual_cwd.h
# End Source File
# Begin Source File
SOURCE=.\tsrm_win32.h
# End Source File
# End Group
# End Target
# End Project
+169
View File
@@ -0,0 +1,169 @@
/*
+----------------------------------------------------------------------+
| Thread Safe Resource Manager |
+----------------------------------------------------------------------+
| Copyright (c) 1999-2006, 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 |
+----------------------------------------------------------------------+
| Authors: Zeev Suraski <zeev@zend.com> |
+----------------------------------------------------------------------+
*/
#ifndef TSRM_H
#define TSRM_H
/* #ifndef WIN32 */
#ifndef WIN32
# include <tsrm_config.h>
#endif
#ifdef WIN32
# define TSRM_WIN32
# include "tsrm_config.w32.h"
#endif
#ifdef TSRM_WIN32
# ifdef TSRM_EXPORTS
# define TSRM_API __declspec(dllexport)
# else
# define TSRM_API __declspec(dllimport)
# endif
#else
# define TSRM_API
#endif
/* Only compile multi-threading functions if we're in ZTS mode */
#ifdef ZTS
#ifdef TSRM_WIN32
# ifndef TSRM_INCLUDE_FULL_WINDOWS_HEADERS
# define WIN32_LEAN_AND_MEAN
# endif
# include <windows.h>
# include <shellapi.h>
#elif defined(GNUPTH)
# include <pth.h>
#elif defined(PTHREADS)
# include <pthread.h>
#elif defined(TSRM_ST)
# include <st.h>
#elif defined(BETHREADS)
#include <kernel/OS.h>
#include <TLS.h>
#endif
typedef int ts_rsrc_id;
/* Define THREAD_T and MUTEX_T */
#ifdef TSRM_WIN32
# define THREAD_T DWORD
# define MUTEX_T CRITICAL_SECTION *
#elif defined(GNUPTH)
# define THREAD_T pth_t
# define MUTEX_T pth_mutex_t *
#elif defined(PTHREADS)
# define THREAD_T pthread_t
# define MUTEX_T pthread_mutex_t *
#elif defined(NSAPI)
# define THREAD_T SYS_THREAD
# define MUTEX_T CRITICAL
#elif defined(PI3WEB)
# define THREAD_T PIThread *
# define MUTEX_T PISync *
#elif defined(TSRM_ST)
# define THREAD_T st_thread_t
# define MUTEX_T st_mutex_t
#elif defined(BETHREADS)
# define THREAD_T thread_id
typedef struct {
sem_id sem;
int32 ben;
} beos_ben;
# define MUTEX_T beos_ben *
#endif
typedef void (*ts_allocate_ctor)(void *, void ***);
typedef void (*ts_allocate_dtor)(void *, void ***);
#define THREAD_HASH_OF(thr,ts) (unsigned long)thr%(unsigned long)ts
#ifdef __cplusplus
extern "C" {
#endif
/* startup/shutdown */
TSRM_API int tsrm_startup(int expected_threads, int expected_resources, int debug_level, char *debug_filename);
TSRM_API void tsrm_shutdown(void);
/* allocates a new thread-safe-resource id */
TSRM_API ts_rsrc_id ts_allocate_id(ts_rsrc_id *rsrc_id, size_t size, ts_allocate_ctor ctor, ts_allocate_dtor dtor);
/* fetches the requested resource for the current thread */
TSRM_API void *ts_resource_ex(ts_rsrc_id id, THREAD_T *th_id);
#define ts_resource(id) ts_resource_ex(id, NULL)
/* frees all resources allocated for the current thread */
TSRM_API void ts_free_thread(void);
/* deallocates all occurrences of a given id */
TSRM_API void ts_free_id(ts_rsrc_id id);
/* Debug support */
#define TSRM_ERROR_LEVEL_ERROR 1
#define TSRM_ERROR_LEVEL_CORE 2
#define TSRM_ERROR_LEVEL_INFO 3
typedef void (*tsrm_thread_begin_func_t)(THREAD_T thread_id, void ***tsrm_ls);
typedef void (*tsrm_thread_end_func_t)(THREAD_T thread_id, void ***tsrm_ls);
TSRM_API int tsrm_error(int level, const char *format, ...);
TSRM_API void tsrm_error_set(int level, char *debug_filename);
/* utility functions */
TSRM_API THREAD_T tsrm_thread_id(void);
TSRM_API MUTEX_T tsrm_mutex_alloc(void);
TSRM_API void tsrm_mutex_free(MUTEX_T mutexp);
TSRM_API int tsrm_mutex_lock(MUTEX_T mutexp);
TSRM_API int tsrm_mutex_unlock(MUTEX_T mutexp);
TSRM_API void *tsrm_set_new_thread_begin_handler(tsrm_thread_begin_func_t new_thread_begin_handler);
TSRM_API void *tsrm_set_new_thread_end_handler(tsrm_thread_end_func_t new_thread_end_handler);
/* these 3 APIs should only be used by people that fully understand the threading model
* used by PHP/Zend and the selected SAPI. */
TSRM_API void *tsrm_new_interpreter_context(void);
TSRM_API void *tsrm_set_interpreter_context(void *new_ctx);
TSRM_API void tsrm_free_interpreter_context(void *context);
#define TSRM_SHUFFLE_RSRC_ID(rsrc_id) ((rsrc_id)+1)
#define TSRM_UNSHUFFLE_RSRC_ID(rsrc_id) ((rsrc_id)-1)
#define TSRMLS_FETCH() void ***tsrm_ls = (void ***) ts_resource_ex(0, NULL)
#define TSRMLS_FETCH_FROM_CTX(ctx) void ***tsrm_ls = (void ***) ctx
#define TSRMLS_SET_CTX(ctx) ctx = (void ***) tsrm_ls
#define TSRMG(id, type, element) (((type) (*((void ***) tsrm_ls))[TSRM_UNSHUFFLE_RSRC_ID(id)])->element)
#define TSRMLS_D void ***tsrm_ls
#define TSRMLS_DC , TSRMLS_D
#define TSRMLS_C tsrm_ls
#define TSRMLS_CC , TSRMLS_C
#ifdef __cplusplus
}
#endif
#else /* non ZTS */
#define TSRMLS_FETCH()
#define TSRMLS_FETCH_FROM_CTX(ctx)
#define TSRMLS_SET_CTX(ctx)
#define TSRMLS_D void
#define TSRMLS_DC
#define TSRMLS_C
#define TSRMLS_CC
#endif /* ZTS */
#endif /* TSRM_H */
+1
View File
@@ -0,0 +1 @@
#undef PTHREADS
+5
View File
@@ -0,0 +1,5 @@
AC_DEFUN([AM_SET_LIBTOOL_VARIABLE],[
LIBTOOL='$(SHELL) $(top_builddir)/libtool $1'
])
+43
View File
@@ -0,0 +1,43 @@
# Makefile to generate build tools
#
# Standard usage:
# make -f build.mk
#
# Written by Sascha Schumann
#
# $Id$
LT_TARGETS = ltmain.sh ltconfig
config_h_in = tsrm_config.h.in
makefile_am_files = Makefile.am
makefile_in_files = $(makefile_am_files:.am=.in)
makefile_files = $(makefile_am_files:e.am=e)
targets = $(makefile_in_files) $(LT_TARGETS) configure $(config_h_in)
all: $(targets)
clean:
rm -f $(targets)
$(LT_TARGETS):
rm -f $(LT_TARGETS)
libtoolize --automake $(AMFLAGS) -f
$(makefile_in_files): $(makefile_am_files)
automake -a -i $(AMFLAGS) $(makefile_files)
aclocal.m4: configure.in acinclude.m4
aclocal
$(config_h_in): configure.in acconfig.h
# explicitly remove target since autoheader does not seem to work
# correctly otherwise (timestamps are not updated)
@rm -f $@
autoheader
configure: aclocal.m4 configure.in
autoconf
Executable
+33
View File
@@ -0,0 +1,33 @@
#!/bin/sh
case "$1" in
--copy)
automake_flags=--copy
shift
;;
esac
libtoolize --force --automake $automake_flags
mv aclocal.m4 aclocal.m4.old 2>/dev/null
aclocal
if cmp aclocal.m4.old aclocal.m4 > /dev/null 2>&1; then
echo "buildconf: keeping ${1}aclocal.m4"
mv aclocal.m4.old aclocal.m4
else
echo "buildconf: created or modified ${1}aclocal.m4"
fi
autoheader
automake --add-missing --include-deps $automake_flags
mv configure configure.old 2>/dev/null
autoconf
if cmp configure.old configure > /dev/null 2>&1; then
echo "buildconf: keeping ${1}configure"
mv configure.old configure
else
echo "buildconf: created or modified ${1}configure"
fi
+10
View File
@@ -0,0 +1,10 @@
// vim:ft=javascript
// $Id$
if (CHECK_HEADER_ADD_INCLUDE("NewAPIs.h", "CFLAGS_PHP", php_usual_include_suspects)) {
// Need to add the flag directly, since TSRM doesn't include the config
// header
ADD_FLAG("CFLAGS_PHP", "/DHAVE_NEWAPIS_H=1");
}
ADD_SOURCES("TSRM", "TSRM.c tsrm_strtok_r.c tsrm_virtual_cwd.c tsrm_win32.c");
+31
View File
@@ -0,0 +1,31 @@
dnl $Id$
dnl
dnl Minimalistic configure.in for TSRM.
dnl
AC_INIT(TSRM.c)
AM_INIT_AUTOMAKE(TSRM, 1.0, nodefine)
AM_CONFIG_HEADER(tsrm_config.h)
sinclude(tsrm.m4)
TSRM_BASIC_CHECKS
TSRM_THREADS_CHECKS
AM_PROG_LIBTOOL
if test "$enable_debug" != "yes"; then
AM_SET_LIBTOOL_VARIABLE([--silent])
fi
dnl TSRM_PTHREAD
AC_CHECK_HEADERS(
utime.h \
dirent.h \
stdarg.h \
alloca.h \
unistd.h \
limits.h
)
AC_OUTPUT(Makefile)
+44
View File
@@ -0,0 +1,44 @@
#ifndef READDIR_H
#define READDIR_H
/*
* Structures and types used to implement opendir/readdir/closedir
* on Windows 95/NT.
*/
#include <io.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
/* struct dirent - same as Unix */
struct dirent {
long d_ino; /* inode (always 1 in WIN32) */
off_t d_off; /* offset to this dirent */
unsigned short d_reclen; /* length of d_name */
char d_name[_MAX_FNAME + 1]; /* filename (null terminated) */
};
/* typedef DIR - not the same as Unix */
typedef struct {
long handle; /* _findfirst/_findnext handle */
short offset; /* offset into directory */
short finished; /* 1 if there are not more files */
struct _finddata_t fileinfo; /* from _findfirst/_findnext */
char *dir; /* the dir we are reading */
struct dirent dent; /* the dirent to return */
} DIR;
/* Function prototypes */
DIR *opendir(const char *);
struct dirent *readdir(DIR *);
int readdir_r(DIR *, struct dirent *, struct dirent **);
int closedir(DIR *);
void rewinddir(DIR *);
#endif /* READDIR_H */
+173
View File
@@ -0,0 +1,173 @@
dnl Copyright (c) 1999, 2000 Sascha Schumann. All rights reserved.
dnl
dnl Redistribution and use in source and binary forms, with or without
dnl modification, are permitted provided that the following conditions
dnl are met:
dnl
dnl 1. Redistributions of source code must retain the above copyright
dnl notice, this list of conditions and the following disclaimer.
dnl
dnl 2. Redistributions in binary form must reproduce the above copyright
dnl notice, this list of conditions and the following disclaimer in
dnl the documentation and/or other materials provided with the
dnl distribution.
dnl
dnl THIS SOFTWARE IS PROVIDED BY SASCHA SCHUMANN ``AS IS'' AND ANY
dnl EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
dnl IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
dnl PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SASCHA SCHUMANN OR
dnl HIS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
dnl SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
dnl NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
dnl LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
dnl HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
dnl STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
dnl ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
dnl OF THE POSSIBILITY OF SUCH DAMAGE.
dnl
dnl PTHREADS_FLAGS
dnl
dnl Set some magic defines to achieve POSIX threads conformance
dnl
AC_DEFUN([PTHREADS_FLAGS],[
if test -z "$host_alias" && test -n "$host"; then
host_alias=$host
fi
if test -z "$host_alias"; then
AC_MSG_ERROR(host_alias is not set. Make sure to run config.guess)
fi
case $host_alias in
*solaris*)
PTHREAD_FLAGS="-D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT";;
*freebsd*)
PTHREAD_FLAGS="-D_REENTRANT -D_THREAD_SAFE";;
*linux*)
PTHREAD_FLAGS=-D_REENTRANT;;
*aix*)
PTHREAD_FLAGS=-D_THREAD_SAFE;;
*irix*)
PTHREAD_FLAGS=-D_POSIX_THREAD_SAFE_FUNCTIONS;;
*hpux*)
PTHREAD_FLAGS=-D_REENTRANT;;
*sco*)
PTHREAD_FLAGS=-D_REENTRANT;;
dnl Solves sigwait() problem, creates problems with u_long etc.
dnl PTHREAD_FLAGS="-D_REENTRANT -D_XOPEN_SOURCE=500 -D_POSIX_C_SOURCE=199506 -D_XOPEN_SOURCE_EXTENDED=1";;
esac
if test -n "$PTHREAD_FLAGS"; then
CPPFLAGS="$CPPFLAGS $PTHREAD_FLAGS"
fi
])dnl
dnl
dnl PTHREADS_CHECK_COMPILE
dnl
dnl Check whether the current setup can use POSIX threads calls
dnl
AC_DEFUN([PTHREADS_CHECK_COMPILE], [
AC_TRY_RUN( [
#include <pthread.h>
#include <stddef.h>
void *thread_routine(void *data) {
return data;
}
int main() {
pthread_t thd;
pthread_mutexattr_t mattr;
int data = 1;
pthread_mutexattr_init(&mattr);
return pthread_create(&thd, NULL, thread_routine, &data);
} ], [
pthreads_working=yes
], [
pthreads_working=no
], [
dnl For cross compiling running this test is of no use. NetWare supports pthreads
pthreads_working=no
case $host_alias in
*netware*)
pthreads_working=yes
esac
]
) ] )dnl
dnl
dnl PTHREADS_CHECK()
dnl
dnl Try to find a way to enable POSIX threads
dnl
dnl Magic flags
dnl -kthread gcc (FreeBSD)
dnl -Kthread UDK cc (UnixWare)
dnl -mt WorkShop cc (Solaris)
dnl -mthreads gcc (AIX)
dnl -pthread gcc (Linux, FreeBSD, NetBSD, OpenBSD)
dnl -pthreads gcc (Solaris)
dnl -qthreaded AIX cc V5
dnl -threads gcc (HP-UX)
dnl
AC_DEFUN([PTHREADS_CHECK],[
if test "$beos_threads" = "1"; then
pthreads_working="yes"
ac_cv_pthreads_cflags=""
else
save_CFLAGS=$CFLAGS
save_LIBS=$LIBS
PTHREADS_ASSIGN_VARS
PTHREADS_CHECK_COMPILE
LIBS=$save_LIBS
CFLAGS=$save_CFLAGS
AC_CACHE_CHECK(for pthreads_cflags,ac_cv_pthreads_cflags,[
ac_cv_pthreads_cflags=
if test "$pthreads_working" != "yes"; then
for flag in -kthread -pthread -pthreads -mthreads -Kthread -threads -mt -qthreaded; do
ac_save=$CFLAGS
CFLAGS="$CFLAGS $flag"
PTHREADS_CHECK_COMPILE
CFLAGS=$ac_save
if test "$pthreads_working" = "yes"; then
ac_cv_pthreads_cflags=$flag
break
fi
done
fi
fi
])
AC_CACHE_CHECK(for pthreads_lib, ac_cv_pthreads_lib,[
ac_cv_pthreads_lib=
if test "$pthreads_working" != "yes"; then
for lib in pthread pthreads c_r; do
ac_save=$LIBS
LIBS="$LIBS -l$lib"
PTHREADS_CHECK_COMPILE
LIBS=$ac_save
if test "$pthreads_working" = "yes"; then
ac_cv_pthreads_lib=$lib
break
fi
done
fi
])
if test "$pthreads_working" = "yes"; then
threads_result="POSIX-Threads found"
else
threads_result="POSIX-Threads not found"
fi
])dnl
dnl
dnl
AC_DEFUN([PTHREADS_ASSIGN_VARS],[
if test -n "$ac_cv_pthreads_lib"; then
LIBS="$LIBS -l$ac_cv_pthreads_lib"
fi
if test -n "$ac_cv_pthreads_cflags"; then
CFLAGS="$CFLAGS $ac_cv_pthreads_cflags"
fi
])dnl
+129
View File
@@ -0,0 +1,129 @@
dnl TSRM_CHECK_GCC_ARG(ARG, ACTION-IF-FOUND, ACTION-IF-NOT_FOUND)
AC_DEFUN([TSRM_CHECK_GCC_ARG],[
gcc_arg_name=[ac_cv_gcc_arg]translit($1,A-Z-,a-z_)
AC_CACHE_CHECK([whether $CC supports $1], [ac_cv_gcc_arg]translit($1,A-Z-,a-z_), [
echo 'void somefunc() { };' > conftest.c
cmd='$CC $1 -c conftest.c'
if eval $cmd 2>&1 | egrep -e $1 >/dev/null ; then
ac_result=no
else
ac_result=yes
fi
eval $gcc_arg_name=$ac_result
rm -f conftest.*
])
if eval test "\$$gcc_arg_name" = "yes"; then
$2
else
:
$3
fi
])
AC_DEFUN([TSRM_BASIC_CHECKS],[
AC_REQUIRE([AC_PROG_CC])dnl
dnl AC_REQUIRE([AM_PROG_CC_STDC])dnl
AC_REQUIRE([AC_PROG_CC_C_O])dnl
AC_REQUIRE([AC_PROG_RANLIB])dnl
AC_CHECK_HEADERS(stdarg.h)
])
AC_DEFUN([TSRM_CHECK_PTH],[
AC_MSG_CHECKING(for GNU Pth)
PTH_PREFIX="`$1 --prefix`"
if test -z "$PTH_PREFIX"; then
AC_MSG_RESULT(Please check your Pth installation)
fi
CPPFLAGS="$CPPFLAGS `$1 --cflags`"
LDFLAGS="$LDFLAGS `$1 --ldflags`"
LIBS="$LIBS `$1 --libs`"
AC_DEFINE(GNUPTH, 1, [Whether you use GNU Pth])
AC_MSG_RESULT(yes - installed in $PTH_PREFIX)
])
AC_DEFUN([TSRM_CHECK_ST],[
if test -r "$1/include/st.h"; then
CPPFLAGS="$CPPFLAGS -I$1/include"
LDFLAGS="$LDFLAGS -L$1/lib"
elif test -r "$1/st.h"; then
CPPFLAGS="$CPPFLAGS -I$1"
LDFLAGS="$LDFLAGS -L$1"
fi
AC_CHECK_HEADERS(st.h,[],[
AC_MSG_ERROR([Sorry[,] I was unable to locate the State Threads header file. Please specify the prefix using --with-tsrm-st=/prefix])
])
LIBS="$LIBS -lst"
AC_MSG_CHECKING(for SGI's State Threads)
AC_MSG_RESULT(yes)
AC_DEFINE(TSRM_ST, 1, [ ])
])
sinclude(threads.m4)
sinclude(TSRM/threads.m4)
AC_DEFUN([TSRM_CHECK_PTHREADS],[
PTHREADS_CHECK
if test "$beos_threads" = "1"; then
AC_DEFINE(BETHREADS, 1, Whether to use native BeOS threads)
else
if test "$pthreads_working" != "yes"; then
AC_MSG_ERROR(Your system seems to lack POSIX threads.)
fi
AC_DEFINE(PTHREADS, 1, Whether to use Pthreads)
AC_MSG_CHECKING(for POSIX threads)
AC_MSG_RESULT(yes)
fi
])
AC_DEFUN([TSRM_THREADS_CHECKS],[
dnl For the thread implementations, we always use --with-*
dnl to maintain consistency
AC_ARG_WITH(tsrm-pth,
[ --with-tsrm-pth[=pth-config]
Use GNU Pth],[
TSRM_PTH=$withval
],[
TSRM_PTH=no
])
AC_ARG_WITH(tsrm-st,
[ --with-tsrm-st Use SGI's State Threads],[
TSRM_ST=$withval
],[
TSRM_ST=no
])
AC_ARG_WITH(tsrm-pthreads,
[ --with-tsrm-pthreads Use POSIX threads (default)],[
TSRM_PTHREADS=$withval
],[
TSRM_PTHREADS=yes
])
test "$TSRM_PTH" = "yes" && TSRM_PTH=pth-config
if test "$TSRM_PTH" != "no"; then
TSRM_CHECK_PTH($TSRM_PTH)
elif test "$TSRM_ST" != "no"; then
TSRM_CHECK_ST($TSRM_ST)
elif test "$TSRM_PTHREADS" != "no"; then
TSRM_CHECK_PTHREADS
fi
])
+20
View File
@@ -0,0 +1,20 @@
#ifndef TSRM_CONFIG_W32_H
#define TSRM_CONFIG_W32_H
#define HAVE_UTIME 1
#define HAVE_ALLOCA 1
#define HAVE_REALPATH 1
#include <malloc.h>
#include <stdlib.h>
#include <crtdbg.h>
#undef inline
#ifdef ZEND_WIN32_FORCE_INLINE
# define inline __forceinline
#else
# define inline
#endif
#endif
+60
View File
@@ -0,0 +1,60 @@
#ifndef TSRM_CONFIG_COMMON_H
#define TSRM_CONFIG_COMMON_H
#if WINNT|WIN32
# define TSRM_WIN32
#endif
#ifdef TSRM_WIN32
# include "tsrm_config.w32.h"
#else
# include <tsrm_config.h>
# include <sys/param.h>
#endif
#if HAVE_ALLOCA_H && !defined(_ALLOCA_H)
# include <alloca.h>
#endif
/* AIX requires this to be the first thing in the file. */
#ifndef __GNUC__
# ifndef HAVE_ALLOCA_H
# ifdef _AIX
#pragma alloca
# else
# ifndef alloca /* predefined by HP cc +Olibcalls */
# ifndef NETWARE
char *alloca ();
# endif
# endif
# endif
# endif
#endif
#if HAVE_UNISTD_H
#include <unistd.h>
#endif
#if HAVE_LIMITS_H
#include <limits.h>
#endif
#ifndef MAXPATHLEN
# ifdef PATH_MAX
# define MAXPATHLEN PATH_MAX
# elif defined(MAX_PATH)
# define MAXPATHLEN MAX_PATH
# else
# define MAXPATHLEN 256
# endif
#endif
#if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2))
# define tsrm_do_alloca(p) alloca(p)
# define tsrm_free_alloca(p)
#else
# define tsrm_do_alloca(p) malloc(p)
# define tsrm_free_alloca(p) free(p)
#endif
#endif /* TSRM_CONFIG_COMMON_H */
+240
View File
@@ -0,0 +1,240 @@
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2006 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 |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Venkat Raghavan S <rvenkat@novell.com> |
| Anantha Kesari H Y <hyanantha@novell.com> |
+----------------------------------------------------------------------+
*/
/* $Id$ */
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include "TSRM.h"
#ifdef NETWARE
#ifdef USE_MKFIFO
#include <sys/stat.h>
#elif !defined(USE_PIPE_OPEN) /* NXFifoOpen */
#include <nks/fsio.h>
#endif
#include <nks/vm.h>
#include <nks/memory.h>
#include <string.h>
#include "mktemp.h"
/* strtok() call in LibC is abending when used in a different address space
* -- hence using PHP's version itself for now
*/
#include "tsrm_strtok_r.h"
#define tsrm_strtok_r(a,b,c) strtok((a),(b))
#define WHITESPACE " \t"
#define MAX_ARGS 10
TSRM_API FILE* popen(const char *commandline, const char *type)
{
char *command = NULL, *argv[MAX_ARGS] = {'\0'}, **env = NULL;
char *tempName = "sys:/php/temp/phpXXXXXX.tmp";
char *filePath = NULL;
char *ptr = NULL;
int ptrLen = 0, argc = 0, i = 0, envCount = 0, err = 0;
FILE *stream = NULL;
#if defined(USE_PIPE_OPEN) || defined(USE_MKFIFO)
int pipe_handle;
int mode = O_RDONLY;
#else
NXHandle_t pipe_handle;
NXMode_t mode = NX_O_RDONLY;
#endif
NXExecEnvSpec_t envSpec;
NXNameSpec_t nameSpec;
NXVmId_t newVM = 0;
/* Check for validity of input parameters */
if (!commandline || !type)
return NULL;
/* Get temporary file name */
filePath = mktemp(tempName);
if (!filePath)
return NULL;
/* Set pipe mode according to type -- for now allow only "r" or "w" */
if (strcmp(type, "r") == 0)
#if defined(USE_PIPE_OPEN) || defined(USE_MKFIFO)
mode = O_RDONLY;
#else
mode = NX_O_RDONLY;
#endif
else if (strcmp(type, "w") == 0)
#if defined(USE_PIPE_OPEN) || defined(USE_MKFIFO)
mode = O_WRONLY;
#else
mode = NX_O_WRONLY;
#endif
else
return NULL;
#ifdef USE_PIPE_OPEN
pipe_handle = pipe_open(filePath, mode);
if (pipe_handle == -1)
return NULL;
#elif defined(USE_MKFIFO)
pipe_handle = mkfifo(filePath, mode);
if (pipe_handle == -1)
return NULL;
#else
/* - NetWare doesn't require first parameter
* - Allowing LibC to choose the buffer size for now
*/
err = NXFifoOpen(0, filePath, mode, 0, &pipe_handle);
if (err)
return NULL;
#endif
/* Copy the environment variables in preparation for the spawn call */
envCount = NXGetEnvCount() + 1; /* add one for NULL */
env = (char **) NXMemAlloc(sizeof(char *) * envCount, 0);
if (!env)
return NULL;
err = NXCopyEnv(env, envCount);
if (err) {
NXMemFree (env);
return NULL;
}
/* Separate commandline string into words */
ptr = tsrm_strtok_r((char*)commandline, WHITESPACE, NULL);
ptrLen = strlen(ptr);
command = (char*)malloc(ptrLen + 1);
if (!command) {
NXMemFree (env);
return NULL;
}
strcpy (command, ptr);
ptr = tsrm_strtok_r(NULL, WHITESPACE, NULL);
while (ptr && (argc < MAX_ARGS)) {
ptrLen = strlen(ptr);
argv[argc] = (char*)malloc(ptrLen + 1);
if (!argv[argc]) {
NXMemFree (env);
if (command)
free (command);
for (i = 0; i < argc; i++) {
if (argv[i])
free (argv[i]);
}
return NULL;
}
strcpy (argv[argc], ptr);
argc++;
ptr = tsrm_strtok_r(NULL, WHITESPACE, NULL);
}
/* Setup the execution environment and spawn new process */
envSpec.esFlags = 0; /* Not used */
envSpec.esArgc = argc;
envSpec.esArgv = (void **) argv;
envSpec.esEnv = (void **) env;
/* envSpec.esStdin.ssType = */
envSpec.esStdout.ssType = NX_OBJ_FIFO;
envSpec.esStderr.ssType = NX_OBJ_FILE;
/* 'ssHandle' is not a struct/union/class member */
/*
envSpec.esStdin.ssHandle =
envSpec.esStdout.ssHandle =
envSpec.esStderr.ssHandle = -1;
*/
envSpec.esStdin.ssPathCtx = NULL;
envSpec.esStdout.ssPathCtx = NULL;
envSpec.esStderr.ssPathCtx = NULL;
#if defined(USE_PIPE_OPEN) || defined(USE_MKFIFO)
if (mode == O_RDONLY) {
#else
if (mode == NX_O_RDONLY) {
#endif
envSpec.esStdin.ssPath = filePath;
envSpec.esStdout.ssPath = stdout;
} else { /* Write Only */
envSpec.esStdin.ssPath = stdin;
envSpec.esStdout.ssPath = filePath;
}
envSpec.esStderr.ssPath = stdout;
nameSpec.ssType = NX_OBJ_FIFO;
/* nameSpec.ssHandle = 0; */ /* 'ssHandle' is not a struct/union/class member */
nameSpec.ssPathCtx = NULL; /* Not used */
nameSpec.ssPath = argv[0];
err = NXVmSpawn(&nameSpec, &envSpec, 0, &newVM);
if (!err)
/* Get file pointer corresponding to the pipe (file) opened */
stream = fdopen(pipe_handle, type);
/* Clean-up */
if (env)
NXMemFree (env);
if (pipe_handle)
#if defined(USE_PIPE_OPEN) || defined(USE_MKFIFO)
close(pipe_handle);
#else
NXClose(pipe_handle);
#endif
if (command)
free (command);
for (i = 0; i < argc; i++) {
if (argv[i])
free (argv[i]);
}
return stream;
}
TSRM_API int pclose(FILE* stream)
{
int err = 0;
NXHandle_t fd = 0;
/* Get the process associated with this pipe (file) handle and terminate it */
fd = fileno(stream);
NXClose (fd);
err = fclose(stream);
return err;
}
#endif /* NETWARE */
+29
View File
@@ -0,0 +1,29 @@
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2006 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 |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Venkat Raghavan S <rvenkat@novell.com> |
| Anantha Kesari H Y <hyanantha@novell.com> |
+----------------------------------------------------------------------+
*/
#ifndef TSRM_NW_H
#define TSRM_NW_H
#include "TSRM.h"
TSRM_API FILE* popen(const char *command, const char *type);
TSRM_API int pclose(FILE* stream);
#endif
+63
View File
@@ -0,0 +1,63 @@
#include <stdio.h>
#include "tsrm_config_common.h"
#include "tsrm_strtok_r.h"
static inline int in_character_class(char ch, const char *delim)
{
while (*delim) {
if (*delim == ch) {
return 1;
}
delim++;
}
return 0;
}
char *tsrm_strtok_r(char *s, const char *delim, char **last)
{
char *token;
if (s == NULL) {
s = *last;
}
while (*s && in_character_class(*s, delim)) {
s++;
}
if (!*s) {
return NULL;
}
token = s;
while (*s && !in_character_class(*s, delim)) {
s++;
}
if (!*s) {
*last = s;
} else {
*s = '\0';
*last = s + 1;
}
return token;
}
#if 0
main()
{
char foo[] = "/foo/bar//\\barbara";
char *last;
char *token;
token = tsrm_strtok_r(foo, "/\\", &last);
while (token) {
printf ("Token = '%s'\n", token);
token = tsrm_strtok_r(NULL, "/\\", &last);
}
return 0;
}
#endif
+6
View File
@@ -0,0 +1,6 @@
#ifndef TSRM_STRTOK_R
#define TSRM_STRTOK_R
char *tsrm_strtok_r(char *s, const char *delim, char **last);
#endif
File diff suppressed because it is too large. Load diff
+312
View File
@@ -0,0 +1,312 @@
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2006 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 |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Andi Gutmans <andi@zend.com> |
| Sascha Schumann <sascha@schumann.cx> |
+----------------------------------------------------------------------+
*/
/* $Id$ */
#ifndef VIRTUAL_CWD_H
#define VIRTUAL_CWD_H
#include "TSRM.h"
#include "tsrm_config_common.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <ctype.h>
#ifdef HAVE_UTIME_H
#include <utime.h>
#endif
#ifdef HAVE_STDARG_H
#include <stdarg.h>
#endif
#ifndef TSRM_WIN32
#include <unistd.h>
#endif
#if defined(__osf__) || defined(_AIX)
#include <errno.h>
#endif
#ifdef TSRM_WIN32
#include "readdir.h"
#include <sys/utime.h>
/* mode_t isn't defined on Windows */
typedef unsigned short mode_t;
#define DEFAULT_SLASH '\\'
#define DEFAULT_DIR_SEPARATOR ';'
#define IS_SLASH(c) ((c) == '/' || (c) == '\\')
#define IS_SLASH_P(c) (*(c) == '/' || \
(*(c) == '\\' && !IsDBCSLeadByte(*(c-1))))
/* COPY_WHEN_ABSOLUTE is 2 under Win32 because by chance both regular absolute paths
in the file system and UNC paths need copying of two characters */
#define COPY_WHEN_ABSOLUTE(path) 2
#define IS_UNC_PATH(path, len) \
(len >= 2 && IS_SLASH(path[0]) && IS_SLASH(path[1]))
#define IS_ABSOLUTE_PATH(path, len) \
(len >= 2 && ((isalpha(path[0]) && path[1] == ':') || IS_UNC_PATH(path, len)))
#elif defined(NETWARE)
#ifdef HAVE_DIRENT_H
#include <dirent.h>
#endif
#define DEFAULT_SLASH '/'
#define DEFAULT_DIR_SEPARATOR ';'
#define IS_SLASH(c) ((c) == '/' || (c) == '\\')
#define IS_SLASH_P(c) IS_SLASH(*(c))
/* Colon indicates volume name, either first character should be forward slash or backward slash */
#define IS_ABSOLUTE_PATH(path, len) \
((strchr(path, ':') != NULL) || ((len >= 1) && ((path[0] == '/') || (path[0] == '\\'))))
#else
#ifdef HAVE_DIRENT_H
#include <dirent.h>
#endif
#define DEFAULT_SLASH '/'
#ifdef __riscos__
#define DEFAULT_DIR_SEPARATOR ';'
#else
#define DEFAULT_DIR_SEPARATOR ':'
#endif
#define IS_SLASH(c) ((c) == '/')
#define IS_SLASH_P(c) (*(c) == '/')
#endif
#ifndef COPY_WHEN_ABSOLUTE
#define COPY_WHEN_ABSOLUTE(path) 0
#endif
#ifndef IS_ABSOLUTE_PATH
#define IS_ABSOLUTE_PATH(path, len) \
(IS_SLASH(path[0]))
#endif
#ifdef TSRM_EXPORTS
#define CWD_EXPORTS
#endif
#ifdef TSRM_WIN32
# ifdef CWD_EXPORTS
# define CWD_API __declspec(dllexport)
# else
# define CWD_API __declspec(dllimport)
# endif
#else
#define CWD_API
#endif
typedef struct _cwd_state {
char *cwd;
int cwd_length;
} cwd_state;
typedef int (*verify_path_func)(const cwd_state *);
CWD_API void virtual_cwd_startup(void);
CWD_API void virtual_cwd_shutdown(void);
CWD_API char *virtual_getcwd_ex(size_t *length TSRMLS_DC);
CWD_API char *virtual_getcwd(char *buf, size_t size TSRMLS_DC);
CWD_API int virtual_chdir(const char *path TSRMLS_DC);
CWD_API int virtual_chdir_file(const char *path, int (*p_chdir)(const char *path TSRMLS_DC) TSRMLS_DC);
CWD_API int virtual_filepath(const char *path, char **filepath TSRMLS_DC);
CWD_API int virtual_filepath_ex(const char *path, char **filepath, verify_path_func verify_path TSRMLS_DC);
CWD_API char *virtual_realpath(const char *path, char *real_path TSRMLS_DC);
CWD_API FILE *virtual_fopen(const char *path, const char *mode TSRMLS_DC);
CWD_API int virtual_open(const char *path TSRMLS_DC, int flags, ...);
CWD_API int virtual_creat(const char *path, mode_t mode TSRMLS_DC);
CWD_API int virtual_rename(char *oldname, char *newname TSRMLS_DC);
CWD_API int virtual_stat(const char *path, struct stat *buf TSRMLS_DC);
#if !defined(TSRM_WIN32)
CWD_API int virtual_lstat(const char *path, struct stat *buf TSRMLS_DC);
#endif
CWD_API int virtual_unlink(const char *path TSRMLS_DC);
CWD_API int virtual_mkdir(const char *pathname, mode_t mode TSRMLS_DC);
CWD_API int virtual_rmdir(const char *pathname TSRMLS_DC);
CWD_API DIR *virtual_opendir(const char *pathname TSRMLS_DC);
CWD_API FILE *virtual_popen(const char *command, const char *type TSRMLS_DC);
CWD_API int virtual_access(const char *pathname, int mode TSRMLS_DC);
#if defined(TSRM_WIN32)
/* these are not defined in win32 headers */
#ifndef W_OK
#define W_OK 0x02
#endif
#ifndef R_OK
#define R_OK 0x04
#endif
#ifndef X_OK
#define X_OK 0x01
#endif
#ifndef F_OK
#define F_OK 0x00
#endif
#endif
/* On AIX & Tru64 when a file does not exist realpath() returns
* NULL, and sets errno to ENOENT. Unlike in other libc implementations
* the destination is not filled and remains undefined. Therefor, we
* must populate it manually using strcpy as done on systems with no
* realpath() function.
*/
#if defined(__osf__) || defined(_AIX)
static char *php_realpath_hack(char *src, char *dest)
{
char *ret;
if ((ret = realpath(src, dest)) == NULL && errno == ENOENT) {
return strcpy(dest, src);
} else {
return ret;
}
}
#endif
#if HAVE_UTIME
CWD_API int virtual_utime(const char *filename, struct utimbuf *buf TSRMLS_DC);
#endif
CWD_API int virtual_chmod(const char *filename, mode_t mode TSRMLS_DC);
#if !defined(TSRM_WIN32) && !defined(NETWARE)
CWD_API int virtual_chown(const char *filename, uid_t owner, gid_t group TSRMLS_DC);
#endif
CWD_API int virtual_file_ex(cwd_state *state, const char *path, verify_path_func verify_path, int use_realpath);
#define REALPATH_CACHE
#define REALPATH_CACHE_TTL (2*60) /* 2 minutes */
#define REALPATH_CACHE_SIZE 0 /* disabled while php.ini isn't loaded */
#ifdef REALPATH_CACHE
typedef struct _realpath_cache_bucket {
unsigned long key;
char *path;
int path_len;
char *realpath;
int realpath_len;
time_t expires;
struct _realpath_cache_bucket *next;
} realpath_cache_bucket;
#endif
typedef struct _virtual_cwd_globals {
cwd_state cwd;
#ifdef REALPATH_CACHE
long realpath_cache_size;
long realpath_cache_size_limit;
long realpath_cache_ttl;
realpath_cache_bucket *realpath_cache[1024];
#endif
} virtual_cwd_globals;
#ifdef ZTS
extern ts_rsrc_id cwd_globals_id;
# define CWDG(v) TSRMG(cwd_globals_id, virtual_cwd_globals *, v)
#else
extern virtual_cwd_globals cwd_globals;
# define CWDG(v) (cwd_globals.v)
#endif
/* The actual macros to be used in programs using TSRM
* If the program defines VIRTUAL_DIR it will use the
* virtual_* functions
*/
#ifdef VIRTUAL_DIR
#define VCWD_GETCWD(buff, size) virtual_getcwd(buff, size TSRMLS_CC)
#define VCWD_FOPEN(path, mode) virtual_fopen(path, mode TSRMLS_CC)
/* Because open() has two modes, we have to macros to replace it */
#define VCWD_OPEN(path, flags) virtual_open(path TSRMLS_CC, flags)
#define VCWD_OPEN_MODE(path, flags, mode) virtual_open(path TSRMLS_CC, flags, mode)
#define VCWD_CREAT(path, mode) virtual_creat(path, mode TSRMLS_CC)
#define VCWD_CHDIR(path) virtual_chdir(path TSRMLS_CC)
#define VCWD_CHDIR_FILE(path) virtual_chdir_file(path, virtual_chdir TSRMLS_CC)
#define VCWD_GETWD(buf)
#define VCWD_REALPATH(path, real_path) virtual_realpath(path, real_path TSRMLS_CC)
#define VCWD_RENAME(oldname, newname) virtual_rename(oldname, newname TSRMLS_CC)
#define VCWD_STAT(path, buff) virtual_stat(path, buff TSRMLS_CC)
#if !defined(TSRM_WIN32)
#define VCWD_LSTAT(path, buff) virtual_lstat(path, buff TSRMLS_CC)
#endif
#define VCWD_UNLINK(path) virtual_unlink(path TSRMLS_CC)
#define VCWD_MKDIR(pathname, mode) virtual_mkdir(pathname, mode TSRMLS_CC)
#define VCWD_RMDIR(pathname) virtual_rmdir(pathname TSRMLS_CC)
#define VCWD_OPENDIR(pathname) virtual_opendir(pathname TSRMLS_CC)
#define VCWD_POPEN(command, type) virtual_popen(command, type TSRMLS_CC)
#define VCWD_ACCESS(pathname, mode) virtual_access(pathname, mode TSRMLS_CC)
#if HAVE_UTIME
#define VCWD_UTIME(path, time) virtual_utime(path, time TSRMLS_CC)
#endif
#define VCWD_CHMOD(path, mode) virtual_chmod(path, mode TSRMLS_CC)
#if !defined(TSRM_WIN32) && !defined(NETWARE)
#define VCWD_CHOWN(path, owner, group) virtual_chown(path, owner, group TSRMLS_CC)
#endif
#else
#define VCWD_GETCWD(buff, size) getcwd(buff, size)
#define VCWD_FOPEN(path, mode) fopen(path, mode)
#define VCWD_OPEN(path, flags) open(path, flags)
#define VCWD_OPEN_MODE(path, flags, mode) open(path, flags, mode)
#define VCWD_CREAT(path, mode) creat(path, mode)
#define VCWD_RENAME(oldname, newname) rename(oldname, newname)
#define VCWD_CHDIR(path) chdir(path)
#define VCWD_CHDIR_FILE(path) virtual_chdir_file(path, chdir)
#define VCWD_GETWD(buf) getwd(buf)
#define VCWD_STAT(path, buff) stat(path, buff)
#define VCWD_LSTAT(path, buff) lstat(path, buff)
#define VCWD_UNLINK(path) unlink(path)
#define VCWD_MKDIR(pathname, mode) mkdir(pathname, mode)
#define VCWD_RMDIR(pathname) rmdir(pathname)
#define VCWD_OPENDIR(pathname) opendir(pathname)
#define VCWD_POPEN(command, type) popen(command, type)
#if defined(TSRM_WIN32)
#define VCWD_ACCESS(pathname, mode) tsrm_win32_access(pathname, mode)
#else
#define VCWD_ACCESS(pathname, mode) access(pathname, mode)
#endif
#ifdef HAVE_REALPATH
#if defined(__osf__) || defined(_AIX)
#define VCWD_REALPATH(path, real_path) php_realpath_hack(path, real_path)
#else
#define VCWD_REALPATH(path, real_path) realpath(path, real_path)
#endif
#else
#define VCWD_REALPATH(path, real_path) strcpy(real_path, path)
#endif
#if HAVE_UTIME
#define VCWD_UTIME(path, time) utime(path, time)
#endif
#define VCWD_CHMOD(path, mode) chmod(path, mode)
#if !defined(TSRM_WIN32) && !defined(NETWARE)
#define VCWD_CHOWN(path, owner, group) chown(path, owner, group)
#endif
#endif
#endif /* VIRTUAL_CWD_H */
+388
View File
@@ -0,0 +1,388 @@
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2006 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 |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Daniel Beulshausen <daniel@php4win.de> |
+----------------------------------------------------------------------+
*/
/* $Id$ */
#include <stdio.h>
#include <fcntl.h>
#include <io.h>
#include <process.h>
#include <time.h>
#define TSRM_INCLUDE_FULL_WINDOWS_HEADERS
#include "TSRM.h"
#ifdef TSRM_WIN32
#include "tsrm_win32.h"
#ifdef ZTS
static ts_rsrc_id win32_globals_id;
#else
static tsrm_win32_globals win32_globals;
#endif
static void tsrm_win32_ctor(tsrm_win32_globals *globals TSRMLS_DC)
{
globals->process = NULL;
globals->shm = NULL;
globals->process_size = 0;
globals->shm_size = 0;
globals->comspec = _strdup((GetVersion()<0x80000000)?"cmd.exe":"command.com");
}
static void tsrm_win32_dtor(tsrm_win32_globals *globals TSRMLS_DC)
{
shm_pair *ptr;
if (globals->process) {
free(globals->process);
}
if (globals->shm) {
for (ptr = globals->shm; ptr < (globals->shm + globals->shm_size); ptr++) {
UnmapViewOfFile(ptr->addr);
CloseHandle(ptr->segment);
UnmapViewOfFile(ptr->descriptor);
CloseHandle(ptr->info);
}
free(globals->shm);
}
free(globals->comspec);
}
TSRM_API void tsrm_win32_startup(void)
{
#ifdef ZTS
ts_allocate_id(&win32_globals_id, sizeof(tsrm_win32_globals), (ts_allocate_ctor)tsrm_win32_ctor, (ts_allocate_ctor)tsrm_win32_dtor);
#else
tsrm_win32_ctor(&win32_globals TSRMLS_CC);
#endif
}
TSRM_API void tsrm_win32_shutdown(void)
{
#ifndef ZTS
tsrm_win32_dtor(&win32_globals TSRMLS_CC);
#endif
}
TSRM_API int tsrm_win32_access(const char *pathname, int mode)
{
SHFILEINFO sfi;
if (mode == 1 /*X_OK*/) {
return access(pathname, 0) == 0 &&
SHGetFileInfo(pathname, 0, &sfi, sizeof(SHFILEINFO), SHGFI_EXETYPE) != 0 ? 0 : -1;
} else {
return access(pathname, mode);
}
}
static process_pair *process_get(FILE *stream TSRMLS_DC)
{
process_pair *ptr;
process_pair *newptr;
for (ptr = TWG(process); ptr < (TWG(process) + TWG(process_size)); ptr++) {
if (ptr->stream == stream) {
break;
}
}
if (ptr < (TWG(process) + TWG(process_size))) {
return ptr;
}
newptr = (process_pair*)realloc((void*)TWG(process), (TWG(process_size)+1)*sizeof(process_pair));
if (newptr == NULL) {
return NULL;
}
TWG(process) = newptr;
ptr = newptr + TWG(process_size);
TWG(process_size)++;
return ptr;
}
static shm_pair *shm_get(int key, void *addr)
{
shm_pair *ptr;
shm_pair *newptr;
TSRMLS_FETCH();
for (ptr = TWG(shm); ptr < (TWG(shm) + TWG(shm_size)); ptr++) {
if (!ptr->descriptor) {
continue;
}
if (!addr && ptr->descriptor->shm_perm.key == key) {
break;
} else if (ptr->addr == addr) {
break;
}
}
if (ptr < (TWG(shm) + TWG(shm_size))) {
return ptr;
}
newptr = (shm_pair*)realloc((void*)TWG(shm), (TWG(shm_size)+1)*sizeof(shm_pair));
if (newptr == NULL) {
return NULL;
}
TWG(shm) = newptr;
ptr = newptr + TWG(shm_size);
TWG(shm_size)++;
return ptr;
}
static HANDLE dupHandle(HANDLE fh, BOOL inherit) {
HANDLE copy, self = GetCurrentProcess();
if (!DuplicateHandle(self, fh, self, &copy, 0, inherit, DUPLICATE_SAME_ACCESS|DUPLICATE_CLOSE_SOURCE)) {
return NULL;
}
return copy;
}
TSRM_API FILE *popen(const char *command, const char *type)
{
return popen_ex(command, type, NULL, NULL);
}
TSRM_API FILE *popen_ex(const char *command, const char *type, const char *cwd, char *env)
{
FILE *stream = NULL;
int fno, str_len = strlen(type), read, mode;
STARTUPINFO startup;
PROCESS_INFORMATION process;
SECURITY_ATTRIBUTES security;
HANDLE in, out;
char *cmd;
process_pair *proc;
TSRMLS_FETCH();
security.nLength = sizeof(SECURITY_ATTRIBUTES);
security.bInheritHandle = TRUE;
security.lpSecurityDescriptor = NULL;
if (!str_len || !CreatePipe(&in, &out, &security, 2048L)) {
return NULL;
}
memset(&startup, 0, sizeof(STARTUPINFO));
memset(&process, 0, sizeof(PROCESS_INFORMATION));
startup.cb = sizeof(STARTUPINFO);
startup.dwFlags = STARTF_USESTDHANDLES;
startup.hStdError = GetStdHandle(STD_ERROR_HANDLE);
read = (type[0] == 'r') ? TRUE : FALSE;
mode = ((str_len == 2) && (type[1] == 'b')) ? O_BINARY : O_TEXT;
if (read) {
in = dupHandle(in, FALSE);
startup.hStdInput = GetStdHandle(STD_INPUT_HANDLE);
startup.hStdOutput = out;
} else {
out = dupHandle(out, FALSE);
startup.hStdInput = in;
startup.hStdOutput = GetStdHandle(STD_OUTPUT_HANDLE);
}
cmd = (char*)malloc(strlen(command)+strlen(TWG(comspec))+sizeof(" /c "));
sprintf(cmd, "%s /c %s", TWG(comspec), command);
if (!CreateProcess(NULL, cmd, &security, &security, security.bInheritHandle, NORMAL_PRIORITY_CLASS, env, cwd, &startup, &process)) {
return NULL;
}
free(cmd);
CloseHandle(process.hThread);
proc = process_get(NULL TSRMLS_CC);
if (read) {
fno = _open_osfhandle((long)in, _O_RDONLY | mode);
CloseHandle(out);
} else {
fno = _open_osfhandle((long)out, _O_WRONLY | mode);
CloseHandle(in);
}
stream = _fdopen(fno, type);
proc->prochnd = process.hProcess;
proc->stream = stream;
return stream;
}
TSRM_API int pclose(FILE *stream)
{
DWORD termstat = 0;
process_pair *process;
TSRMLS_FETCH();
if ((process = process_get(stream TSRMLS_CC)) == NULL) {
return 0;
}
fflush(process->stream);
fclose(process->stream);
WaitForSingleObject(process->prochnd, INFINITE);
GetExitCodeProcess(process->prochnd, &termstat);
process->stream = NULL;
CloseHandle(process->prochnd);
return termstat;
}
TSRM_API int shmget(int key, int size, int flags)
{
shm_pair *shm;
char shm_segment[26], shm_info[29];
HANDLE shm_handle, info_handle;
BOOL created = FALSE;
if (size < 0) {
return -1;
}
sprintf(shm_segment, "TSRM_SHM_SEGMENT:%d", key);
sprintf(shm_info, "TSRM_SHM_DESCRIPTOR:%d", key);
shm_handle = OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, shm_segment);
info_handle = OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, shm_info);
if ((!shm_handle && !info_handle)) {
if (flags & IPC_EXCL) {
return -1;
}
if (flags & IPC_CREAT) {
shm_handle = CreateFileMapping(INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE, 0, size, shm_segment);
info_handle = CreateFileMapping(INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE, 0, sizeof(shm->descriptor), shm_info);
created = TRUE;
}
if ((!shm_handle || !info_handle)) {
return -1;
}
}
shm = shm_get(key, NULL);
shm->segment = shm_handle;
shm->info = info_handle;
shm->descriptor = MapViewOfFileEx(shm->info, FILE_MAP_ALL_ACCESS, 0, 0, 0, NULL);
if (created) {
shm->descriptor->shm_perm.key = key;
shm->descriptor->shm_segsz = size;
shm->descriptor->shm_ctime = time(NULL);
shm->descriptor->shm_cpid = getpid();
shm->descriptor->shm_perm.mode = flags;
shm->descriptor->shm_perm.cuid = shm->descriptor->shm_perm.cgid= 0;
shm->descriptor->shm_perm.gid = shm->descriptor->shm_perm.uid = 0;
shm->descriptor->shm_atime = shm->descriptor->shm_dtime = 0;
shm->descriptor->shm_lpid = shm->descriptor->shm_nattch = 0;
shm->descriptor->shm_perm.mode = shm->descriptor->shm_perm.seq = 0;
}
if (shm->descriptor->shm_perm.key != key || size > shm->descriptor->shm_segsz ) {
CloseHandle(shm->segment);
UnmapViewOfFile(shm->descriptor);
CloseHandle(shm->info);
return -1;
}
return key;
}
TSRM_API void *shmat(int key, const void *shmaddr, int flags)
{
shm_pair *shm = shm_get(key, NULL);
if (!shm->segment) {
return (void*)-1;
}
shm->descriptor->shm_atime = time(NULL);
shm->descriptor->shm_lpid = getpid();
shm->descriptor->shm_nattch++;
shm->addr = MapViewOfFileEx(shm->segment, FILE_MAP_ALL_ACCESS, 0, 0, 0, NULL);
return shm->addr;
}
TSRM_API int shmdt(const void *shmaddr)
{
shm_pair *shm = shm_get(0, (void*)shmaddr);
if (!shm->segment) {
return -1;
}
shm->descriptor->shm_dtime = time(NULL);
shm->descriptor->shm_lpid = getpid();
shm->descriptor->shm_nattch--;
return UnmapViewOfFile(shm->addr) ? 0 : -1;
}
TSRM_API int shmctl(int key, int cmd, struct shmid_ds *buf) {
shm_pair *shm = shm_get(key, NULL);
if (!shm->segment) {
return -1;
}
switch (cmd) {
case IPC_STAT:
memcpy(buf, shm->descriptor, sizeof(struct shmid_ds));
return 0;
case IPC_SET:
shm->descriptor->shm_ctime = time(NULL);
shm->descriptor->shm_perm.uid = buf->shm_perm.uid;
shm->descriptor->shm_perm.gid = buf->shm_perm.gid;
shm->descriptor->shm_perm.mode = buf->shm_perm.mode;
return 0;
case IPC_RMID:
if (shm->descriptor->shm_nattch < 1) {
shm->descriptor->shm_perm.key = -1;
}
return 0;
default:
return -1;
}
}
TSRM_API char *realpath(char *orig_path, char *buffer)
{
int ret = GetFullPathName(orig_path, _MAX_PATH, buffer, NULL);
if(!ret || ret > _MAX_PATH) {
return NULL;
}
return buffer;
}
#endif
+106
View File
@@ -0,0 +1,106 @@
/*
+----------------------------------------------------------------------+
| PHP Version 5 |
+----------------------------------------------------------------------+
| Copyright (c) 1997-2006 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 |
| available through the world-wide-web at the following url: |
| http://www.php.net/license/3_01.txt |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@php.net so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: Daniel Beulshausen <daniel@php4win.de> |
+----------------------------------------------------------------------+
*/
/* $Id$ */
#ifndef TSRM_WIN32_H
#define TSRM_WIN32_H
#include "TSRM.h"
#include <windows.h>
struct ipc_perm {
int key;
unsigned short uid;
unsigned short gid;
unsigned short cuid;
unsigned short cgid;
unsigned short mode;
unsigned short seq;
};
struct shmid_ds {
struct ipc_perm shm_perm;
int shm_segsz;
time_t shm_atime;
time_t shm_dtime;
time_t shm_ctime;
unsigned short shm_cpid;
unsigned short shm_lpid;
short shm_nattch;
};
typedef struct {
FILE *stream;
HANDLE prochnd;
} process_pair;
typedef struct {
void *addr;
HANDLE info;
HANDLE segment;
struct shmid_ds *descriptor;
} shm_pair;
typedef struct {
process_pair *process;
shm_pair *shm;
int process_size;
int shm_size;
char *comspec;
} tsrm_win32_globals;
#ifdef ZTS
# define TWG(v) TSRMG(win32_globals_id, tsrm_win32_globals *, v)
#else
# define TWG(v) (win32_globals.v)
#endif
#define IPC_PRIVATE 0
#define IPC_CREAT 00001000
#define IPC_EXCL 00002000
#define IPC_NOWAIT 00004000
#define IPC_RMID 0
#define IPC_SET 1
#define IPC_STAT 2
#define IPC_INFO 3
#define SHM_R PAGE_READONLY
#define SHM_W PAGE_READWRITE
#define SHM_RDONLY FILE_MAP_READ
#define SHM_RND FILE_MAP_WRITE
#define SHM_REMAP FILE_MAP_COPY
TSRM_API void tsrm_win32_startup(void);
TSRM_API void tsrm_win32_shutdown(void);
TSRM_API FILE *popen_ex(const char *command, const char *type, const char *cwd, char *env);
TSRM_API FILE *popen(const char *command, const char *type);
TSRM_API int pclose(FILE *stream);
TSRM_API int tsrm_win32_access(const char *pathname, int mode);
TSRM_API int shmget(int key, int size, int flags);
TSRM_API void *shmat(int key, const void *shmaddr, int flags);
TSRM_API int shmdt(const void *shmaddr);
TSRM_API int shmctl(int key, int cmd, struct shmid_ds *buf);
TSRM_API char *realpath(char *orig_path, char *buffer);
#endif
Executable
+548
View File
@@ -0,0 +1,548 @@
$Id$
UPGRADE NOTES - PHP 5.1
1. Changes in reference handling
a. Overview
b. Code that worked under PHP 4.3, but now fails
c. Code that was valid under PHP 4.3, but now throws an error
d. Code that failed under PHP 4.3, but now works
e. Code that 'should have worked' under PHP 5.0
f. Warnings that came and went
2. Reading []
3. instanceof, is_a(), is_subclass_of(), catch
4. Integer values in function parameters
5. Abstract private methods
6. Access modifiers in interfaces
7. Changes in inheritance rules
8. Class constants
9. Extensions
a. Extensions that are gone from the PHP core
b. Class constants in new PHP 5.1 extensions
10. Date/time support
11. Changes in database support
a. PDO overview
b. Changes in MySQL support
c. Changes in SQLite support
12. Further migration information
13. Checking for E_STRICT errors
===============================================================================
1. Changes in reference handling
================================
1a. Overview
============
>From the PHP script writer's point of view, the change most likely to impact
legacy code is in the way that references are handled in all PHP versions
post-dating the PHP 4.4.0 release.
Until and including PHP 4.3, it was possible to send, assign or return variables
by reference that should really be returned by value, such as a constant, a
temporary value (e.g. the result of an expression), or the result of a function
that had itself been returned by value, as here:
<?php
$foo = "123";
function return_value() {
global $foo;
return $foo;
}
$bar = &return_value();
?>
Although this code would usually work as expected under PHP 4.3, in the general
case the result is undefined. The Zend Engine could not act correctly on these
values as references. This bug could and did lead to various hard-to-reproduce
memory corruption problems, particularly where the code base was large.
In PHP 4.4.0, PHP 5.0.4 and all subsequent PHP releases, the Engine was fixed
to 'know' when the reference operation is being used on a value that should
not be referenced. The actual value is now used in such cases, and a warning
is emitted. The warning takes the form of an E_NOTICE in PHP 4.4.0 and up,
and E_STRICT in PHP 5.0.4 and up.
Code that could potentially produce memory corruption can no longer do so.
However, some legacy code might work differently as a result.
1b. Code that worked under PHP 4.3, but now fails
=================================================
<?php
function func(&$arraykey) {
return $arraykey; // function returns by value!
}
$array = array('a', 'b', 'c');
foreach (array_keys($array) as $key) {
$y = &func($array[$key]);
$z[] =& $y;
}
var_dump($z);
?>
Running the above script under any version of PHP that pre-dates the reference
fix would produce this output:
array(3) {
[0]=>
&string(1) "a"
[1]=>
&string(1) "b"
[2]=>
&string(1) "c"
}
Following the reference fix, the same code would result in:
array(3) {
[0]=>
&string(1) "c"
[1]=>
&string(1) "c"
[2]=>
&string(1) "c"
}
This is because, following the changes, func() assigns by value. The value
of $y is re-assigned, and reference-binding is preserved from $z. Prior
to the fix, the value was assigned by reference, leading $y to be
re-bound on each assignment. The attempt to bind to a temporary value
by reference was the cause of the memory corruption.
Such code can be made to work identically in both the pre-fix and the
post-fix PHP versions. The signature of func() can be altered to return
by reference, or the reference assignment can be removed from the result
of func().
<?php
function func() {
return 'function return';
}
$x = 'original value';
$y =& $x;
$y = &func();
echo $x;
?>
In PHP 4.3 $x would be 'original value', whereas after the changes it would
be 'function return' - remember that where the function does not return by
reference, the reference assignment is converted to a regular assignment.
Again, this can be brought to a common base, either by forcing func() to
return by reference or by eliminating the by-reference assignment.
1c. Code that was valid under PHP 4.3, but now throws an error
==============================================================
<?php
class Foo {
function getThis() {
return $this;
}
function destroyThis() {
$baz =& $this->getThis();
}
}
$bar = new Foo();
$bar->destroyThis();
var_dump($bar);
?>
In PHP 5.0.3, $bar evaluated to NULL instead of returning an object.
That happened because getThis() returns by value, but the value here
is assigned by reference. Although it now works in the expected way,
this is actually invalid code which will throw an E_NOTICE under
PHP 4.4 or an E_STRICT under PHP 5.0.4 and up.
1d. Code that failed under PHP 4.3, but now works
=================================================
<?php
function &f() {
$x = "foo";
var_dump($x);
print "$x\n";
return($a);
}
for ($i = 0; $i < 3; $i++) {
$h = &f();
}
?>
In PHP 4.3 the third call to var_dump produces NULL, due to the memory
corruption caused by returning an uninitialized value by reference.
This is valid code in PHP 5.0.4 and up, but threw errors in earlier
releases of PHP.
<?php
$arr = array('a1' => array('alfa' => 'ok'));
$arr =& $arr['a1'];
echo '-'.$arr['alfa']."-\n";
?>
Until PHP 5.0.5, it wasn't possible to assign an array element by
reference in this way. It now is.
1e. Code that 'should have worked' under PHP 5.0
================================================
There are a couple of instances of bugs reported under PHP 5.0 prior
to the reference fixes which now 'work'. However, in both cases errors
are thrown by PHP 5.1, because the code was invalid in the first place.
Returning values by reference using self:: now works in the general
case but throws an E_STRICT warning, and although your mileage may
vary when assigning by reference to an overloaded object, you will
still see an E_ERROR when you try it, even where the assignment
itself appears to work.
1f. Warnings that came and went
===============================
<?php
function & foo() {
$var = 'ok';
return $var;
}
function & bar() {
return foo();
}
$a =& bar();
echo "$a\n";
?>
Nested calls to functions returning by reference are valid code under both
PHP 4.3 and PHP 5.1, but threw an unwarranted E_NOTICE or E_STRICT under
the intervening PHP releases.
2. Reading []
=============
<?php
class XmlTest {
function test_ref(&$test) {
$test = "ok";
}
function test($test) { }
function run() {
$ar = array();
$this->test_ref($ar[]);
var_dump($ar);
$this->test($ar[]);
}
}
$o = new XmlTest();
$o->run();
?>
This should always have thrown a fatal E_ERROR, because [] cannot be used
for reading in PHP. It is invalid code in PHP 4.4.2 and PHP 5.0.5 upward.
3. instanceof, is_a(), is_subclass_of(), catch
==============================================
In PHP 5.0, is_a() was deprecated and replaced by the "instanceof" operator.
There were some issues with the initial implementation of "instanceof", which
relied on __autoload() to search for missing classes. If the class was not
present, "instanceof" would throw a fatal E_ERROR due to the failure of
__autoload() to discover that class. The same behaviour occurred in the
"catch" operator and the is_subclass_of() function, for the same reason.
None of these functions or operators call __autoload() in PHP 5.1, and
the class_exists() workarounds used in code written for PHP 5.0, while
not problematic in any way, are no longer necessary.
4. Integer values in function parameters
========================================
With the advent of PHP 5.0, a new parameter parsing API was introduced
which is used by a large number of PHP functions. In all versions of
PHP between 5.0 and 5.1, the handling of integer values was very strict
and would reject non-well formed numeric values when a PHP function
expected an integer. These checks have now been relaxed to support
non-well formed numeric strings such as " 123" and "123 ", and will
no longer fail as they did under PHP 5.0. However, to promote code
safety and input validation, PHP functions will now emit an E_NOTICE
when such strings are passed as integers.
5. Abstract private methods
===========================
Abstract private methods were supported between PHP 5.0.0 and PHP 5.0.4,
but were then disallowed on the grounds that the behaviours of 'private'
and 'abstract' are mutually exclusive.
6. Access modifiers in interfaces
=================================
Under PHP 5.0, function declarations in interfaces were treated in exactly
the same way as function declarations in classes. This has not been the case
since October 2004, at which point only the 'public' access modifier was
allowed in interface function declarations. Since April 2005 - which pre-dates
the PHP 5.0b1 release - the 'static' modifier has also been allowed. However,
the 'protected' and 'private' modifiers will now throw an E_ERROR, as will
'abstract'. Note that this change should not affect your existing code, as
none of these modifiers makes sense in the context of interfaces anyway.
7. Changes in inheritance rules
===============================
Under PHP 5.0, it was possible to have a function declaration in a derived class
that did not match the declaration of the same function in the base class, e.g.
class Base {
function &return_by_ref() {
$r = 1;
return $r;
}
}
class Derived extends Base {
function return_by_ref() {
return 1;
}
}
This code will cause an E_STRICT error to be emitted under PHP 5.1.
8. Class constants
==================
Under PHP 5.0, the following code was valid:
<?php
class test {
const foobar = 'foo';
const foobar = 'bar';
}
?>
Under PHP 5.1, redefinition of a class constant will throw a fatal E_ERROR.
9. Extensions
=============
9a. Extensions that are gone from the PHP core
==============================================
One of the first things you're likely to notice when you download PHP 5.1 is that
several of the older extensions have disappeared. Those extensions that are still
actively maintained are available in the PHP Extension Community Library (PECL),
at http://pecl.php.net. Windows binaries are built regularly, and you can obtain
the binaries for PECL extensions built against PHP 5.1 from
http://pecl4win.php.net/list.php/5_1.
Extension Alternative/status
========= ========================
ext/cpdf pecl/pdflib
ext/dbx pecl/dbx
ext/dio pecl/dio
ext/fam not actively maintained
ext/ingres_ii pecl/ingres
ext/ircg not actively maintained
ext/mcve pecl/mcve
ext/mnogosearch not actively maintained
ext/oracle ext/oci8 or ext/pdo_oci
ext/ovrimos not actively maintained
ext/pfpro not actively maintained
- alternatives at http://pecl.php.net/packages.php?catpid=18&catname=Payment
ext/w32api pecl/ffi
ext/yp not actively maintained
sapi/activescript http://pecl4win.php.net/ext.php/php5activescript.dll (PECL package)
or pecl/activescript (CVS)
Modules in PECL that are not actively maintained (i.e. have not been supported
for some time, have no active maintainer working on them currently, and do not
have any PECL package releases), are still available in CVS at
http://cvs.php.net/pecl/. However, unreleased PHP modules are by their nature
unsupported, and your mileage may vary when attempting to install or use them.
9b. Class constants in new PHP 5.1 extensions
=============================================
The Zend Engine 2.1 API allows extension developers to declare class constants
in object oriented extensions. New extensions written for PHP 5.1, including SPL,
PDO, ext/XMLReader and ext/date, have their constants in the format
PDO::CLASS_CONSTANT
rather than in the C format
PDO_CLASS_CONSTANT
in order to minimise pollution of the global namespace in PHP.
10. Date/time support
====================
Date/time support has been fully rewritten in PHP 5.1, and no longer
uses the system settings to 'know' the timezone in operation. It will
instead utilize, in the following order:
* The timezone set using the date_default_timezone_set() function (if any)
* The TZ environment variable (if non empty)
* The date.timezone ini option (if set)
* "magical" guess (if the operating system supports it)
* If none of the above options succeeds, UTC
To ensure accuracy (and avoid an E_STRICT warning), you will need to define
your timezone in your php.ini using the following format:
date.timezone = Europe/London
The supported timezones are listed, in this format, in the PHP manual at
http://www.php.net/manual/en/timezones.php.
11. Changes in database support
==============================
11a. PDO overview
================
PHP Data Objects (PDO) were introduced as a PECL extension under PHP 5.0,
and became part of the core PHP distribution in PHP 5.1. The PDO extension
provides a consistent interface for database access, and is used alongside
database-specific PDO drivers. Each driver may also have database-specific
functions of its own, but basic data access functionality such as issuing
queries and fetching data is covered by PDO functions, using the driver
named in PDO::__construct().
Note that the PDO extension, and its drivers, are intended to be built as
shared extensions. This will enable straightforward driver upgrades from
PECL, without forcing you to rebuild all of PHP.
At the point of the PHP 5.1 release, PDO is more than ready for widespread
testing and could be adopted in most situations. However, it is important
to understand that PDO and its drivers are comparatively young and may be
missing certain database-specific features; evaluate PDO carefully before
you use it in new projects.
Legacy code will generally rely on the pre-existing database extensions,
which are still maintained.
There is more in-depth information about the PDO extension in the manual
at http://www.php.net/manual/ref.pdo.php.
11b. Changes in MySQL support
============================
In PHP 4, MySQL 3 support was built-in. With the release of PHP 5.0 there
were two MySQL extensions, named 'mysql' and 'mysqli', which were designed
to support MySQL < 4.1 and MySQL 4.1 and up, respectively. With the
introduction of PDO, which provides a very fast interface to all the
database APIs supported by PHP, the PDO_MYSQL driver can support any
of the current versions (MySQL 3, 4 or 5) in PHP code written for PDO,
depending on the MySQL library version used during compilation. The
older MySQL extensions remain in place for reasons of back compatibility,
but are not enabled by default.
11c. Changes in SQLite support
=============================
In PHP 5.0, SQLite 2 support was provided by the built-in sqlite
extension, which was also available as a PECL extension in PHP 4.3
and PHP 4.4. With the introduction of PDO, the sqlite extension doubles
up to act as a 'sqlite2' driver for PDO; it is due to this that the
sqlite extension in PHP 5.1 has a dependency upon the PDO extension.
PHP 5.1 ships with a number of alternative interfaces to sqlite:
The sqlite extension provides the "classic" sqlite procedural/OO API
that you may have used in prior versions of PHP. It also provides the
PDO 'sqlite2' driver, which allows you to access legacy SQLite 2
databases using the PDO API.
PDO_SQLITE provides the 'sqlite' version 3 driver. SQLite version 3
is vastly superior to SQLite version 2, but the file formats of the
two versions are not compatible.
If your SQLite-based project is already written and working against
earlier PHP versions, then you can continue to use ext/sqlite without
problems, but will need to explicitly enable both PDO and sqlite. New
projects should use PDO and the 'sqlite' (version 3) driver, as this is
faster than SQLite 2, has improved locking concurrency, and supports
both prepared statements and binary columns natively.
12. Further migration information
================================
For general information about migrating from PHP 4 to PHP 5, please refer to
the relevant section in the PHP manual at http://www.php.net/manual/migration5.php.
13. Checking for E_STRICT errors
================================
If you only have a single script to check, you can pick up E_STRICT
errors using PHP's commandline lint facility:
php -d error_reporting=4095 -l script_to_check.php
For larger projects, the shell script below will achieve the same task:
#!/bin/sh
directory=$1
shift
# These extensions are checked
extensions="php inc"
check_file ()
{
echo -ne "Doing PHP syntax check on $1 ..."
# Options:
ERRORS=`/www/php/bin/php -d display_errors=1 -d html_errors=0 -d error_prepend_string=" " -d error_append_string=" " -d error_reporting=4095 -l $1 | grep -v "No syntax errors detected"`
if test -z "$ERRORS"; then
echo -ne "OK."
else
echo -e "Errors found!\n$ERRORS"
fi
echo
}
# loop over remaining file args
for FILE in "$@" ; do
for ext in $extensions; do
if echo $FILE | grep "\.$ext$" > /dev/null; then
if test -f $FILE; then
check_file "$FILE"
fi
fi
done
done
+3884 -2
View File
File diff suppressed because it is too large. Load diff
+1 -1
View File
@@ -1,6 +1,6 @@
--------------------------------------------------------------------
The Zend Engine License, Version 2.00
Copyright (c) 1999-2003 Zend Technologies Ltd. All rights reserved.
Copyright (c) 1999-2006 Zend Technologies Ltd. All rights reserved.
--------------------------------------------------------------------
Redistribution and use in source and binary forms, with or without
+3 -2
View File
@@ -15,8 +15,9 @@ libZend_la_SOURCES=\
zend_list.c zend_indent.c zend_builtin_functions.c zend_sprintf.c \
zend_ini.c zend_qsort.c zend_objects.c zend_object_handlers.c \
zend_objects_API.c zend_ts_hash.c zend_stream.c zend_mm.c \
zend_default_classes.c zend_reflection_api.c \
zend_iterators.c zend_interfaces.c zend_exceptions.c
zend_default_classes.c \
zend_iterators.c zend_interfaces.c zend_exceptions.c \
zend_strtod.c zend_multibyte.c
libZend_la_LDFLAGS =
libZend_la_LIBADD = @ZEND_EXTRA_LIBS@
+1
View File
@@ -0,0 +1 @@
Zend/zend_execute.lo: $(srcdir)/zend_vm_execute.h $(srcdir)/zend_vm_opcodes.h
+108
View File
@@ -0,0 +1,108 @@
ZEND_VM
=======
ZEND_VM architecture allows specializing opcode handlers according to op_type
fields and using different execution methods (call threading, switch threading
and direct threading). As a result ZE2 got more than 20% speedup on raw PHP
code execution (with specialized executor and direct threading execution
method). As in most PHP applications raw execution speed isn't the limiting
factor but system calls and database callls are, your mileage with this patch
will vary.
Most parts of the old zend_execute.c go into zend_vm_def.h. Here you can
find opcode handlers and helpers. The typical opcode handler template looks
like this:
ZEND_VM_HANDLER(<OPCODE-NUMBER>, <OPCODE>, <OP1_TYPES>, <OP2_TYPES>)
{
<HANDLER'S CODE>
}
<OPCODE-NUMBER> is a opcode number (0, 1, ...)
<OPCODE> is an opcode name (ZEN_NOP, ZEND_ADD, :)
<OP1_TYPES> & <OP2_TYPES> are masks for allowed operand op_types. Specializer
will generate code only for defined combination of types. You can use any
combination of the following op_types UNUSED, CONST, VAR, TMP and CV also
you can use ANY mask to disable specialization according operand's op_type.
<HANDLER'S CODE> is a handler's code itself. For most handlers it stills the
same as in old zend_execute.c, but now it uses macros to access opcode operands
and some internal executor data.
You can see the conformity of new macros to old code in the following list:
EXECUTE_DATA
execute_data
ZEND_VM_DISPATCH_TO_HANDLER(<OP>)
return <OP>_helper(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)
ZEND_VM_DISPATCH_TO_HELPER(<NAME>)
return <NAME>(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)
ZEND_VM_DISPATCH_TO_HELPER_EX(<NAME>,<PARAM>,<VAL>)
return <NAME>(<VAL>, ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)
ZEND_VM_CONTINUE()
return 0
ZEND_VM_NEXT_OPCODE()
NEXT_OPCODE()
ZEND_VM_SET_OPCODE(<TARGET>
SET_OPCODE(<TARGET>
ZEND_VM_INC_OPCODE()
INC_OPCOD()
ZEND_VM_RETURN_FROM_EXECUTE_LOOP()
RETURN_FROM_EXECUTE_LOOP()
ZEND_VM_C_LABEL(<LABEL>):
<LABEL>:
ZEND_VM_C_GOTO(<LABEL>)
goto <LABEL>
OP<X>_TYPE
opline->op<X>.op_type
GET_OP<X>_ZVAL_PTR(<TYPE>)
get_zval_ptr(&opline->op<X>, EX(Ts), &free_op<X>, <TYPE>)
GET_OP<X>_ZVAL_PTR_PTR(<TYPE>)
get_zval_ptr_ptr(&opline->op<X>, EX(Ts), &free_op<X>, <TYPE>)
GET_OP<X>_OBJ_ZVAL_PTR(<TYPE>)
get_obj_zval_ptr(&opline->op<X>, EX(Ts), &free_op<X>, <TYPE>)
GET_OP<X>_OBJ_ZVAL_PTR_PTR(<TYPE>)
get_obj_zval_ptr_ptr(&opline->op<X>, EX(Ts), &free_op<X>, <TYPE>)
IS_OP<X>_TMP_FREE()
IS_TMP_FREE(free_op<X>)
FREE_OP<X>()
FREE_OP(free_op<X>)
FREE_OP<X>_IF_VAR()
FREE_VAR(free_op<X>)
FREE_OP<X>_VAR_PTR()
FREE_VAR_PTR(free_op<X>)
Executor's helpers can be defined without parameters or with one parameter.
This is done with the following constructs:
ZEND_VM_HELPER(<HELPER-NAME>, <OP1_TYPES>, <OP2_TYPES>)
{
<HELPER'S CODE>
}
ZEND_VM_HELPER_EX(<HELPER-NAME>, <OP1_TYPES>, <OP2_TYPES>, <PARAM_SPEC>)
{
<HELPER'S CODE>
}
Executor's code is generated by PHP script zend_vm_gen.php it uses zend_vm_def.h
and zend_vm_execute.skl as input and produces zend_vm_opcodes.h and
zend_vm_execute.h. The first file is a list of opcode definitions. It is
included from zend_compile.h. The second one is an executor code itself. It is
included from zend_execute.c.
zend_vm_gen.php can produce different kind of executors. You can select
different opcode threading model using --with-vm-kind=CALL|SWITCH|GOTO. You can
disable opcode specialization using --without-specializer. You can include or
exclude old executor together with specialized one using --without-old-executor.
At last you can debug executor using original zend_vm_def.h or generated file
zend_vm_execute.h. Debugging with original file requires --with-lines
option. By default ZE2 uses the following command to generate executor:
$ php zend_vm_gen.php --with-vm-kind=CALL
Zend Engine II currently includes two executors during the build process, one
is the specialized version and the other is the old one non-specialized with
function handlers. By default Zend Engine II uses the specialized one but you
can switch to the old executor at runtime by calling zend_vm_use_old_executor().
+27 -27
View File
@@ -7,20 +7,20 @@
CFG=Zend - Win32 Release_inline
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE
!MESSAGE NMAKE /f "Zend.mak".
!MESSAGE
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE
!MESSAGE NMAKE /f "Zend.mak" CFG="Zend - Win32 Release_inline"
!MESSAGE
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE
!MESSAGE "Zend - Win32 Release" (based on "Win32 (x86) Static Library")
!MESSAGE "Zend - Win32 Debug" (based on "Win32 (x86) Static Library")
!MESSAGE "Zend - Win32 Release_inline" (based on "Win32 (x86) Static Library")
!MESSAGE
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
@@ -95,7 +95,7 @@ LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo
!ENDIF
!ENDIF
# Begin Target
@@ -135,10 +135,6 @@ SOURCE=.\zend_default_classes.c
# End Source File
# Begin Source File
SOURCE=.\zend_interfaces.c
# End Source File
# Begin Source File
SOURCE=.\zend_dynamic_array.c
# End Source File
# Begin Source File
@@ -179,6 +175,10 @@ SOURCE=.\zend_ini_scanner.c
# End Source File
# Begin Source File
SOURCE=.\zend_interfaces.c
# End Source File
# Begin Source File
SOURCE=".\zend_language_parser.c"
# End Source File
# Begin Source File
@@ -227,10 +227,6 @@ SOURCE=.\zend_qsort.c
# End Source File
# Begin Source File
SOURCE=.\zend_reflection_api.c
# End Source File
# Begin Source File
SOURCE=.\zend_sprintf.c
# End Source File
# Begin Source File
@@ -243,6 +239,10 @@ SOURCE=.\zend_stream.c
# End Source File
# Begin Source File
SOURCE=.\zend_strtod.c
# End Source File
# Begin Source File
SOURCE=.\zend_ts_hash.c
# End Source File
# Begin Source File
@@ -291,10 +291,6 @@ SOURCE=.\zend_default_classes.h
# End Source File
# Begin Source File
SOURCE=.\zend_interfaces.h
# End Source File
# Begin Source File
SOURCE=.\zend_dynamic_array.h
# End Source File
# Begin Source File
@@ -351,6 +347,10 @@ SOURCE=.\zend_ini_scanner.h
# End Source File
# Begin Source File
SOURCE=.\zend_interfaces.h
# End Source File
# Begin Source File
SOURCE=.\zend_istdiostream.h
# End Source File
# Begin Source File
@@ -403,10 +403,6 @@ SOURCE=.\zend_qsort.h
# End Source File
# Begin Source File
SOURCE=.\zend_reflection_api.h
# End Source File
# Begin Source File
SOURCE=.\zend_stack.h
# End Source File
# Begin Source File
@@ -415,6 +411,10 @@ SOURCE=.\zend_stream.h
# End Source File
# Begin Source File
SOURCE=.\zend_strtod.h
# End Source File
# Begin Source File
SOURCE=.\zend_ts_hash.h
# End Source File
# Begin Source File
@@ -449,7 +449,7 @@ BuildCmds= \
!ELSEIF "$(CFG)" == "Zend - Win32 Release_inline"
!ENDIF
!ENDIF
# End Source File
# Begin Source File
@@ -504,7 +504,7 @@ BuildCmds= \
$(BuildCmds)
# End Custom Build
!ENDIF
!ENDIF
# End Source File
# End Group
@@ -533,7 +533,7 @@ InputPath=.\zend_ini_scanner.l
!ELSEIF "$(CFG)" == "Zend - Win32 Release_inline"
!ENDIF
!ENDIF
# End Source File
# Begin Source File
@@ -570,7 +570,7 @@ InputPath=".\zend_language_scanner.l"
# End Custom Build
!ENDIF
!ENDIF
# End Source File
# End Group
+88 -23
View File
@@ -4,22 +4,29 @@ dnl
dnl This file contains Zend specific autoconf functions.
dnl
AC_DEFUN(LIBZEND_BISON_CHECK,[
if test "$YACC" != "bison -y"; then
AC_MSG_WARN(You will need bison if you want to regenerate the Zend parser.)
else
AC_MSG_CHECKING(bison version)
set `bison --version| grep 'GNU Bison' | cut -d ' ' -f 4 | sed -e 's/\./ /' | tr -d 'a-z'`
if test "${1}" = "1" -a "${2}" -lt "28"; then
AC_MSG_WARN(You will need bison 1.28 if you want to regenerate the Zend parser (found ${1}.${2}).)
fi
AC_MSG_RESULT(${1}.${2} (ok))
fi
AC_DEFUN([LIBZEND_CHECK_INT_TYPE],[
AC_MSG_CHECKING(for $1)
AC_TRY_COMPILE([
#if HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
#if HAVE_INTTYPES_H
#include <inttypes.h>
#elif HAVE_STDINT_H
#include <stdint.h>
#endif],
[if (($1 *) 0)
return 0;
if (sizeof ($1))
return 0;
],[
AC_DEFINE_UNQUOTED([HAVE_]translit($1,a-z_-,A-Z__), 1,[Define if $1 type is present. ])
AC_MSG_RESULT(yes)
], AC_MSG_RESULT(no)
)dnl
])
AC_DEFUN(LIBZEND_BASIC_CHECKS,[
AC_DEFUN([LIBZEND_BASIC_CHECKS],[
AC_REQUIRE([AC_PROG_YACC])
AC_REQUIRE([AC_PROG_CC])
@@ -42,6 +49,8 @@ if test "$ac_cv_prog_gcc" = "yes" -a "`uname -s`" = "Rhapsody"; then
fi
AC_CHECK_HEADERS(
inttypes.h \
stdint.h \
limits.h \
malloc.h \
string.h \
@@ -58,12 +67,12 @@ dlfcn.h)
AC_TYPE_SIZE_T
AC_TYPE_SIGNAL
AC_DEFUN(LIBZEND_LIBDL_CHECKS,[
AC_DEFUN([LIBZEND_LIBDL_CHECKS],[
AC_CHECK_LIB(dl, dlopen, [LIBS="-ldl $LIBS"])
AC_CHECK_FUNC(dlopen,[AC_DEFINE(HAVE_LIBDL, 1,[ ])])
])
AC_DEFUN(LIBZEND_DLSYM_CHECK,[
AC_DEFUN([LIBZEND_DLSYM_CHECK],[
dnl
dnl Ugly hack to check if dlsym() requires a leading underscore in symbol name.
dnl
@@ -82,6 +91,10 @@ dnl This is required for QNX and may be some BSD derived systems
AC_CHECK_TYPE( uint, unsigned int )
AC_CHECK_TYPE( ulong, unsigned long )
dnl Check if int32_t and uint32_t are defined
LIBZEND_CHECK_INT_TYPE(int32_t)
LIBZEND_CHECK_INT_TYPE(uint32_t)
dnl Checks for library functions.
AC_FUNC_VPRINTF
AC_FUNC_MEMCMP
@@ -95,7 +108,7 @@ ZEND_FP_EXCEPT
])
AC_DEFUN(LIBZEND_ENABLE_DEBUG,[
AC_DEFUN([LIBZEND_ENABLE_DEBUG],[
AC_ARG_ENABLE(debug,
[ --enable-debug Compile with debugging symbols],[
@@ -106,10 +119,27 @@ AC_ARG_ENABLE(debug,
])
AC_DEFUN(LIBZEND_OTHER_CHECKS,[
AC_DEFUN([LIBZEND_OTHER_CHECKS],[
AC_ARG_WITH(zend-vm,
[ --with-zend-vm=TYPE Set virtual machine dispatch method. Type is
one of "CALL", "SWITCH" or "GOTO" [TYPE=CALL]],[
PHP_ZEND_VM=$withval
],[
PHP_ZEND_VM=CALL
])
AC_ARG_ENABLE(zend-memory-manager,
[ --disable-zend-memory-manager
Disable the Zend memory manager - FOR DEVELOPERS ONLY!!],
[
ZEND_USE_ZEND_ALLOC=$enableval
], [
ZEND_USE_ZEND_ALLOC=yes
])
AC_ARG_ENABLE(maintainer-zts,
[ --enable-maintainer-zts Enable thread safety - for code maintainers only],[
[ --enable-maintainer-zts Enable thread safety - for code maintainers only!!],[
ZEND_MAINTAINER_ZTS=$enableval
],[
ZEND_MAINTAINER_ZTS=no
@@ -117,26 +147,32 @@ AC_ARG_ENABLE(maintainer-zts,
AC_ARG_ENABLE(inline-optimization,
[ --disable-inline-optimization
If building zend_execute.lo fails, try this switch.],[
If building zend_execute.lo fails, try this switch],[
ZEND_INLINE_OPTIMIZATION=$enableval
],[
ZEND_INLINE_OPTIMIZATION=yes
])
AC_ARG_ENABLE(memory-limit,
[ --enable-memory-limit Compile with memory limit support. ], [
[ --enable-memory-limit Compile with memory limit support], [
ZEND_MEMORY_LIMIT=$enableval
],[
ZEND_MEMORY_LIMIT=no
])
AC_ARG_ENABLE(zend-multibyte,
[ --enable-zend-multibyte Compile with zend multibyte support. ], [
[ --enable-zend-multibyte Compile with zend multibyte support], [
ZEND_MULTIBYTE=$enableval
],[
ZEND_MULTIBYTE=no
])
AC_MSG_CHECKING([virtual machine dispatch method])
AC_MSG_RESULT($PHP_ZEND_VM)
AC_MSG_CHECKING(whether to enable the Zend memory manager)
AC_MSG_RESULT($ZEND_USE_ZEND_ALLOC)
AC_MSG_CHECKING(whether to enable thread-safety)
AC_MSG_RESULT($ZEND_MAINTAINER_ZTS)
@@ -152,6 +188,19 @@ AC_MSG_RESULT($ZEND_DEBUG)
AC_MSG_CHECKING(whether to enable Zend multibyte)
AC_MSG_RESULT($ZEND_MULTIBYTE)
case $PHP_ZEND_VM in
SWITCH)
AC_DEFINE(ZEND_VM_KIND,ZEND_VM_KIND_SWITCH,[virtual machine dispatch method])
;;
GOTO)
AC_DEFINE(ZEND_VM_KIND,ZEND_VM_KIND_GOTO,[virtual machine dispatch method])
;;
*)
PHP_ZEND_VM=CALL
AC_DEFINE(ZEND_VM_KIND,ZEND_VM_KIND_CALL,[virtual machine dispatch method])
;;
esac
if test "$ZEND_DEBUG" = "yes"; then
AC_DEFINE(ZEND_DEBUG,1,[ ])
echo " $CFLAGS" | grep ' -g' >/dev/null || DEBUG_CFLAGS="-g"
@@ -167,6 +216,12 @@ fi
test -n "$DEBUG_CFLAGS" && CFLAGS="$CFLAGS $DEBUG_CFLAGS"
if test "$ZEND_USE_ZEND_ALLOC" = "yes"; then
AC_DEFINE(USE_ZEND_ALLOC,1,[Use Zend memory manager])
else
AC_DEFINE(USE_ZEND_ALLOC,0,[Use Zend memory manager])
fi
if test "$ZEND_MAINTAINER_ZTS" = "yes"; then
AC_DEFINE(ZTS,1,[ ])
CFLAGS="$CFLAGS -DZTS"
@@ -195,6 +250,13 @@ AC_C_INLINE
AC_SUBST(INLINE_CFLAGS)
AC_MSG_CHECKING(target system is Darwin)
if echo "$target" | grep "darwin" > /dev/null; then
AC_DEFINE([DARWIN], 1, [Define if the target system is darwin])
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
dnl test and set the alignment define for ZEND_MM
dnl this also does the logarithmic test for ZEND_MM.
@@ -237,6 +299,9 @@ int main()
LIBZEND_MM_ALIGN_LOG2=`cat conftest.zend | cut -d ' ' -f 2`
AC_DEFINE_UNQUOTED(ZEND_MM_ALIGNMENT, $LIBZEND_MM_ALIGN, [ ])
AC_DEFINE_UNQUOTED(ZEND_MM_ALIGNMENT_LOG2, $LIBZEND_MM_ALIGN_LOG2, [ ])
], [], [
dnl cross-compile needs something here
LIBZEND_MM_ALIGN=8
])
AC_MSG_RESULT(done)
@@ -244,7 +309,7 @@ AC_MSG_RESULT(done)
])
AC_DEFUN(LIBZEND_CPLUSPLUS_CHECKS,[
AC_DEFUN([LIBZEND_CPLUSPLUS_CHECKS],[
])
+8 -8
View File
@@ -260,10 +260,6 @@ SOURCE=.\zend_qsort.c
# End Source File
# Begin Source File
SOURCE=.\zend_reflection_api.c
# End Source File
# Begin Source File
SOURCE=.\zend_sprintf.c
# End Source File
# Begin Source File
@@ -276,6 +272,10 @@ SOURCE=.\zend_stream.c
# End Source File
# Begin Source File
SOURCE=.\zend_strtod.c
# End Source File
# Begin Source File
SOURCE=.\zend_ts_hash.c
# End Source File
# Begin Source File
@@ -440,10 +440,6 @@ SOURCE=.\zend_qsort.h
# End Source File
# Begin Source File
SOURCE=.\zend_reflection_api.h
# End Source File
# Begin Source File
SOURCE=.\zend_stack.h
# End Source File
# Begin Source File
@@ -452,6 +448,10 @@ SOURCE=.\zend_stream.h
# End Source File
# Begin Source File
SOURCE=.\zend_strtod.h
# End Source File
# Begin Source File
SOURCE=.\zend_ts_hash.h
# End Source File
# Begin Source File
+19 -5
View File
@@ -2,7 +2,7 @@
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2004 Zend Technologies Ltd. (http://www.zend.com) |
| Copyright (c) 1998-2006 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 |
@@ -23,9 +23,7 @@
#define ZEND_DLEXPORT
#define ZEND_DLIMPORT
#ifndef NETWARE
@TOP@
#endif
#undef uint
#undef ulong
@@ -33,9 +31,7 @@
/* Define if you want to enable memory limit support */
#define MEMORY_LIMIT 0
#ifndef NETWARE
@BOTTOM@
#endif
#ifndef ZEND_ACCONFIG_H_NO_C_PROTOS
@@ -47,6 +43,10 @@
# include <sys/types.h>
#endif
#ifdef HAVE_SYS_SELECT_H
#include <sys/select.h>
#endif
#ifdef HAVE_IEEEFP_H
# include <ieeefp.h>
#endif
@@ -65,6 +65,13 @@ int zend_sprintf(char *buffer, const char *format, ...);
#include <math.h>
/* To enable the is_nan, is_infinite and is_finite PHP functions */
#ifdef NETWARE
#define HAVE_ISNAN 1
#define HAVE_ISINF 1
#define HAVE_ISFINITE 1
#endif
#ifndef zend_isnan
#ifdef HAVE_ISNAN
#define zend_isnan(a) isnan(a)
@@ -98,6 +105,13 @@ int zend_sprintf(char *buffer, const char *format, ...);
#endif /* ifndef ZEND_ACCONFIG_H_NO_C_PROTOS */
#ifdef NETWARE
#ifdef USE_WINSOCK
#/*This detection against winsock is of no use*/ undef HAVE_SOCKLEN_T
#/*This detection against winsock is of no use*/ undef HAVE_SYS_SOCKET_H
#endif
#endif
/*
* Local variables:
* tab-width: 4
+64 -4
View File
@@ -2,7 +2,40 @@ dnl $Id$
dnl
dnl This file contains local autoconf functions.
AC_DEFUN(ZEND_FP_EXCEPT,[
AC_DEFUN([LIBZEND_BISON_CHECK],[
# we only support certain bison versions
bison_version_list="1.28 1.35 1.75 1.875 2.0 2.1"
# for standalone build of Zend Engine
test -z "$SED" && SED=sed
bison_version=none
if test "$YACC"; then
AC_CACHE_CHECK([for bison version], php_cv_bison_version, [
bison_version_vars=`bison --version 2> /dev/null | grep 'GNU Bison' | cut -d ' ' -f 4 | $SED -e 's/\./ /' | tr -d a-z`
php_cv_bison_version=invalid
if test -n "$bison_version_vars"; then
set $bison_version_vars
bison_version="${1}.${2}"
for bison_check_version in $bison_version_list; do
if test "$bison_version" = "$bison_check_version"; then
php_cv_bison_version="$bison_check_version (ok)"
break
fi
done
fi
])
fi
case $php_cv_bison_version in
""|invalid[)]
bison_msg="bison versions supported for regeneration of the Zend/PHP parsers: $bison_version_list (found: $bison_version)."
AC_MSG_WARN([$bison_msg])
YACC="exit 0;"
;;
esac
])
AC_DEFUN([ZEND_FP_EXCEPT],[
AC_CACHE_CHECK(whether fp_except is defined, ac_cv_type_fp_except,[
AC_TRY_COMPILE([
#include <floatingpoint.h>
@@ -23,7 +56,7 @@ fp_except x = (fp_except) 0;
dnl
dnl Check for broken sprintf()
dnl
AC_DEFUN(AC_ZEND_BROKEN_SPRINTF,[
AC_DEFUN([AC_ZEND_BROKEN_SPRINTF],[
AC_CACHE_CHECK(whether sprintf is broken, ac_cv_broken_sprintf,[
AC_TRY_RUN([main() {char buf[20];exit(sprintf(buf,"testing 123")!=11); }],[
ac_cv_broken_sprintf=no
@@ -41,7 +74,34 @@ AC_DEFUN(AC_ZEND_BROKEN_SPRINTF,[
AC_DEFINE_UNQUOTED(ZEND_BROKEN_SPRINTF, $ac_result, [Whether sprintf is broken])
])
AC_DEFUN(AM_SET_LIBTOOL_VARIABLE,[
LIBTOOL='$(SHELL) $(top_builddir)/libtool $1'
dnl
dnl AC_ZEND_C_BIGENDIAN
dnl Replacement macro for AC_C_BIGENDIAN
dnl
AC_DEFUN([AC_ZEND_C_BIGENDIAN],
[AC_CACHE_CHECK([whether byte ordering is bigendian], ac_cv_c_bigendian_php,
[
ac_cv_c_bigendian_php=unknown
AC_TRY_RUN(
[
int main(void)
{
short one = 1;
char *cp = (char *)&one;
if (*cp == 0) {
return(0);
} else {
return(1);
}
}
], [ac_cv_c_bigendian_php=yes], [ac_cv_c_bigendian_php=no], [ac_cv_c_bigendian_php=unknown])
])
if test $ac_cv_c_bigendian_php = yes; then
AC_DEFINE(WORDS_BIGENDIAN, [], [Define if processor uses big-endian word])
fi
])
AC_DEFUN([AM_SET_LIBTOOL_VARIABLE],[
LIBTOOL='$(SHELL) $(top_builddir)/libtool $1'
])
+419
View File
@@ -0,0 +1,419 @@
<?php
function simple() {
$a = 0;
for ($i = 0; $i < 1000000; $i++)
$a++;
$thisisanotherlongname = 0;
for ($thisisalongname = 0; $thisisalongname < 1000000; $thisisalongname++)
$thisisanotherlongname++;
}
/****/
function simplecall() {
for ($i = 0; $i < 1000000; $i++)
strlen("hallo");
}
/****/
function hallo($a) {
}
function simpleucall() {
for ($i = 0; $i < 1000000; $i++)
hallo("hallo");
}
/****/
function simpleudcall() {
for ($i = 0; $i < 1000000; $i++)
hallo2("hallo");
}
function hallo2($a) {
}
/****/
function mandel() {
$w1=50;
$h1=150;
$recen=-.45;
$imcen=0.0;
$r=0.7;
$s=0; $rec=0; $imc=0; $re=0; $im=0; $re2=0; $im2=0;
$x=0; $y=0; $w2=0; $h2=0; $color=0;
$s=2*$r/$w1;
$w2=40;
$h2=12;
for ($y=0 ; $y<=$w1; $y=$y+1) {
$imc=$s*($y-$h2)+$imcen;
for ($x=0 ; $x<=$h1; $x=$x+1) {
$rec=$s*($x-$w2)+$recen;
$re=$rec;
$im=$imc;
$color=1000;
$re2=$re*$re;
$im2=$im*$im;
while( ((($re2+$im2)<1000000) && $color>0)) {
$im=$re*$im*2+$imc;
$re=$re2-$im2+$rec;
$re2=$re*$re;
$im2=$im*$im;
$color=$color-1;
}
if ( $color==0 ) {
print "_";
} else {
print "#";
}
}
print "<br>";
flush();
}
}
/****/
function mandel2() {
$b = " .:,;!/>)|&IH%*#";
//float r, i, z, Z, t, c, C;
for ($y=30; printf("\n"), $C = $y*0.1 - 1.5, $y--;){
for ($x=0; $c = $x*0.04 - 2, $z=0, $Z=0, $x++ < 75;){
for ($r=$c, $i=$C, $k=0; $t = $z*$z - $Z*$Z + $r, $Z = 2*$z*$Z + $i, $z=$t, $k<5000; $k++)
if ($z*$z + $Z*$Z > 500000) break;
echo $b[$k%16];
}
}
}
/****/
function Ack($m, $n){
if($m == 0) return $n+1;
if($n == 0) return Ack($m-1, 1);
return Ack($m - 1, Ack($m, ($n - 1)));
}
function ackermann($n) {
$r = Ack(3,$n);
print "Ack(3,$n): $r\n";
}
/****/
function ary($n) {
for ($i=0; $i<$n; $i++) {
$X[$i] = $i;
}
for ($i=$n-1; $i>=0; $i--) {
$Y[$i] = $X[$i];
}
$last = $n-1;
print "$Y[$last]\n";
}
/****/
function ary2($n) {
for ($i=0; $i<$n;) {
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
$X[$i] = $i; ++$i;
}
for ($i=$n-1; $i>=0;) {
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
$Y[$i] = $X[$i]; --$i;
}
$last = $n-1;
print "$Y[$last]\n";
}
/****/
function ary3($n) {
for ($i=0; $i<$n; $i++) {
$X[$i] = $i + 1;
$Y[$i] = 0;
}
for ($k=0; $k<1000; $k++) {
for ($i=$n-1; $i>=0; $i--) {
$Y[$i] += $X[$i];
}
}
$last = $n-1;
print "$Y[0] $Y[$last]\n";
}
/****/
function fibo_r($n){
return(($n < 2) ? 1 : fibo_r($n - 2) + fibo_r($n - 1));
}
function fibo($n) {
$r = fibo_r($n);
print "$r\n";
}
/****/
function hash($n) {
for ($i = 1; $i <= $n; $i++) {
$X[dechex($i)] = $i;
}
$c = 0;
for ($i = $n; $i > 0; $i--) {
if ($X[dechex($i)]) { $c++; }
}
print "$c\n";
}
/****/
function hash2($n) {
for ($i = 0; $i < $n; $i++) {
$hash1["foo_$i"] = $i;
$hash2["foo_$i"] = 0;
}
for ($i = $n; $i > 0; $i--) {
foreach($hash1 as $key => $value) $hash2[$key] += $value;
}
$first = "foo_0";
$last = "foo_".($n-1);
print "$hash1[$first] $hash1[$last] $hash2[$first] $hash2[$last]\n";
}
/****/
function gen_random ($n) {
global $LAST;
return( ($n * ($LAST = ($LAST * IA + IC) % IM)) / IM );
}
function heapsort_r($n, &$ra) {
$l = ($n >> 1) + 1;
$ir = $n;
while (1) {
if ($l > 1) {
$rra = $ra[--$l];
} else {
$rra = $ra[$ir];
$ra[$ir] = $ra[1];
if (--$ir == 1) {
$ra[1] = $rra;
return;
}
}
$i = $l;
$j = $l << 1;
while ($j <= $ir) {
if (($j < $ir) && ($ra[$j] < $ra[$j+1])) {
$j++;
}
if ($rra < $ra[$j]) {
$ra[$i] = $ra[$j];
$j += ($i = $j);
} else {
$j = $ir + 1;
}
}
$ra[$i] = $rra;
}
}
function heapsort($N) {
global $LAST;
define("IM", 139968);
define("IA", 3877);
define("IC", 29573);
$LAST = 42;
for ($i=1; $i<=$N; $i++) {
$ary[$i] = gen_random(1);
}
heapsort_r($N, $ary);
printf("%.10f\n", $ary[$N]);
}
/****/
function mkmatrix ($rows, $cols) {
$count = 1;
$mx = array();
for ($i=0; $i<$rows; $i++) {
for ($j=0; $j<$cols; $j++) {
$mx[$i][$j] = $count++;
}
}
return($mx);
}
function mmult ($rows, $cols, $m1, $m2) {
$m3 = array();
for ($i=0; $i<$rows; $i++) {
for ($j=0; $j<$cols; $j++) {
$x = 0;
for ($k=0; $k<$cols; $k++) {
$x += $m1[$i][$k] * $m2[$k][$j];
}
$m3[$i][$j] = $x;
}
}
return($m3);
}
function matrix($n) {
$SIZE = 30;
$m1 = mkmatrix($SIZE, $SIZE);
$m2 = mkmatrix($SIZE, $SIZE);
while ($n--) {
$mm = mmult($SIZE, $SIZE, $m1, $m2);
}
print "{$mm[0][0]} {$mm[2][3]} {$mm[3][2]} {$mm[4][4]}\n";
}
/****/
function nestedloop($n) {
$x = 0;
for ($a=0; $a<$n; $a++)
for ($b=0; $b<$n; $b++)
for ($c=0; $c<$n; $c++)
for ($d=0; $d<$n; $d++)
for ($e=0; $e<$n; $e++)
for ($f=0; $f<$n; $f++)
$x++;
print "$x\n";
}
/****/
function sieve($n) {
$count = 0;
while ($n-- > 0) {
$count = 0;
$flags = range (0,8192);
for ($i=2; $i<8193; $i++) {
if ($flags[$i] > 0) {
for ($k=$i+$i; $k <= 8192; $k+=$i) {
$flags[$k] = 0;
}
$count++;
}
}
}
print "Count: $count\n";
}
/****/
function strcat($n) {
$str = "";
while ($n-- > 0) {
$str .= "hello\n";
}
$len = strlen($str);
print "$len\n";
}
/*****/
function getmicrotime()
{
$t = gettimeofday();
return ($t['sec'] + $t['usec'] / 1000000);
}
function start_test()
{
ob_start();
return getmicrotime();
}
function end_test($start, $name)
{
global $total;
$end = getmicrotime();
ob_end_clean();
$total += $end-$start;
$num = number_format($end-$start,3);
$pad = str_repeat(" ", 24-strlen($name)-strlen($num));
echo $name.$pad.$num."\n";
ob_start();
return getmicrotime();
}
function total()
{
global $total;
$pad = str_repeat("-", 24);
echo $pad."\n";
$num = number_format($total,3);
$pad = str_repeat(" ", 24-strlen("Total")-strlen($num));
echo "Total".$pad.$num."\n";
}
$t0 = $t = start_test();
simple();
$t = end_test($t, "simple");
simplecall();
$t = end_test($t, "simplecall");
simpleucall();
$t = end_test($t, "simpleucall");
simpleudcall();
$t = end_test($t, "simpleudcall");
mandel();
$t = end_test($t, "mandel");
mandel2();
$t = end_test($t, "mandel2");
ackermann(7);
$t = end_test($t, "ackermann(7)");
ary(50000);
$t = end_test($t, "ary(50000)");
ary2(50000);
$t = end_test($t, "ary2(50000)");
ary3(2000);
$t = end_test($t, "ary3(2000)");
fibo(30);
$t = end_test($t, "fibo(30)");
hash(50000);
$t = end_test($t, "hash(50000)");
hash2(500);
$t = end_test($t, "hash2(500)");
heapsort(20000);
$t = end_test($t, "heapsort(20000)");
matrix(20);
$t = end_test($t, "matrix(20)");
nestedloop(12);
$t = end_test($t, "nestedloop(12)");
sieve(30);
$t = end_test($t, "sieve(30)");
strcat(200000);
$t = end_test($t, "strcat(200000)");
total($t0, "Total");
?>
+4
View File
@@ -10,10 +10,14 @@ AC_PROG_CC
AM_PROG_LEX
AM_PROG_CC_STDC
ZEND_VERSION=$VERSION
AC_ZEND_C_BIGENDIAN
dnl We want this one before the checks, so the checks can modify CFLAGS.
test -z "$CFLAGS" && auto_cflags=1
AC_CHECK_SIZEOF(long, 8)
AC_CHECK_SIZEOF(int, 4)
sinclude(Zend.m4)
LIBZEND_BASIC_CHECKS
+19
View File
@@ -0,0 +1,19 @@
/*
+----------------------------------------------------------------------+
| Zend Engine |
+----------------------------------------------------------------------+
| Copyright (c) 1998-2006 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 |
| available through the world-wide-web at the following url: |
| http://www.zend.com/license/2_00.txt. |
| If you did not receive a copy of the Zend license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| license@zend.com so we can mail you a copy immediately. |
+----------------------------------------------------------------------+
| Authors: |
+----------------------------------------------------------------------+
*/
/* $Id$ */
+15
View File
@@ -0,0 +1,15 @@
--TEST--
Array type hint
--FILE--
<?php
function foo(array $a) {
echo count($a)."\n";
}
foo(array(1,2,3));
foo(123);
?>
--EXPECTF--
3
Fatal error: Argument 1 passed to foo() must be an array, called in %sarray_type_hint_001.php on line 7 and defined in %sarray_type_hint_001.php on line 2
-3
View File
@@ -34,6 +34,3 @@ $c->viewMom();
--EXPECT--
protected method
protected property
--EXPECT--
protected method
protected property
-40
View File
@@ -18,57 +18,17 @@ for ($i = 0; $i < 8; $i++) {
--EXPECTF--
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
string(3) "foo"
'foo'
Notice: Undefined variable: a in %s on line %d
Strict Standards: Only variable references should be returned by reference in %s on line %d
+1 -1
View File
@@ -8,7 +8,7 @@ class Test {
function __copy()
{
$string = PHP_VERSION;
$version = $string{0};
$version = $string[0];
if($string < 5)
{
return $this;
+1 -1
View File
@@ -1,5 +1,5 @@
--TEST--
Bug #26077 Memory leaks when creating an instance of an object
Bug #26077 (Memory leaks when creating an instance of an object)
--FILE--
<?php
class foo {} new foo();
+12 -4
View File
@@ -11,11 +11,19 @@ class array_iterator implements IteratorAggregate {
$obj = new array_iterator;
foreach ($obj as $property => $value) {
var_dump($value);
try
{
foreach ($obj as $property => $value)
{
var_dump($value);
}
}
catch(Exception $e)
{
echo $e->getMessage() . "\n";
}
?>
===DONE===
--EXPECTF--
Warning: Objects returned by array_iterator::getIterator() must be traversable or implement interface Iterator in %sbug26229.php on line %d
===DONE===
Objects returned by array_iterator::getIterator() must be traversable or implement interface Iterator
===DONE===
+1 -1
View File
@@ -3,7 +3,7 @@ Bug #26281 (switch() crash when condition is a string offset)
--FILE--
<?php
$x = 'abc';
switch ($x{0}) {
switch ($x[0]) {
case 'a':
echo "no crash\n";
break;
+2 -2
View File
@@ -4,14 +4,14 @@ Bug #26801 (switch ($a{0}) crash)
<?php
$a = '11';
$b = $a{0};
$b = $a[0];
switch ($b) {
case '-':
break;
}
$a = '22';
switch ($a{0}) {
switch ($a[0]) {
case '-':
break;
}
-13
View File
@@ -1,13 +0,0 @@
--TEST--
Bug #27145 (Errors messages print unmangled PPP property names)
--FILE--
<?php
class a {
protected static $v = "aa";
}
class b extends a {
protected static $v = "bb";
}
?>
--EXPECTF--
Fatal error: Cannot redeclare property static protected a::$v in class b in %s on line %d
+28
View File
@@ -0,0 +1,28 @@
--TEST--
Bug #27268 (Bad references accentuated by clone)
--FILE--
<?php
class A
{
public function &getA()
{
return $this->a;
}
}
$A = new A;
$A->a = array(1);
$x = $A->getA();
$clone = clone $A;
$clone->a = array();
print_r($A);
?>
--EXPECT--
A Object
(
[a] => Array
(
[0] => 1
)
)
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #27304
--FILE--
<?php
class Staticexample
{
static function test()
{
var_dump(isset($this));
}
}
$b = new Staticexample();
Staticexample::test();
$b->test();
?>
===DONE===
--EXPECT--
bool(false)
bool(false)
===DONE===
+12
View File
@@ -0,0 +1,12 @@
--TEST--
Bug #27598 (list() array key assignment causes HUGE memory leak)
--FILE--
<?php
list($out[0]) = array(1);
var_dump($out);
?>
--EXPECT--
array(1) {
[0]=>
int(1)
}
+2
View File
@@ -2,6 +2,8 @@
Bug #27641 (zend.ze1_compatibility_mode = On causes object properties to be misreported)
--SKIPIF--
<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 is needed'); ?>
--INI--
error_reporting=4095
--FILE--
<?php
class A {
+18
View File
@@ -0,0 +1,18 @@
--TEST--
Bug #27669 (PHP 5 didn't support all possibilities for calling static methods dynamically)
--FILE--
<?php
error_reporting(E_ALL & !E_STRICT);
class A {
function hello() {
echo "Hello World\n";
}
}
$y[0] = 'hello';
A::$y[0]();
?>
===DONE===
--EXPECTF--
Hello World
===DONE===
+72
View File
@@ -0,0 +1,72 @@
--TEST--
Bug #27798 (private / protected variables not exposed by get_object_vars() inside class)
--FILE--
<?php
class Base
{
public $Foo = 1;
protected $Bar = 2;
private $Baz = 3;
function __construct()
{
echo __METHOD__ . "\n";
var_dump(get_object_vars($this));
}
}
class Child extends Base
{
private $Baz = 4;
function __construct()
{
parent::__construct();
echo __METHOD__ . "\n";
var_dump(get_object_vars($this));
}
}
var_dump(get_object_vars(new Base));
var_dump(get_object_vars(new Child));
?>
===DONE===
--EXPECT--
Base::__construct
array(3) {
["Foo"]=>
int(1)
["Bar"]=>
int(2)
["Baz"]=>
int(3)
}
array(1) {
["Foo"]=>
int(1)
}
Base::__construct
array(3) {
["Baz"]=>
int(4)
["Foo"]=>
int(1)
["Bar"]=>
int(2)
}
Child::__construct
array(3) {
["Baz"]=>
int(4)
["Foo"]=>
int(1)
["Bar"]=>
int(2)
}
array(1) {
["Foo"]=>
int(1)
}
===DONE===
+46
View File
@@ -0,0 +1,46 @@
--TEST--
Bug #28072 (static array with some constant keys will be incorrectly ordered)
--FILE--
<?php
define("FIRST_KEY", "a");
define("THIRD_KEY", "c");
function test()
{
static $arr = array(
FIRST_KEY => "111",
"b" => "222",
THIRD_KEY => "333",
"d" => "444"
);
print_r($arr);
}
function test2()
{
static $arr = array(
FIRST_KEY => "111",
"a" => "222",
"c" => "333",
THIRD_KEY => "444"
);
print_r($arr);
}
test();
test2();
?>
--EXPECT--
Array
(
[a] => 111
[b] => 222
[c] => 333
[d] => 444
)
Array
(
[a] => 111
[c] => 444
)
+23
View File
@@ -0,0 +1,23 @@
--TEST--
Bug #28377 (debug_backtrace is intermittently passing args)
--FILE--
<?php
function doit($a, $b)
{
$trace = debug_backtrace();
custom_callback('dereferenced', $trace);
custom_callback('direct', debug_backtrace());
}
function custom_callback($traceName, $btInfo)
{
echo $traceName ." -- args: ";
echo isset($btInfo[0]['args']) ? count($btInfo[0]['args']) : 'does not exist';
echo "\n";
}
doit('a','b');
?>
--EXPECT--
dereferenced -- args: 2
direct -- args: 2
+65
View File
@@ -0,0 +1,65 @@
--TEST--
Bug #28442 (Changing a static variables in a class changes it across sub/super classes.)
--FILE--
<?php
class ClassA
{
static $prop;
}
class ClassB extends ClassA
{
static $prop;
}
class ClassC extends ClassB
{
}
echo "===INIT===\n";
ClassA::$prop = 'A';
ClassB::$prop = 'B';
ClassC::$prop = 'C';
var_dump(ClassA::$prop);
var_dump(ClassB::$prop);
var_dump(ClassC::$prop);
echo "===SetA===\n";
ClassA::$prop = 'A2';
var_dump(ClassA::$prop);
var_dump(ClassB::$prop);
var_dump(ClassC::$prop);
echo "===SetB===\n";
ClassB::$prop = 'B2';
var_dump(ClassA::$prop);
var_dump(ClassB::$prop);
var_dump(ClassC::$prop);
echo "===SetC===\n";
ClassC::$prop = 'C2';
var_dump(ClassA::$prop);
var_dump(ClassB::$prop);
var_dump(ClassC::$prop);
?>
===DONE===
--EXPECTF--
===INIT===
string(1) "A"
string(1) "C"
string(1) "C"
===SetA===
string(2) "A2"
string(1) "C"
string(1) "C"
===SetB===
string(2) "A2"
string(2) "B2"
string(2) "B2"
===SetC===
string(2) "A2"
string(2) "C2"
string(2) "C2"
===DONE===
+74
View File
@@ -0,0 +1,74 @@
--TEST--
Bug #28444 (Cannot access undefined property for object with overloaded property access)
--FILE--
<?php
class Object
{
public $x;
function __construct($x)
{
$this->x = $x;
}
}
class Overloaded
{
public $props = array();
public $x;
function __construct($x)
{
$this->x = new Object($x);
}
function __get($prop)
{
echo __METHOD__ . "($prop)\n";
return $this->props[$prop];
}
function __set($prop, $val)
{
echo __METHOD__ . "($prop,$val)\n";
$this->props[$prop] = $val;
}
}
$y = new Overloaded(2);
var_dump($y->x);
var_dump($y->x->x);
var_dump($y->x->x = 3);
var_dump($y->y = 3);
var_dump($y->y);
var_dump($y->z = new Object(4));
var_dump($y->z->x);
$t = $y->z;
var_dump($t->x = 5);
var_dump($y->z->x = 6);
?>
===DONE===
--EXPECTF--
object(Object)#%d (1) {
["x"]=>
int(2)
}
int(2)
int(3)
Overloaded::__set(y,3)
int(3)
Overloaded::__get(y)
int(3)
Overloaded::__set(z,Object id #3)
object(Object)#%d (1) {
["x"]=>
int(4)
}
Overloaded::__get(z)
int(4)
Overloaded::__get(z)
int(5)
Overloaded::__get(z)
int(6)
===DONE===
+11
View File
@@ -0,0 +1,11 @@
--TEST--
Bug #29015 (Incorrect behavior of member vars(non string ones)-numeric mem vars und others)
--FILE--
<?php
$a = new stdClass();
$x = "";
$a->$x = "string('')";
var_dump($a);
?>
--EXPECTF--
Fatal error: Cannot access empty property in %sbug29015.php on line 4
+27
View File
@@ -0,0 +1,27 @@
--TEST--
Bug #29104 Function declaration in method doesn't work
--FILE--
<?php
class A
{
function g()
{
echo "function g - begin\n";
function f()
{
echo "function f\n";
}
echo "function g - end\n";
}
}
$a = new A;
$a->g();
f();
?>
--EXPECT--
function g - begin
function g - end
function f
+112
View File
@@ -0,0 +1,112 @@
--TEST--
Bug #29210 Function: is_callable - no support for private and protected classes
--FILE--
<?php
class test_class {
private function test_func1() {
echo "test_func1\n";
}
protected function test_func2() {
echo "test_func2\n";
}
static private function test_func3() {
echo "test_func3\n";
}
static protected function test_func4() {
echo "test_func4\n";
}
function test() {
if (is_callable(array($this,'test_func1'))) {
$this->test_func1();
} else {
echo "test_func1 isn't callable from inside\n";
}
if (is_callable(array($this,'test_func2'))) {
$this->test_func2();
} else {
echo "test_func2 isn't callable from inside\n";
}
if (is_callable(array('test_class','test_func3'))) {
test_class::test_func3();
} else {
echo "test_func3 isn't callable from inside\n";
}
if (is_callable(array('test_class','test_func4'))) {
test_class::test_func4();
} else {
echo "test_func4 isn't callable from inside\n";
}
}
}
class foo extends test_class {
function test() {
if (is_callable(array($this,'test_func1'))) {
$this->test_func1();
} else {
echo "test_func1 isn't callable from child\n";
}
if (is_callable(array($this,'test_func2'))) {
$this->test_func2();
} else {
echo "test_func2 isn't callable from child\n";
}
if (is_callable(array('test_class','test_func3'))) {
test_class::test_func3();
} else {
echo "test_func3 isn't callable from child\n";
}
if (is_callable(array('test_class','test_func4'))) {
test_class::test_func4();
} else {
echo "test_func4 isn't callable from child\n";
}
}
}
$object = new test_class;
$object->test();
if (is_callable(array($object,'test_func1'))) {
$object->test_func1();
} else {
echo "test_func1 isn't callable from outside\n";
}
if (is_callable(array($object,'test_func2'))) {
$object->test_func2();
} else {
echo "test_func2 isn't callable from outside\n";
}
if (is_callable(array('test_class','test_func3'))) {
test_class::test_func3();
} else {
echo "test_func3 isn't callable from outside\n";
}
if (is_callable(array('test_class','test_func4'))) {
test_class::test_func4();
} else {
echo "test_func4 isn't callable from outside\n";
}
$object = new foo();
$object->test();
?>
--EXPECTF--
test_func1
test_func2
Strict Standards: Non-static method test_class::test_func3() canot be called statically, assuming $this from compatible context test_class in %sbug29210.php on line %d
test_func3
Strict Standards: Non-static method test_class::test_func4() canot be called statically, assuming $this from compatible context test_class in %sbug29210.php on line %d
test_func4
test_func1 isn't callable from outside
test_func2 isn't callable from outside
test_func3 isn't callable from outside
test_func4 isn't callable from outside
test_func1 isn't callable from child
test_func2
Strict Standards: Non-static method test_class::test_func3() canot be called statically, assuming $this from compatible context foo in %sbug29210.php on line %d
test_func3 isn't callable from child
Strict Standards: Non-static method test_class::test_func4() canot be called statically, assuming $this from compatible context foo in %sbug29210.php on line %d
test_func4
+34
View File
@@ -0,0 +1,34 @@
--TEST--
Bug #29368 (The destructor is called when an exception is thrown from the constructor)
--FILE--
<?php
class Foo
{
function __construct()
{
echo __METHOD__ . "\n";
throw new Exception;
}
function __destruct()
{
echo __METHOD__ . "\n";
}
}
try
{
$bar = new Foo;
} catch(Exception $exc)
{
echo "Caught exception!\n";
}
unset($bar);
?>
===DONE===
--EXPECTF--
Foo::__construct
Caught exception!
===DONE===
+41
View File
@@ -0,0 +1,41 @@
--TEST--
Bug #29674 (inherited method doesn't have access to private variables of the derived class)
--FILE--
<?php
class BaseClass
{
private $private_base = "Base";
function printVars ()
{
var_dump($this->private_base);
var_dump($this->private_child);
}
}
class ChildClass extends BaseClass
{
private $private_child = "Child";
}
echo "===BASE===\n";
$obj = new BaseClass;
$obj->printVars();
echo "===CHILD===\n";
$obj = new ChildClass;
$obj->printVars();
?>
===DONE===
--EXPECTF--
===BASE===
string(4) "Base"
Notice: Undefined property: BaseClass::$private_child in %sbug29674.php on line %d
NULL
===CHILD===
string(4) "Base"
Fatal error: Cannot access private property ChildClass::$private_child in %sbug29674.php on line %d
+62
View File
@@ -0,0 +1,62 @@
--TEST--
Bug #29689 (default value of protected member overrides default value of private)
--FILE--
<?php
class foo {
private $foo = 'foo';
private $foo2 = 'foo2';
function printFoo()
{
echo __CLASS__, ': ', $this->foo, " ", $this->foo2, "\n";
}
}
class bar extends foo {
protected $foo = 'bar';
function printFoo()
{
parent::printFoo();
echo __CLASS__, ': ', $this->foo, " ", $this->foo2, "\n";
}
}
class baz extends bar {
protected $foo = 'baz';
protected $foo2 = 'baz2';
}
class bar2 extends foo {
function printFoo()
{
parent::printFoo();
echo __CLASS__, ': ', $this->foo, " ", $this->foo2, "\n";
}
}
class baz2 extends bar2 {
protected $foo = 'baz2';
protected $foo2 = 'baz22';
}
$bar = new bar;
$bar->printFoo();
echo "---baz--\n";
$baz = new baz();
$baz->printFoo();
echo "---baz2--\n";
$baz = new baz2();
$baz->printFoo();
?>
--EXPECTF--
foo: foo foo2
bar: bar
Notice: Undefined property: bar::$foo2 in %s on line %d
---baz--
foo: foo foo2
bar: baz baz2
---baz2--
foo: foo foo2
bar2: baz2 baz22
+13
View File
@@ -0,0 +1,13 @@
--TEST--
Bug #29883 (isset gives invalid values on strings)
--FILE--
<?php
$x = "bug";
var_dump(isset($x[-1]));
var_dump(isset($x["1"]));
echo $x["1"]."\n";
?>
--EXPECT--
bool(false)
bool(true)
u
Loaded 100 of 4672 files, more files were not shown because too many files have changed in this diff. Show more