Commit Graph

1644 Commits

Author SHA1 Message Date
Andrei Zmievski
f136e5cf08 Added macros for object properties and class entry. 2000-10-27 14:13:03 +00:00
Andi Gutmans
2946f87f00 - Fix new -m on Windows 2000-10-26 23:50:17 +00:00
Andrei Zmievski
84681b9c81 Remove the patch to register_list_destructors(). 2000-10-25 17:41:34 +00:00
Andrei Zmievski
dadb140e2f - Fixed a bug in zend_rsrc_list_get_rsrc_type()
- Switched register_list_destructors() to use
  zend_register_list_destructors_ex() instead
2000-10-20 18:26:15 +00:00
Andi Gutmans
c13cfa040d - Constant expressions which are used multiple times need to be copy_ctored 2000-10-19 09:36:53 +00:00
Andi Gutmans
a9655b77ab - Fix whitespace 2000-10-18 20:17:18 +00:00
Andi Gutmans
928da71046 - Try #2. Wasn't allowed to delete in the previous manner because we were
in the middle of an llist_apply()
2000-10-18 20:15:53 +00:00
Sascha Schumann
ffc6e72604 Add explicit conversion from 'void *', otherwise ANSI C++ compilers
will break out.
2000-10-18 19:53:43 +00:00
Andi Gutmans
a953f6bc5b - Fix crash 2000-10-18 19:48:17 +00:00
Andi Gutmans
610edbc7de - Fix copy&paste bug 2000-10-17 18:25:10 +00:00
Andi Gutmans
54754242da - Increase op_array size faster and make eralloc() it in the end to save
memory.
2000-10-15 19:52:01 +00:00
Andi Gutmans
154052ff15 - Add another patch from Sterling. 2000-10-14 19:48:53 +00:00
Andi Gutmans
5c6593b505 - Preliminary commit of Sterlings get_defined_functions()/get_defined_vars
functions
2000-10-14 15:52:24 +00:00
Andi Gutmans
b8cadf21db - Only run startup() if ZEND_EXTENSIONS is defined to 1.
This fixes a link error on platforms which don't support libdl
2000-10-14 00:16:46 +00:00
Andi Gutmans
bc37c9b1cd - Make increment of "" become "1" 2000-10-13 16:24:00 +00:00
Andi Gutmans
e9887156cf Don't use 'new' symbol 2000-10-11 19:11:48 +00:00
Zeev Suraski
dee2d85e77 Fix -a interactive mode (no idea how the previous commit got committed) 2000-10-11 18:51:52 +00:00
Zeev Suraski
48167d2b21 *** empty log message *** 2000-10-11 18:36:02 +00:00
Zeev Suraski
84f81c50ba Update version 2000-10-11 17:40:40 +00:00
Zeev Suraski
9aa38aad45 Add zend_hash_merge_ex(), for selective merging 2000-10-11 16:22:40 +00:00
Andi Gutmans
996bd9300b - Fix Bug #7061 2000-10-06 17:34:50 +00:00
Andi Gutmans
d84c5a2238 - Updated included_files() also for plain include()/require(). 2000-10-05 17:58:46 +00:00
Andi Gutmans
6d92ac275d - Fix fprintf 2000-10-04 19:29:28 +00:00
Andi Gutmans
fe550afba6 - Change zend_extension_api_no 2000-10-02 20:08:46 +00:00
Andi Gutmans
ab8c6ed967 - Cleanup error output 2000-09-30 16:24:53 +00:00
Andi Gutmans
c4fd954b8a - Another has optimization/fix like the hash_copy one from earlier on 2000-09-28 23:21:08 +00:00
Stanislav Malyshev
56c474cf48 Make hash_copy call copy constructor on a real copy, not on a temp 2000-09-28 15:17:50 +00:00
Andi Gutmans
b4ac6f4fdd - Remove zend_gcc_inline.c 2000-09-28 06:40:57 +00:00
Sascha Schumann
99771d91ce Remove --enable-c9x-inline option. We now use a syntax which is compatible
with all compilers by providing the function with static linkage in every
compilation unit.
2000-09-26 11:10:11 +00:00
Zeev Suraski
309827ec1d Fix previous update - move extension startup further down the startup sequence 2000-09-25 18:10:45 +00:00
Zeev Suraski
59d3eb5f24 Move extension startup further down the startup sequence 2000-09-25 17:02:05 +00:00
Andi Gutmans
813f7b58d6 - Add Z_BVAL* macros 2000-09-19 18:18:26 +00:00
Stanislav Malyshev
d9d65f18e9 Fix crash on Solaris with function parameter destruction 2000-09-19 17:27:56 +00:00
Stanislav Malyshev
5918218872 Made get_included_files() work again, in somewhat different way 2000-09-18 13:43:20 +00:00
Stanislav Malyshev
2158bbfa7f Set filename even on recursive include 2000-09-17 08:58:39 +00:00
Andi Gutmans
5418b59681 - Fix NULL handling in ARRAY opcode and resolve memory leak 2000-09-14 20:30:06 +00:00
Zeev Suraski
5286b3971c Make compile_string() accept a description of the code 2000-09-12 19:47:25 +00:00
Andi Gutmans
5348058938 - Forgot to create extended info in include()/require() call 2000-09-11 15:15:57 +00:00
Stanislav Malyshev
e7402d7a50 Allow require_once to take expressions, just like require 2000-09-10 11:24:45 +00:00
Stanislav Malyshev
a05c35b802 Try once more to remove dups 2000-09-10 09:49:55 +00:00
Stanislav Malyshev
bb030e6fa8 Test commit - weed out duplicate messages 2000-09-10 09:49:02 +00:00
Zeev Suraski
4acff8f37f Don't use unsafe sprintf() 2000-09-09 15:06:38 +00:00
Stanislav Malyshev
d10336ec0e Don't trust snprintf return 2000-09-08 13:19:51 +00:00
Andi Gutmans
180c337885 - Save two lines 2000-09-06 18:42:06 +00:00
Andi Gutmans
6d32e7e59b - Fix header 2000-09-06 18:38:36 +00:00
Sascha Schumann
5669b2dd26 Unless overwritten, default to no optimization in debug mode. 2000-09-06 18:37:39 +00:00
Andi Gutmans
715774bed7 - Commiting Sterling's new multi_convert* functions 2000-09-05 17:55:57 +00:00
Andrei Zmievski
0fd8685c64 Fix memory overrun. 2000-09-05 14:58:14 +00:00
Stanislav Malyshev
951eb9079c Fix crash with trigger_error having no args (#6549) 2000-09-05 12:08:41 +00:00
Andi Gutmans
85181ac512 - Remove two tabs 2000-09-04 04:02:17 +00:00
Andi Gutmans
570e7e9a13 - Defining TSRM_WIN32 in each and every dsp sucked. Revert this change 2000-09-02 16:28:25 +00:00
Andi Gutmans
8d7faf6c12 - Fix windows build 2000-09-02 15:56:18 +00:00
Andi Gutmans
f826cc3bdd - This should fix the performance problem with Release builds 2000-08-31 23:49:36 +00:00
Andi Gutmans
27de50012b - Use emalloc() for opened_path now. This was a potential leak before.
- This patch has potential to break stuff but I tested it as much as I
- could. Fixes should be easy.
2000-08-31 22:24:20 +00:00
Andi Gutmans
1b282b3521 - Remove support for __string_value() in print $obj 2000-08-31 19:50:19 +00:00
Zeev Suraski
99af3ed8ef Safer shutdown process 2000-08-31 16:01:31 +00:00
Andi Gutmans
e7f10a41f2 - Update Zend version. 2000-08-29 15:48:55 +00:00
Andi Gutmans
1192fe545f - Don't define this function in non-debug mode 2000-08-26 14:45:29 +00:00
Andi Gutmans
fbbc249f2b - Revert patch from 9/7/2000 which seems to have broken unset().
- I hope what made me do this patch doesn't appear again.
2000-08-24 19:03:35 +00:00
Andi Gutmans
207814916d - Fix bug report by Andrei when using a method as a sort user function
- parameter in usort() like functions
2000-08-22 18:35:42 +00:00
Zeev Suraski
1d0f45ea6b Fix Win32 build 2000-08-20 22:19:58 +00:00
Sascha Schumann
9b9f9fa4dd _isnan seems to be supported on Win32, add an appropiate macro. 2000-08-20 08:31:34 +00:00
Sascha Schumann
9e6e64955f If available, use fpclassify for substituting zend_finite. 2000-08-20 07:12:48 +00:00
Sascha Schumann
6aada077a0 Including math.h before using macros defined there will work better :) 2000-08-20 06:09:07 +00:00
Sascha Schumann
1f84023b05 Add zend_isinf and zend_isnan. 2000-08-20 06:07:42 +00:00
Andrei Zmievski
0691afb08c One more fix to C compile. 2000-08-19 18:13:52 +00:00
Zeev Suraski
595ca6b588 Fix C build 2000-08-19 18:05:15 +00:00
Zeev Suraski
f8d74acd93 Fix eval() leakage in ZTS mode 2000-08-19 17:58:04 +00:00
Zeev Suraski
c34f41b7c5 Eliminate run-time leak with eval()'s 2000-08-19 17:50:42 +00:00
Zeev Suraski
79b0a56c51 Fix build with no memory_limit 2000-08-19 16:51:30 +00:00
Zeev Suraski
07b5d74022 Fix memory_limit 2000-08-19 16:35:02 +00:00
Andi Gutmans
c698e14635 - Beautify 2000-08-19 15:16:53 +00:00
Stanislav Malyshev
1f793fd06c Fix EMPTY_STRING macros 2000-08-17 08:48:16 +00:00
Zeev Suraski
7795aca4ca Fix warning issue (compile errors inside require()'d files were incorrectly supressed) 2000-08-15 16:44:40 +00:00
Zeev Suraski
636d126e16 - Fix leak and some logic 2000-08-14 20:16:27 +00:00
Andi Gutmans
e46ea8864c - This patch should hopefully fix situations where a constructor uses
- the $this pointer as a reference.
2000-08-14 19:17:26 +00:00
Stanislav Malyshev
9e750e64b9 Fix crash 2000-08-14 09:06:56 +00:00
Andi Gutmans
e1a3604103 - Unused results should be marked with EXT_TYPE_UNUSED and not IS_UNUSED 2000-08-14 04:10:02 +00:00
Stanislav Malyshev
5090b1e8d5 Fix zend_fiel_handle handling. Should fix URL include
and various opened_path inconsistencies.
2000-08-13 18:00:50 +00:00
Andi Gutmans
caa3b6c9b6 - Revert foreach() change which only allowed variables and array(...) 2000-08-13 04:19:44 +00:00
Andi Gutmans
2336c0148e - Only support variables and array(...) in foreach loops 2000-08-11 09:56:28 +00:00
Andi Gutmans
e5015ed581 @ Fix problem with nested foreach()'s (Andi, Zend Engine) 2000-08-10 22:08:02 +00:00
Andi Gutmans
a1adc81f30 @ Fix switch which only has a default rule (Andi, Zend Engine)
@ Change require_once() to use the same file list as include_once().
@ Patch includes making require() & include() to behave the same when it
@ comes to scoping. require() is now an include() which isn't allowed to fail.
@ require() caused too many memory reallocations which ended up being quite
@ slow for sites that required lots of files. (Andi & Zeev, Zend Engine)
- Fix switch() which only has default rule (bug #5879,
2000-08-10 20:42:57 +00:00
Zeev Suraski
7dcf456dd6 that too 2000-08-09 19:25:01 +00:00
Zeev Suraski
0855453e83 Update API number 2000-08-09 19:23:38 +00:00
Zeev Suraski
c06692e9ec The patch we promised - redesigned the compilation/execution API:
Advantages:
- Smaller memory footprint for the op arrays
- Slightly faster compilation times (due to saved erealloc() calls and faster zend_op
  initialization)
- include_once() & require_once() share the same file list
- Consistency between include() and require() - this mostly means that return()
  works inside require()'d files just as it does in include() files (it used to
  be meaningless in require()'d files, most of the time (see below))
- Made require() consistent with itself.  Before, if the argument was not a constant
  string, require() took the include() behavior (with return()).
- Removed lots of duplicate code.
Bottom line - require() and include() are very similar now;  require() is simply an include()
which isn't allowed to fail.  Due to the erealloc() calls for large op arrays, require()
didn't end up being any faster than include() in the Zend engine.
2000-08-09 19:22:35 +00:00
Andi Gutmans
50ddf9e3d5 - Use some more SEPARATE_ZVAL macros instead of replicated code. 2000-08-05 13:54:07 +00:00
Stanislav Malyshev
8b9ecac2dc Fix memory leak 2000-08-05 11:06:00 +00:00
Andi Gutmans
fcdc025d11 - Beautify code. Try and use more macros for splitting instead of
- replicating the code everywhere.
2000-08-04 08:11:54 +00:00
Andi Gutmans
5ae343b752 - Remove commented code 2000-08-02 17:51:42 +00:00
Zeev Suraski
735a0d148e Fix filename issues 2000-07-29 10:44:13 +00:00
Stanislav Malyshev
2c95b113bd Make define return false and issue E_NOTICE when trying to redefine constant
@- Make define return false and issue E_NOTICE when trying to redefine constant (Stas)
2000-07-28 09:44:46 +00:00
Andi Gutmans
290525fdcd Always store full filename as compiled file name 2000-07-27 15:36:54 +00:00
Zeev Suraski
a30cde3de5 Fix a possible issue with runtime inheritence under fairly rare circumstance
and optimize a tiny bit
2000-07-26 18:23:30 +00:00
Stanislav Malyshev
1373a16280 Add strncasecmp function
@ Added strncasecmp function (Andi)
2000-07-26 11:32:15 +00:00
Zeev Suraski
58e1dd2ee8 Forgot to link this function... 2000-07-18 20:32:39 +00:00
Zeev Suraski
a650dd8a19 This is probably the oldest bug in PHP :)
Luckily it's unlikely we're ever actually bitten by this bug.
2000-07-18 20:08:06 +00:00
Andi Gutmans
4066a197be - Beautify Zeev's patch a bit. 2000-07-16 22:33:42 +00:00
Zeev Suraski
808f8ed306 Implement parent::foo() 2000-07-16 16:40:21 +00:00
Zeev Suraski
b4266edb07 Add more extended_info calls 2000-07-15 15:41:20 +00:00
Zeev Suraski
55d313db99 Improve register_resource_ex() infrastructure 2000-07-14 20:00:24 +00:00
Thies C. Arntzen
7f4909d9f5 fix ZTS startup without filename (thanx purify!) 2000-07-12 16:37:46 +00:00
Thies C. Arntzen
372f71eb1a unset active_symbol_table on zend-shutdown. 2000-07-12 12:00:17 +00:00
Zeev Suraski
3513866627 Another persistent hash - disable apply protection 2000-07-11 14:47:34 +00:00
Zeev Suraski
1263932a0d Disable the hash_apply() protection on hashes that persist across requests - it's unsafe
because we may be aborted at any point
2000-07-11 14:27:31 +00:00
Stanislav Malyshev
148317f979 Fix a bug in passing second parameter of RECV_INIT with is_ref set 2000-07-11 13:23:48 +00:00
Andi Gutmans
f4e2a900d6 - Oops. Too early in the morning 2000-07-11 04:15:35 +00:00
Andi Gutmans
e95220e722 - Include iostream.h in C++. 2000-07-11 04:07:18 +00:00
Andi Gutmans
c1ed6ef9cc - Fix memory leak. 2000-07-09 20:21:20 +00:00
Andi Gutmans
40b31d7487 - Need to seperate if the hash isn't a reference 2000-07-09 17:12:37 +00:00
Andi Gutmans
1cce5ed178 - Add zend_ulong 2000-07-08 15:49:39 +00:00
Stanislav Malyshev
be59613ddf Remove C++ commennts. 2000-07-07 09:50:50 +00:00
Andi Gutmans
4eba5f1d39 - Remove code which has never been used (neither in PHP 3) 2000-07-06 23:31:19 +00:00
Andi Gutmans
80121ead56 - Make is_method_call() static and remove a couple of old lines 2000-07-06 23:28:05 +00:00
Andi Gutmans
58d1e0a2cc - Yet another fix... 2000-07-06 23:00:46 +00:00
Andi Gutmans
db8734c82f - One more... 2000-07-06 22:38:01 +00:00
Andi Gutmans
af5d38214b - One more fix for the latest patch 2000-07-06 22:29:06 +00:00
Andi Gutmans
2787a746f4 - One dumb bug in my latest patch 2000-07-06 22:21:24 +00:00
Andi Gutmans
5f893e68ff - Complex fix for solving a problem with objects & method calls.
- Previous version is tagged PRE_METHOD_CALL_SEPERATE_FIX_PATCH.
- I need to check this fix on a server so if it doesn't work I will revert
- it.
2000-07-06 22:08:22 +00:00
Andi Gutmans
45ca7ec17d - Fix problem with newlines not being recognized under certain conditions 2000-07-06 16:19:36 +00:00
Andi Gutmans
6d6d52551e - Fix bug #4120 2000-07-03 19:17:57 +00:00
Stanislav Malyshev
91130b6a00 Unblock SIGPROF signal when starting timer.
On Linux, this signal is blocked by default after first signal is run
2000-07-03 16:53:39 +00:00
Sascha Schumann
a61721741b Replace macros which begin with an underscore through an appropiately
named macro.
2000-07-03 00:55:36 +00:00
Sascha Schumann
b982307dd1 Change header protection macros to conform to standard.
Draft 3 of IEEE 1003.1 200x, "2.2 The Compilation Environment"

    All identifiers that begin with an underscore and either an uppercase
    letter or another underscore are always reserved for any use by the
    implementation.
2000-07-02 23:54:19 +00:00
Andi Gutmans
4f88e66167 - Take #2 with tab size 4 2000-07-02 16:06:45 +00:00
Andi Gutmans
e3c5f6e890 - Beautify parser a bit. It still could do with some more at some point 2000-07-02 16:00:00 +00:00
Andi Gutmans
b72a2738dc - Forgot ZEND_API 2000-07-02 15:39:54 +00:00
Zeev Suraski
b3b67b04b7 Add a messagebox style that's safe to use from an ISAPI filter 2000-06-30 12:55:00 +00:00
Zeev Suraski
fde2e61d54 error_reporting fix 2000-06-30 11:45:32 +00:00
Zeev Suraski
f34b9d41be Add $context argument to error handler 2000-06-29 15:07:59 +00:00
Zeev Suraski
a31dc47ae4 Improve error handling code 2000-06-28 22:08:47 +00:00
Zeev Suraski
100196face Be HTML friendly 2000-06-28 21:31:50 +00:00
Andi Gutmans
3860254631 version update 2000-06-28 18:32:13 +00:00
Zeev Suraski
8e45536cf4 Make it possible to detect whether we're thread safe or not from PHP scripts and the php.ini
file
2000-06-26 18:15:33 +00:00
Andi Gutmans
1a22c1eb86 - Add another "\n" at the end of error messages. 2000-06-26 15:37:28 +00:00
Zeev Suraski
202b8100ab Make max_execution_time work properly when set to 0 under Win32 (disable) 2000-06-26 15:17:36 +00:00
Andi Gutmans
f311ab1608 - I wrote a long msg but the commit didn't go through.
- So here is the short version:
- a) Start moving to binary opens in Windows
- b) Give checkuid_mode() a small face lift including the fopen-wrappers.c
- The mode to this function should at least be a #define but that is for
- another day. Anyway this whole stuff should be given more face lifts in
- the future.
2000-06-25 17:05:22 +00:00
Zeev Suraski
b896825e8f Nuke a warning 2000-06-24 22:11:11 +00:00
Andi Gutmans
684dca9aca - Not returning a value anymore 2000-06-23 00:11:54 +00:00
Andi Gutmans
fd7dc3024c - Don't need SUCCESS/FAILURE anymore 2000-06-23 00:07:05 +00:00
Andi Gutmans
947e17b1da - Add license 2000-06-23 00:04:53 +00:00
Andi Gutmans
56adbffdbf - Commit static allocator structure which we might use in an upcoming Zend
- change
2000-06-23 00:04:05 +00:00
Andi Gutmans
63526e633e - Fix asp_tags. 2000-06-22 23:00:01 +00:00
Andi Gutmans
e16710f1b5 - Oops I miss-wrote that field 2000-06-22 18:50:55 +00:00
Andi Gutmans
a536df5327 - Change API version and make the error messages more meaningful. 2000-06-22 18:47:39 +00:00
Andi Gutmans
93e9520314 - Change cache size and only initialize part of it. 2000-06-22 18:33:09 +00:00
Stanislav Malyshev
bb57053f76 Cached-freed memory blocks should not be in "occupied" list 2000-06-22 17:51:14 +00:00
Stanislav Malyshev
7f87a319aa Make cache counters to be unsigned int
Start collecting statistics after cache pre-fill
2000-06-22 09:17:38 +00:00
Sascha Schumann
15925864b2 fp_except check for FreeBSD 1.0-2.2.5 2000-06-18 16:51:42 +00:00
Sascha Schumann
0404a02430 Welcome zend_finite(n).
This chooses the best combination of what is available:

finite, isfinite, isinf, isnan
2000-06-18 16:33:15 +00:00
Stanislav Malyshev
536221be39 Make error callback be publicly accessible 2000-06-18 16:02:32 +00:00
Andi Gutmans
4a6869c98e - Better FreeBSD fix. Does fp_except_t exist on 3.4? 2000-06-18 15:44:23 +00:00
Andi Gutmans
53a5eccf66 - I don't know how this happened. I tested the bloody thing and I remember
- copy&pasting from code which used ~.
2000-06-18 04:22:12 +00:00
Zeev Suraski
34c2b0a07c - Add restore_error_handler()
error_handler's are now stored in a stack
2000-06-17 18:04:58 +00:00
Zeev Suraski
3cda6a750e Allow the symbol_table to be passed to call_user_function_ex() 2000-06-17 16:50:38 +00:00
Zeev Suraski
7957b20b48 Fix filenames and line numbers in ZTS mode 2000-06-17 14:12:58 +00:00
Zeev Suraski
38cdb8e7b7 Avoid crashing with recursive applies - limit apply nest level to 3 (I'm not aware of a place
in which applying recursively on the same hash makes sense with more than one nest level, but
3 should be enough)
2000-06-17 14:11:57 +00:00
Zeev Suraski
84eb48f0a1 Ok, this time here's some real Win32 system programming :)
Redesigned the timeout system using a single timeout thread and a single window,
and used a much quicker check.
2000-06-16 14:27:28 +00:00
Andi Gutmans
ae11748038 Fix UNIX build 2000-06-16 02:49:21 +00:00
Zeev Suraski
a6d9b5ed18 Macro it up the right way 2000-06-16 02:48:35 +00:00
Zeev Suraski
b791918443 Macro this up, so it can be moved to other places 2000-06-16 02:47:00 +00:00
Zeev Suraski
ef0bd3d102 - Move timeout code to Zend
- Implement timeouts in Win32
2000-06-16 01:54:56 +00:00
Zeev Suraski
8b794bb1dd Fix non thread-safe mode - asp_tags/short_tags etc weren't getting initialized properly 2000-06-15 19:18:57 +00:00
Andi Gutmans
e1705c0810 *** empty log message *** 2000-06-15 19:09:51 +00:00
Andi Gutmans
447bf163ef - Support multiple arguments to unset() 2000-06-15 18:48:33 +00:00
Thies C. Arntzen
3ad9d62949 ups. 2000-06-15 18:23:18 +00:00
Thies C. Arntzen
565400780b changed return type of ZEND_VERIFY_RESOURCE from FALSE to NULL 2000-06-15 18:15:51 +00:00
Sascha Schumann
7565347ba0 Move some stuff to zend_operators.h which is required by the
moved inline functions.
2000-06-14 19:55:32 +00:00
Andi Gutmans
988435cf04 - More correct way of doing bit mask 2000-06-14 19:10:30 +00:00
Sascha Schumann
17fe680117 Only replaced C0X and C0x, but not c0x.. 2000-06-14 07:08:08 +00:00
Sascha Schumann
35f43ad274 Rename C0x-inline to C9x-inline, and frame preprocessor directives in
zend_gcc_inline.c with #ifndef C9X_INLINE_SEMANTICS..#endif.
2000-06-14 07:06:33 +00:00
Andi Gutmans
239d30bbee - Make Win32 build 2000-06-14 04:10:34 +00:00
Andi Gutmans
727398b2d4 Add to the API 2000-06-13 19:01:22 +00:00
Sascha Schumann
df74f1dfab Add optional support for C0x inline semantics.
These are enabled by specifying `--enable-c0x-inline' on the command
line. We might add an autoconf check for this particular feature
later.
2000-06-13 17:58:33 +00:00
Sascha Schumann
13692ff313 Add llist_apply_func_t and make prototypes use the typedefs. 2000-06-13 09:18:06 +00:00
Zeev Suraski
6b8059afe9 Make Egon happy :) 2000-06-12 22:03:53 +00:00
Zeev Suraski
e962769fee Return the previous error handler from set_error_handler() 2000-06-12 20:31:02 +00:00
Zeev Suraski
fce92e3ca2 Avoid using E_CORE_* errorlevels in any place which is not in the global startup sequence 2000-06-12 20:22:17 +00:00
Zeev Suraski
968d2c5b33 Get rid of <?php_track_vars?> 2000-06-12 16:07:15 +00:00
Andi Gutmans
1f5ee72e2d - Solve floating point precision crash on FreeBSD. 2000-06-11 18:07:14 +00:00
Andi Gutmans
5928970d22 - Fixes crash problem on FreeBSD when losing precision. Need to still see
- how to detect we're on FreeBSD
2000-06-11 17:45:19 +00:00
Zeev Suraski
07a8327a0e Fix zend_get_parameters() 2000-06-11 16:19:31 +00:00
Andi Gutmans
390dccacac - Fixed problem when using uninitialized values in comparisons with strings.
-  They behave as empty strings again just like in PHP 3.
2000-06-10 14:39:06 +00:00
Zeev Suraski
53bdf0b5cc I can't think of a reason of why it should just be a notice... Make it a warning, like it was in PHP 3. 2000-06-10 01:12:12 +00:00
Zeev Suraski
a29791411b Fix bug #4768 2000-06-10 01:08:55 +00:00
Andrei Zmievski
b51aa1f36f Made an alias for hash apply with arguments. 2000-06-09 20:18:16 +00:00
Andi Gutmans
ae19180641 - Forgot to remove the FIXME 2000-06-09 17:52:09 +00:00
Andi Gutmans
717acfe9c5 - Make the memory limit accurate 2000-06-09 17:51:37 +00:00
Andi Gutmans
605b1aa394 - Fix cache initialization 2000-06-09 16:08:30 +00:00
Andi Gutmans
9fb095b50e - Allocate and cache in 8 byte blocks. Most allocators anyway use 8 byte
- blocks. This should help fragmentation and cache hits.
- The old tree is tagged as PRE_EIGHT_BYTE_ALLOC_PATCH
2000-06-09 15:54:14 +00:00
Zeev Suraski
03e842ccb8 Fix bug #4933 2000-06-09 15:42:49 +00:00
Zeev Suraski
fddf89aff7 Fixed bug #4819 2000-06-09 15:40:37 +00:00
Andi Gutmans
6bcc8ff0c7 - Time to change it. We changed register_internal_class() ->
- zend_register_internal_class()
2000-06-09 14:41:33 +00:00
Andi Gutmans
eb0e694665 - Andrei, this is for you!
- Add zend_register_internal_class_ex() which allows you to specify a
- parent to inherit from. You can either specify the parent directly or via
- its name.
2000-06-09 14:40:14 +00:00
Andi Gutmans
99b4051eca - Typo 2000-06-09 13:36:36 +00:00
Andi Gutmans
edd7025645 - Remove old obsolete code. 2000-06-09 13:08:40 +00:00
Andi Gutmans
a712da5cee - Make unset consistent with the way array offsets work 2000-06-09 13:07:26 +00:00
Stanislav Malyshev
e346a6b538 Handle unset with empty key 2000-06-09 10:59:21 +00:00
Andi Gutmans
6ce07a85e4 - Change register_internal_class to zend_register_internal_class for
- consistency.
- Andrei: I'm still thinking about the _ex you want me to implement
2000-06-09 08:41:59 +00:00
Sascha Schumann
b4e48b952e Clean up acconfig.h 2000-06-08 06:12:26 +00:00
Sascha Schumann
039551788b Add a couple of casts 2000-06-08 06:07:38 +00:00
Zeev Suraski
98bf43f229 Enable asp_tags/short_tags/allow_call_time_pass_by_reference to work on a per-directory
basis as well
2000-06-06 19:13:54 +00:00
Sascha Schumann
458352954d Add newline at the end of the file (breaks at least SCO and Tru64 C compiler). 2000-06-06 02:47:43 +00:00
Andi Gutmans
d8d6ff3c4c - Revert internazionalization fix. 2000-06-05 15:37:30 +00:00
Andi Gutmans
f8983e467f - Complete change to create_function() 2000-06-05 06:52:02 +00:00
Zeev Suraski
1c36e3472f Change shutdown order to sort out a crash when assigning a resource id to a static. 2000-06-04 22:09:16 +00:00
Zeev Suraski
bfac4633a5 - Support unordered hash comparisons
- Make == perform an unordered comparison with arrays/objects, and === perform an ordered comparison
2000-06-04 21:59:49 +00:00
Zeev Suraski
b7a8baf1bb Rename lambda() 2000-06-04 21:30:56 +00:00
Zeev Suraski
dae76aa1b5 Support comparisons of arrays (with arrays) and objects (with objects) 2000-06-03 10:34:19 +00:00
Andi Gutmans
01d478ba56 - Change #if to #ifdef. 2000-06-03 07:34:20 +00:00
Zeev Suraski
2ffe85ddac Don't take chances with new include files 2000-06-03 04:14:31 +00:00
Zeev Suraski
5a35a6bafc Improve call_user_function() to support array($obj, $method) 2000-06-03 03:28:08 +00:00
Zeev Suraski
d4b160c0d6 - Export normalize_bool
- This global/static syntax fix brought us back to the 4 documented conflicts
2000-06-03 03:05:01 +00:00
Zeev Suraski
e374f6fd31 Fix a lambda() bug 2000-06-03 02:02:09 +00:00
Zeev Suraski
70345bd222 Add missing { 2000-06-03 01:50:15 +00:00
Zeev Suraski
0b7a9cea88 - Fix Win32 compilation (Use winsock2.h from now on)
- Add lambda() support
2000-06-03 01:49:49 +00:00
Andi Gutmans
1b993610c1 - global/static require a trailing ';' 2000-06-02 16:50:19 +00:00
Zeev Suraski
746f01802d Update error code 2000-06-02 12:36:54 +00:00
Zeev Suraski
8a8c3eafc8 Nuke the old error code, use the new one 2000-06-02 12:21:49 +00:00
Zeev Suraski
898c8ead87 IS_BC isn't really being used, but still... 2000-05-31 19:08:18 +00:00
Zeev Suraski
13b67621cf Fix a bug in static initializers/default values/class member variables that contained
array values
2000-05-31 19:07:09 +00:00
Zeev Suraski
bc7abb3300 Allow disabling of functions for security reasons 2000-05-29 17:16:52 +00:00
Andi Gutmans
015884dda5 - Use pointer arithmetic to speed up the function a bit 2000-05-28 18:59:40 +00:00
Andi Gutmans
0ebb7335c9 - This should have been done for 4.0.0.
- Default build is without debug now. Use --enable-debug if you want a
- debug build which includes leak/memory overwrite etc. detection
2000-05-28 17:39:30 +00:00
Andi Gutmans
b5447a4d7a - Fixed scanning decimal numbers in internationalized environments. They should
- always be in standard US format e.g. 23.3
2000-05-26 07:49:56 +00:00
Zeev Suraski
385d1aa664 Fix a crash bug in certain situations of class redeclarations 2000-05-25 16:26:22 +00:00
Thies C. Arntzen
9b916e6a48 rename hastable -> _hashtable to avoid clashes 2000-05-24 09:52:57 +00:00
Thies C. Arntzen
78a1fdfcaa add rdbuf() to our own istdiostream implementation, allowing C++ compile
using SUN and SGI native compilers. (by Jayakumar Muthukumarasamy <jk@kasenna.com>)
2000-05-24 09:44:02 +00:00
Zeev Suraski
0302ee5992 - Remove ugly Ltd. 2000-05-22 16:55:56 +00:00
Sam Ruby
c5cf13eb29 Windows build failure 2000-05-21 19:26:50 +00:00
Andi Gutmans
a8b0d9609c - Fix Apache php source highlighting mode. It was crashing due to the
- module shutdown functions being called when the startup functions weren't
- being called.
2000-05-21 17:41:16 +00:00
Andi Gutmans
cc590f49f2 - Get ready for release 2000-05-21 16:29:38 +00:00
Zeev Suraski
c80906e4cc Open these up for the API 2000-05-19 09:32:33 +00:00
Zeev Suraski
957327e8bc Do it in thread unsafe mode for now. 2000-05-18 14:51:19 +00:00
Sascha Schumann
86c03cceb0 Kill warnings 2000-05-18 12:07:15 +00:00
Andi Gutmans
a786fc4ab7 - Do this someplace else. 2000-05-18 11:25:03 +00:00
Andi Gutmans
715ff77344 - Fix include() when used on resources (shouldn't work but shouldn't crash
either).
2000-05-18 10:21:24 +00:00
Andrei Zmievski
3df1e68fe9 Update for sort functions - user can now specify sort type. 2000-05-18 01:53:41 +00:00
Andi Gutmans
0aefa3e037 - Add support for string_compare_function() and number_compare_function().
UNTESTED!
2000-05-17 18:55:22 +00:00
Zeev Suraski
760a17729e Normalize results of compare_function() 2000-05-17 17:08:25 +00:00
Zeev Suraski
5fcb963f09 Fix crash if %> is encountered in HTML while ASP-tags are disabled 2000-05-17 15:50:30 +00:00
Andi Gutmans
03c844305f Fix order 2000-05-17 15:24:49 +00:00
Sascha Schumann
8669a15755 Add missing prototype 2000-05-17 00:35:08 +00:00
Zeev Suraski
ac0e07ecda - Small optimization. Filling up the Cache helps performance. 2000-05-16 15:42:16 +00:00
Sascha Schumann
afedd22f19 Fix parallel makes on BSD 2000-05-12 09:05:05 +00:00
Zeev Suraski
0d6a794d85 Get rid of chval - it's really not necessary and seems to be confusing people 2000-05-11 19:18:11 +00:00
Zeev Suraski
9a751419cf Refined fix 2000-05-11 18:49:45 +00:00
Zeev Suraski
cb35b7e4ed Fix a memory corruption bug with by-ref function arguments 2000-05-11 18:31:21 +00:00
Andi Gutmans
33f8ab3800 - Bump up Zend extension version number 2000-05-10 12:28:13 +00:00
Thies C. Arntzen
354272315a make waning readable 2000-05-10 09:40:46 +00:00
Andi Gutmans
30da5fd8fc Thoroughly initialize IS_UNUSED for proper cleanup 2000-05-08 21:46:48 +00:00
Andi Gutmans
63b7056f9a - Change Zend Engine version number 2000-05-08 16:33:52 +00:00
Andi Gutmans
a9ec11476c - Return real size allocated 2000-05-08 16:18:20 +00:00
Zeev Suraski
19de3be052 Make zend_binary_strcasecmp compile again 2000-05-08 10:24:26 +00:00
Sascha Schumann
36c1a9a39d Make strcasecmp() act correctly WRT SUS II.
Patch by: hholzgra@php.net
PR: #3556
2000-05-08 10:05:19 +00:00
Andi Gutmans
dc704e26fe - Make zend_eval_string() return SUCCESS/FAILURE 2000-05-06 18:49:46 +00:00
Andi Gutmans
686bd5724b - Make $obj->test = 5; work again (assigning to uninitialized objects) 2000-05-06 18:40:48 +00:00
Sascha Schumann
788feca4ae Linking directly against libc might result in unexpected behaviour.
We check for dlopen in libdl first, and check then whether dlopen exists.
2000-05-05 12:17:41 +00:00
Andi Gutmans
69eb908f06 - Change fetch_type to be zend_uint 2000-05-03 18:01:35 +00:00
Andi Gutmans
f2471fd50a - Change the place CAST uses for the op_type 2000-05-03 17:56:44 +00:00
Zeev Suraski
8ca13c97c2 Change zend_hash_get_current_key_ex() to also return the string length 2000-05-02 17:52:31 +00:00
Sascha Schumann
99e2820bed Fix segfault occuring when a temporary module was unloaded and if this
module did not have a request shutdown function.
2000-05-02 07:04:59 +00:00
Sascha Schumann
0b6d923bae Add ZEND_GET_MODULE(name). This is a short-cut for the common
get_module function.
2000-05-02 01:33:18 +00:00
Sascha Schumann
7a2d83acdc Source file does not end with a newline. Some old compilers don't like that. 2000-05-01 22:36:10 +00:00
Andrei Zmievski
164e4e50b9 Added a way to get all declared classes. 2000-05-01 16:22:00 +00:00
Sascha Schumann
1743bb0346 Fix dependency 2000-05-01 05:46:02 +00:00
Zeev Suraski
5ef03c4ff8 Pass the op_array to the ctor/dtor, instead of just the resource 2000-04-29 11:55:20 +00:00
Zeev Suraski
96c648c9f7 crash fix 2000-04-29 10:34:03 +00:00
Zeev Suraski
8aac6e7d3d - Add zend_llist_apply_with_arguments()
- Add a message handler to the extensions
2000-04-29 10:20:40 +00:00
Zeev Suraski
42d15298d7 Fix possible bug with extension dtors being called without the ctors being called first 2000-04-29 02:56:44 +00:00
Zeev Suraski
e0a48fe623 Beautify 2000-04-29 01:30:17 +00:00
Zeev Suraski
ddbcbb666d Fix a bug in the resource dispencer 2000-04-28 15:52:02 +00:00
Zeev Suraski
ddc36fb776 Make convert_to_string() allocations traceable 2000-04-28 13:31:51 +00:00
Zeev Suraski
974671eced *** empty log message *** 2000-04-27 21:48:47 +00:00
Zeev Suraski
4b6594c5e9 Change to using the #define's 2000-04-27 21:26:17 +00:00
Zeev Suraski
b80b8381d4 More error handling work (still completely disabled) 2000-04-27 19:38:11 +00:00
Zeev Suraski
fa7c418b79 Fix - forgot to split away if refcount>1 2000-04-26 22:10:06 +00:00
Zeev Suraski
94a724f686 Fix bug 2000-04-25 14:20:52 +00:00
Zeev Suraski
a20e90abb3 We'll need two... 2000-04-25 10:44:50 +00:00
Zeev Suraski
0a14a32c78 Add useful macros 2000-04-25 10:10:44 +00:00
Andi Gutmans
382653aebc - Fix persistence of llist 2000-04-25 09:45:58 +00:00
Zeev Suraski
e16c38b3f5 - Forgot to keep the ':' in the class_name 2000-04-24 22:13:08 +00:00
Zeev Suraski
dc93a62cbb Correct fix 2000-04-24 16:04:13 +00:00
Thies C. Arntzen
9786e4450a MODULE_TEMPORARY should get a call to RSHUTDOWN as well! 2000-04-24 15:49:23 +00:00
Thies C. Arntzen
f4c9d96f2e fixed shutdown crash if MSHUTDOWN tries to php_error() something. 2000-04-24 12:47:07 +00:00
Thies C. Arntzen
80486c95be export zval_add-ref and zvale_del_ref 2000-04-21 14:45:10 +00:00
Zeev Suraski
9e10ac5b1d - Change macro names from Z to Z_ 2000-04-20 14:55:16 +00:00
Zeev Suraski
9022a4bdbd Add some macros for nicer zval handling 2000-04-20 14:32:39 +00:00
Andrei Zmievski
bbe0df125e Do proper ieeefp.h check. 2000-04-20 13:49:07 +00:00
Thies C. Arntzen
c1c8422dbf compile before commit! compile before commit! compile before commit! 2000-04-20 07:24:56 +00:00
Thies C. Arntzen
2b3a575ab3 revert andrei's path (i can't compile anymore on linux)
we're always using #ifndef HAVE_BLA instead of if !HAVE_BLA and if we need ieeefp.h for some weird platform (which one is that?) we need an autoconf check for it.
2000-04-20 07:23:55 +00:00
Andrei Zmievski
fe1147b01a Include proper files for finite. 2000-04-19 15:55:52 +00:00
Zeev Suraski
67f6974373 Initial support for trapping errors (not complete and disabled; will be enabled only
post-PHP 4.0.0)
2000-04-19 15:08:06 +00:00
Zeev Suraski
a51d3058f7 - Renamed get_used_files() to get_required_files() for consistency
- Documented some functions
- Added user-level warning messages
- Added user_error()
2000-04-19 13:15:13 +00:00
Andi Gutmans
207167c54b - Export pass_include() for Windows 2000-04-19 08:17:34 +00:00
Zeev Suraski
d191777b3f Add convert_to_writable_*_ex() macros (unused at this time) 2000-04-18 22:23:28 +00:00
Andi Gutmans
4f15966d1b - Fix order of JMPZNZ arguments 2000-04-17 17:16:47 +00:00
Thies C. Arntzen
44e0d27685 ups, finite is already a macro on Win32 2000-04-17 13:25:16 +00:00
Thies C. Arntzen
8367275477 HPUX11 only has isfinite() 2000-04-17 10:39:13 +00:00
Andi Gutmans
5097f64256 - Fix leak in require_once() 2000-04-15 17:02:42 +00:00
Thies C. Arntzen
a1608562ae fixes compile on platforms without dl() support.
#i think zend_register_extension should be declared static
2000-04-15 15:32:32 +00:00
Zeev Suraski
603d5ff5d8 Fix ZTS 2000-04-15 14:17:18 +00:00
Andi Gutmans
938598b8d2 @ "use" is not yet supported; instead use include_once() or require_once()
@  for the time being (Andi, Zend library)
2000-04-15 13:56:09 +00:00
Zeev Suraski
4cb9a483d2 - Clean up resource lists namespace
- Prepare extended resource list destructor APIs (currently unused)
2000-04-15 13:02:22 +00:00
Zeev Suraski
c6c261e922 Fix a memory leak when using assign-op bitwise operators on strings 2000-04-13 15:56:02 +00:00
Zeev Suraski
021631d5eb *** empty log message *** 2000-04-12 00:50:21 +00:00
Andi Gutmans
804861c5ac - Fix memory leak 2000-04-11 18:16:58 +00:00
Zeev Suraski
d17e3d6b18 Fix warnings 2000-04-11 17:38:19 +00:00
Zeev Suraski
97c9603b02 Fix fd leak in include_once() 2000-04-11 17:30:37 +00:00
Andi Gutmans
73c6fbff7e - 2000-04-10 21:12:33 +00:00
Zeev Suraski
e663d856b3 Fix object overloading support 2000-04-10 20:21:13 +00:00
Andi Gutmans
c5d5c69bfe - Add warnings 2000-04-10 19:54:45 +00:00
Andi Gutmans
cc0d6ac19c - Two more places needed changing 2000-04-10 18:24:38 +00:00
Zeev Suraski
232b90454f Clean up last/size definitions 2000-04-10 18:02:40 +00:00
Zeev Suraski
4cdcf638ce *** empty log message *** 2000-04-09 16:08:10 +00:00
Zeev Suraski
1cf5c33627 Thoroughly fix include_once() 2000-04-07 22:03:46 +00:00
Zeev Suraski
ed6e734047 Fix include_once() 2000-04-07 21:16:19 +00:00
Andi Gutmans
56fc855afd *** empty log message *** 2000-04-06 17:39:52 +00:00
Andi Gutmans
a9159c2eec Initial preparation for OO overloading patch 2000-04-06 16:34:55 +00:00
Andi Gutmans
4ee5cad9f9 - Bump up version number 2000-04-05 21:06:50 +00:00
Andi Gutmans
da3db3d864 - FIx JMPZNZ 2000-04-05 20:55:51 +00:00
Zeev Suraski
f44afc6e99 Fix the problem with dl()'d modules not freeing their resources properly 2000-04-03 05:26:41 +00:00
Zeev Suraski
131d9cb2dc *** empty log message *** 2000-04-01 16:23:13 +00:00
Zeev Suraski
983cc700a9 Have a standard way of exporting symbols 2000-04-01 15:16:11 +00:00
Zeev Suraski
9e2fb7bb41 Use int 2000-04-01 14:36:41 +00:00
Zeev Suraski
0d21940d54 Generalize some common thread-safety stuff 2000-04-01 14:15:20 +00:00
Zeev Suraski
ef426d467c Have a standard entry for the globals id 2000-04-01 13:20:51 +00:00
Zeev Suraski
523f3cce5f The previous fix ended up being broken, this one should do it 2000-03-31 15:17:43 +00:00
Andi Gutmans
24302e89e5 - Fix bug 2000-03-31 00:05:41 +00:00
Zeev Suraski
5f6ad55543 Fix zend_register_extension() 2000-03-30 18:06:41 +00:00
Andi Gutmans
0ccbd9d9ec - Bump up API number after Lars' change 2000-03-30 05:04:39 +00:00
Sascha Schumann
41eef61c69 Give another hint to BSD makes 2000-03-30 04:11:31 +00:00
Sascha Schumann
c7040b71bc Specifically mention $(srcdir), so that OpenBSD's make gets it 2000-03-30 00:59:47 +00:00
Zeev Suraski
b7cd2bfa8e - Make the argument order for the stack applies more consistent with other Zend
data structures
- Fix a possible corruption problem due to switch() C-level optimization
2000-03-29 22:28:04 +00:00
Torben Wilson
521c8af6a4 Added !== (is not identical) operator. 2000-03-29 22:05:19 +00:00
Zeev Suraski
fcf0afce17 *** empty log message *** 2000-03-29 19:26:34 +00:00
Andi Gutmans
e9d126a7d3 - Make sure zend_API.h has Zend'ish versions of the ZEND macros so that
Zend'ish modules don't need to mix PHP & Zend notation.
2000-03-29 17:13:16 +00:00
Zeev Suraski
a65971221f The checks for func_num_args() and friends were broken - fixed 2000-03-28 17:34:21 +00:00
Sam Ruby
4ce6480745 Remove debug libraries from debug build 2000-03-27 01:00:21 +00:00
Andi Gutmans
7fd92b524d - Stop zend_func_args() and co. from crashing 2000-03-26 18:40:24 +00:00
Andi Gutmans
9df63e183e - Didn't see Thies' commit message although I can't really see how it would
make a difference
2000-03-26 16:28:37 +00:00
Andi Gutmans
b763b25c96 - Include Andrea's fix for alloca.h 2000-03-26 16:00:35 +00:00
Thies C. Arntzen
7ec4e5e21b <alloca.h> needs to be included before we define macros calling alloca()
atleast using SGI's cc - should not harm other platforms (i hope)
2000-03-26 14:46:25 +00:00
Thies C. Arntzen
70003624fa fix cast 2000-03-26 14:25:20 +00:00
Andi Gutmans
2572b088d0 *** empty log message *** 2000-03-25 19:23:16 +00:00
Zeev Suraski
5dba477467 - Some header dependencies cleanup
- Generalize zval_print() and zval_print_r()
2000-03-25 19:10:07 +00:00
Sam Ruby
1e4e9b34e2 RTLD_NOW => RTLD_LAZY|RTLD_GLOBAL 2000-03-25 15:40:08 +00:00
Zeev Suraski
7e576d36e8 Update dsp's 2000-03-25 15:35:35 +00:00
Zeev Suraski
5bdd53972f - Fixed a crash when sending a non-variable expression to a runtime-bound function
that expected a reference.
2000-03-24 23:51:34 +00:00
Andi Gutmans
6db18997bb - Nuke hash_*_ptr functions 2000-03-24 11:12:30 +00:00
Andrei Zmievski
0eaa79e4eb Use WRONG_PARAM_COUNT. 2000-03-23 18:40:55 +00:00
Zeev Suraski
7bd5794a07 - Make it compile 2000-03-23 18:31:18 +00:00
Andrei Zmievski
40e99c5e9f Added get_class_methods(). 2000-03-23 17:47:28 +00:00
Andi Gutmans
326f69f54e - Change Zend version as API has changed 2000-03-22 19:07:47 +00:00
Zeev Suraski
2e68fc59e3 - Wrong fix 2000-03-22 18:43:25 +00:00
Zeev Suraski
4d68c944d9 - Only free when result != op1 2000-03-22 18:36:02 +00:00
Andi Gutmans
13e7413182 - Change zend_startup to accept a flag for starting builtin functions 2000-03-21 19:01:19 +00:00
Andi Gutmans
bf18f87644 - Move #defines 2000-03-21 18:48:28 +00:00
Thies C. Arntzen
3b88c31bfc kill warning 2000-03-19 10:50:48 +00:00
Andi Gutmans
8b8077709e - Fix compile problem on FreeBSD 2000-03-18 16:11:42 +00:00
Andi Gutmans
512ff32f87 - No reason for refcount to be signed and move to zend_* typedefs 2000-03-18 16:00:30 +00:00
Thies C. Arntzen
3092c10e93 renamed _string_value_() to __string_value(). 2000-03-18 14:55:29 +00:00
Zeev Suraski
caf9049ae1 The third argument to define() wasn't working right, fixed 2000-03-18 14:45:29 +00:00
Zeev Suraski
0b8ea28832 false wouldn't automaticaly switch to an array type, which resulted in an
incompatibility with PHP 3.  Fixed.
2000-03-18 14:28:03 +00:00
Thies C. Arntzen
a4bf381557 renamed "to_string" -> "_string_value_" 2000-03-16 02:09:47 +00:00
Zeev Suraski
15dd8e61a2 - Fix newly introduced problem reported by Sam Ruby 2000-03-15 17:32:29 +00:00
Andrei Zmievski
ee286febe7 Make zend_hash_move_forward()/zenv_hash_move_backwards() a little smarter. 2000-03-15 16:25:59 +00:00
Zeev Suraski
f30765e1a0 - Fix warning (I thought I fixed this one before) 2000-03-15 16:18:21 +00:00
Andrei Zmievski
26eaf668e7 Implemented external list traversing. 2000-03-14 21:20:38 +00:00
Andi Gutmans
bc8e138250 - Allow array(1,2,3,) i.e. with trailing comma. You can only have one
trailing comma.
2000-03-14 15:37:15 +00:00
Zeev Suraski
84569c08fc - 2000-03-13 18:01:43 +00:00
Zeev Suraski
fe37f4bca9 - Spare a byte :) 2000-03-13 17:59:30 +00:00
Andi Gutmans
61379fe0c3 - Another zend_uchar 2000-03-13 15:59:24 +00:00
Andi Gutmans
7fc5c94478 *** empty log message *** 2000-03-13 15:49:47 +00:00
Andi Gutmans
e92f6f15cb - define zend_uint and zend_uchar and use them in a few places 2000-03-13 15:43:40 +00:00
Andrei Zmievski
a32c54bdbb Introduced a way to traverse hashes through external pointers. 2000-03-13 15:25:18 +00:00
Andi Gutmans
712ffd4c14 - Change type from int -> char 2000-03-13 15:11:07 +00:00
Zeev Suraski
ea033715a9 - Fix filename/lineno initialization for do_return 2000-03-13 14:15:23 +00:00
Zeev Suraski
05cf4423b9 - 2000-03-12 18:08:46 +00:00
Andi Gutmans
51c10e49dd - Remove inline from functions which are pretty large and besides eating up
memory in compile time probably doesn't boost performance.
2000-03-11 01:13:10 +00:00
Andi Gutmans
88c98d3e3f - Seems to be a problem here with the return value not being set 2000-03-10 21:22:48 +00:00
Andi Gutmans
5951b166c8 - Quick way of supporting include_once().
Good enough for RC1.
2000-03-10 16:36:30 +00:00
Andi Gutmans
b5de395367 - Support require_once(). 2000-03-10 16:04:16 +00:00
Andi Gutmans
9cc704421a - Cleanup old IMPORT stuff 2000-03-10 15:05:00 +00:00
Andi Gutmans
d609112c0e - Nuke import, add include_once and include_require scanner/parser rules.
Hope to nuke use too :)
2000-03-10 15:01:21 +00:00
Andi Gutmans
cf89b8db5a - That broke the Win32 build 2000-03-10 12:26:59 +00:00
Andi Gutmans
29ed30f77c - Fix a bug and define an API_NO for the ZEND_MODULE_API 2000-03-10 10:14:05 +00:00
Andi Gutmans
ab5ca792e4 - zend_config.h is enough 2000-03-10 08:36:04 +00:00
Andi Gutmans
3bd9e02380 - Save ZEND_DEBUG, ZTS, ZEND_API information 2000-03-10 08:28:54 +00:00
Andi Gutmans
5b570ecc01 - Fix bug in syntax highlighter 2000-03-09 16:02:05 +00:00
Stig S. Bakken
b6bc7dcd10 added GINIT_FUNC_ARGS and GINIT_FUNC_ARGS_PASSTHRU 2000-03-06 20:13:04 +00:00
Zeev Suraski
ca737cc01f - Bump up Zend's API version 2000-03-06 19:25:08 +00:00
Stig S. Bakken
4562f7b6d7 Added ZEND_MODULE_INFO_FUNC_ARGS_PASSTHRU. 2000-03-06 18:46:10 +00:00
Andi Gutmans
31c9ad1831 - Fix memory leak 2000-03-06 17:13:38 +00:00
Andi Gutmans
6ef9f9fe9c - Missed one 2000-03-06 15:58:50 +00:00
Sam Ruby
fc173b6ace Unresolved externs 2000-03-06 10:46:40 +00:00
Zeev Suraski
5e55e47f7f It's official now... 2000-03-06 05:26:39 +00:00
Zeev Suraski
56251a7239 Wrap some commonly unused callbacks 2000-03-05 19:50:10 +00:00
Zeev Suraski
99d782cf60 The default return value from include() and eval() changed from 1 to 0
unintentionally after the old return-reference patches - fixed
2000-03-04 03:12:17 +00:00
Sam Ruby
906b922051 Fix Win32 build breakage 2000-03-02 02:39:21 +00:00
Andi Gutmans
4dd71d4cfe - Upgrade to year 2000 2000-03-01 17:24:43 +00:00
Andi Gutmans
110b670d44 - Fix typos 2000-03-01 17:10:45 +00:00
Thies C. Arntzen
4e5acab610 now 2000-03-01 13:59:51 +00:00
Egon Schmid
68ab1d3d07 Fixed some protos. 2000-02-27 18:41:19 +00:00
Sam Ruby
f1d0753f71 compilation error - Win32 2000-02-26 21:12:44 +00:00
Andrei Zmievski
685fd42965 Added get_class_vars() and get_object_vars() functions. 2000-02-26 17:54:00 +00:00
Andrei Zmievski
e6146d6bf3 Fix typo. 2000-02-26 16:21:29 +00:00
Zeev Suraski
80782eff1f Fix comparisons of "inf"=="inf" and "-inf"=="-inf"
@- Comparing the string "inf" with "inf" returned false - fixed (Zeev)
2000-02-26 04:07:03 +00:00
Zeev Suraski
33a564c971 Use the fast cache here too 2000-02-25 17:55:33 +00:00
Zeev Suraski
0ac9536d99 (c) patch 2000-02-19 22:46:42 +00:00
Zeev Suraski
ceba50b6ed - Fix a nasty bug in the hash, introduced in the recent migration to macros
- Make array_init() and friends trackable
2000-02-19 19:21:45 +00:00
Zeev Suraski
f77e6a4499 Generalize macros 2000-02-19 13:11:39 +00:00
Zeev Suraski
c54864e3af *** empty log message *** 2000-02-18 21:15:48 +00:00
Sascha Schumann
d7e34cf6ea Get rid of second declaration of compare_func_t. Either put in a common
header file or prefix it with i.e. zend_llist_
2000-02-18 20:04:32 +00:00
Andi Gutmans
e6b768105d - Quick and dirty hack for supporting sorts. Improve later on when I wake up. 2000-02-18 14:33:28 +00:00
Andi Gutmans
ee26ec5e9c - Didn't compile on Win32 2000-02-18 09:18:19 +00:00
Andi Gutmans
a0f2e9bf34 - Tiny change (I know I don't have to cast malloc() to void * but I like
casting my malloc()'s)
2000-02-18 00:22:20 +00:00
Andi Gutmans
18b8440c95 - Preliminary support for dynamic arrays. I need it on order to try out a
new hash implementation. It isn't used anywhere.
2000-02-18 00:14:23 +00:00
Andi Gutmans
f1a2ee55e0 - Add ZEND_API 2000-02-17 08:03:13 +00:00
Andi Gutmans
9bb9221642 -Fix bug 3504 concerning leaks with unset() 2000-02-16 16:49:44 +00:00
Andi Gutmans
9b840c5f59 - Hopefully fix Thies' bug report. 2000-02-16 16:00:02 +00:00
Zeev Suraski
2a4d65f3b8 ZEND_TEST_EXCEPTIONS should be defined/undefined before it's checked 2000-02-16 13:55:22 +00:00
Andi Gutmans
f79688e848 - Fix bug #3309 2000-02-16 09:20:10 +00:00
Andi Gutmans
7fa17e8e08 - Put in the infrastructure for the unset() fix. Right now it has the old
behavior but I just need time tomorrow to add the correct behavior.
2000-02-14 20:31:01 +00:00
Andi Gutmans
95c7788747 - Fix bug in func_get_arg()
- Get rid of compiler warnings for unused function crash()
2000-02-14 19:08:51 +00:00
Zeev Suraski
603aca0bb3 Fix a memory leak 2000-02-13 22:15:06 +00:00
Andi Gutmans
e578fad099 - Save a function call one very hash_add 2000-02-13 13:31:29 +00:00
Andi Gutmans
bb302a755c - Make startup a bit faster by changing some hash_update()'s and hash_add()'s
to hash_update_ptr()/hash_add_ptr()
2000-02-13 13:22:02 +00:00
Andi Gutmans
920b7b2841 - Fix a couple of potential bugs where we were using emalloc/efree instead
of pemalloc/pefree.
- Fix a bug were we potentially would be freeing the key by mistake
2000-02-13 12:45:36 +00:00
Zeev Suraski
81662eb8f4 *** empty log message *** 2000-02-13 01:22:11 +00:00
Zeev Suraski
0b1c8b455a Make (array) false == array() and not array(false) 2000-02-13 00:52:33 +00:00
Andrei Zmievski
94be61fde5 Made a couple of typedefs for zend_hash_apply_*() calls. 2000-02-11 21:12:49 +00:00
Zeev Suraski
2e7093d5ef Update .dsp's 2000-02-11 16:28:50 +00:00
Zeev Suraski
80bdd19e03 Fine tune Andi's patch 2000-02-11 15:59:30 +00:00
Andi Gutmans
b48eebb114 - #define ZEND_WIN32 differently 2000-02-10 17:19:10 +00:00
Andi Gutmans
bc5c9d8d7b - Finally beautify those WIN32|WINNT checks 2000-02-10 17:03:53 +00:00
Andi Gutmans
c8b321c678 - Shouldn't be there 2000-02-10 05:41:28 +00:00
Andi Gutmans
39c4687816 - Cleanup the code 2000-02-10 05:41:05 +00:00
Zeev Suraski
de8471ab4e Fix last known nasty bugs in Zend. It'll be cool if there are no new ones :) 2000-02-09 21:48:16 +00:00
Thies C. Arntzen
2e7f24a487 foreach() works now for objects as well. 2000-02-09 15:38:56 +00:00
Zeev Suraski
ebddd16c75 Fix declaration 2000-02-08 22:18:21 +00:00
Zeev Suraski
ca5622c711 Fix an elusive bug 2000-02-08 20:10:47 +00:00
Andrei Zmievski
0f1c2504b1 Fix up the patch. 2000-02-08 17:59:28 +00:00
Andrei Zmievski
c2fd6752cf Patches from Walter for strncmp() stuff. 2000-02-08 17:19:43 +00:00
Zeev Suraski
d5abab7322 Remove old unnecessary check 2000-02-07 18:53:43 +00:00
Zeev Suraski
0c470af314 Syntax highlighting was erronously emitting more than one semicolon and/or garbage with heredocs 2000-02-07 18:39:14 +00:00
Andi Gutmans
4b0da428e7 - Support the string offset syntax $a{2} with the regular array opcodes.
Will need to write new opcodes sometime but right now it's good enough
  to announce the change to this string offset syntax for beta 4.
2000-02-06 20:18:35 +00:00
Andi Gutmans
7f48989be6 - This hopefully fixes the list($a, $a) = array(1,2) crash, i.e. when list
by mistake contains the same variable twice.
- BTW, there is no defined order of assignment. The value of $a after the
  previous example is undefined, and should not be assumed to be either 1
  nor 2.
2000-02-05 20:19:46 +00:00
Zeev Suraski
b1a837ad17 More cleanup 2000-02-05 16:38:50 +00:00
Zeev Suraski
f207b3623e Pass the executor globals to internal functions 2000-02-05 15:40:05 +00:00
Zeev Suraski
9f51f154aa - Stop passing list/plist to internal functions
- Add a typedef for the pCopyConstructor function pointer
- Minor hacks
2000-02-05 15:11:24 +00:00
Zeev Suraski
ef5d72cc37 That was the broken downcasting that prevented the interactive C++ mode from working properly under UNIX 2000-02-05 01:26:15 +00:00
Zeev Suraski
b6197bcf90 Maintain a state of whether we're compiling and/or executing 2000-02-04 14:45:58 +00:00
Andrei Zmievski
e0628436f3 *** empty log message *** 2000-02-03 18:51:33 +00:00
Zeev Suraski
8b9e07dace - Fix built-in classes with more than 5 methods 2000-02-02 22:23:37 +00:00
Zeev Suraski
b3ec6d5d05 - Fix the annoying problem with list(), that surfaced up after our recent cleaning
patches
2000-02-02 16:47:43 +00:00
Andrei Zmievski
b995d2cc2f Added add_property_unset() and add_property_bool(). 2000-02-01 23:12:48 +00:00
Zeev Suraski
485412ecb1 Improve dependencies 2000-02-01 22:04:52 +00:00
Zeev Suraski
5cabf74445 Sort out a gdb problem 2000-02-01 19:22:59 +00:00
Zeev Suraski
39adeaf4f4 Fix warning 2000-02-01 18:54:01 +00:00
Andi Gutmans
131e3a06fb - Get rid of remains of garbage.
- This should fix Thies' UMR
2000-02-01 16:02:38 +00:00
Thies C. Arntzen
11f53347c7 moved destroying of garbage before resource-list gets destroyed - (see my previous mail)
zeev, andi - please comment!
2000-02-01 11:41:15 +00:00
Thies C. Arntzen
8c4ab98e17 added missing break. 2000-02-01 11:37:33 +00:00
Thies C. Arntzen
d6afe4bac7 took out zend_hash_pointer_update() & zend_hash_pointer_index_update_or_next_insert() - i really prefer link-errors instead of runtime-errors, don't you? 2000-02-01 10:40:05 +00:00
Andi Gutmans
45686e3a55 - This has to always be done. 2000-01-31 21:09:14 +00:00
Zeev Suraski
f2d3ce4170 - Optimized garbage mechanism
- Fixed another buglet in the parser
2000-01-31 19:18:07 +00:00
Zeev Suraski
0517436bf9 - Fix foreach()
- Fix indirect reference with object properties
2000-01-31 18:21:54 +00:00
Andi Gutmans
fdbca7526f - Fix the bug Thies found where I forgot to change a break; to NEXT_OPCODE();
- If you find anymore let me know
2000-01-30 21:17:29 +00:00
Andi Gutmans
0296bba808 - Run it on align_test 2000-01-30 04:49:43 +00:00
Zeev Suraski
400f464307 Fix ``'s 2000-01-29 17:49:05 +00:00
Zeev Suraski
ad115d2088 Fix require() 2000-01-29 17:19:47 +00:00
Andi Gutmans
6864e05ae3 - Get rid of another rule which isn't needed. 2000-01-29 10:20:05 +00:00
Andi Gutmans
7663e4f65e - Add parser support for string offsets. This added three shift/reduce
conflicts but they all seem to be fine.
- Cleaned up the parsing rules a bit and made them much more compact and
  elegant.
- Please CVS update and see that I didn't break anything.
2000-01-29 10:16:04 +00:00
Andi Gutmans
b862a8b728 - This will save some memory w/ GCC compilers on some platforms 2000-01-29 09:14:22 +00:00
Andi Gutmans
5da185594c - Yet another tiny optimization. 2000-01-29 00:33:07 +00:00
Andi Gutmans
336bf35a2c - Make loop a bit faster. 2000-01-28 22:23:28 +00:00
Andi Gutmans
059b64efbe - Make sure its use is understood. 2000-01-28 21:46:07 +00:00
Andi Gutmans
c23056719e - Double the speed of some key switch() tests for Win32. 2000-01-28 21:43:46 +00:00
Andi Gutmans
6f63373bb2 - This makes the switch() statement twice as quick. Moving to enum
might make this a general speed up for other platforms too
2000-01-28 13:25:55 +00:00
Andi Gutmans
8b9765a917 - Keep objects as references. 2000-01-26 21:10:46 +00:00
Andi Gutmans
4585f7bf1f - Allow is_ref to become 0 in case the refcount is back to 1. 2000-01-26 05:03:22 +00:00
Andi Gutmans
58a0844b1c - Make foreach() now copy the array but use the original array. It can
still be optimized A LOT but it's only a performance issue and not
  a feature issue.
2000-01-24 19:04:07 +00:00
Zeev Suraski
fafbf6d8da - Implement declare() with declarables framework
- Implement ticks - Germany&Norway - 5 points!
2000-01-24 19:00:30 +00:00
Zeev Suraski
adec56938e Fixes 2000-01-24 17:29:15 +00:00
Zeev Suraski
e6ba28b680 Fix an elusive bug 2000-01-22 17:02:48 +00:00
Zeev Suraski
c3677ca907 Add some order... 2000-01-20 14:26:31 +00:00
Zeev Suraski
92633067af Indentation fixes 2000-01-20 05:27:57 +00:00
Andi Gutmans
af2ef0830a - Optimize zend_hash_del a tiny bit. 2000-01-19 19:47:16 +00:00
Andi Gutmans
aa73f6b68f - Hopefully fix the hash problem. 2000-01-19 19:44:32 +00:00
Andi Gutmans
7271c050a3 - Hrm I'm not concentrating 2000-01-19 18:14:20 +00:00
Andi Gutmans
99783fe795 - Actually the destructor should run after the data is already detached
from the hash but before the bucket is freed.
2000-01-19 18:12:05 +00:00
Andi Gutmans
d3690efffe - Rollback hash_apply and friends. They assume now that hash_del is reentrant
as it first applies the destructor and only later nukes the bucket
2000-01-19 18:05:16 +00:00
Andi Gutmans
b7b97df93f - Run destructor before the hash structure is modified, thus, making
hash_del, reentrant (BLOCK_INTERRUPTIONS needs to be made a counter now).
2000-01-19 17:39:55 +00:00
Andi Gutmans
58fb1a3922 - Undo a bug we introduced. (Another one out there). 2000-01-19 17:31:33 +00:00
Thies C. Arntzen
fb6a1b8b83 RETURN_NULL -> RETURN_NULL() // we don't want macros without an argumnet 2000-01-19 09:38:45 +00:00
Zeev Suraski
549cf0381a Leak fix 2000-01-18 22:18:17 +00:00
Thies C. Arntzen
cd377b646d RETURN_NULL & RETVAL_NULL don't need (). 2000-01-18 08:40:45 +00:00
Thies C. Arntzen
bbe2172c38 use defines 2000-01-17 19:17:58 +00:00
Zeev Suraski
19d978d1c7 Get rid of the IsPointer functionality in the hash. 2000-01-17 18:45:46 +00:00
Zeev Suraski
a965dc5b40 - Fixes a newly introduced bug in the hash 2000-01-17 18:09:03 +00:00
Zeev Suraski
62114c1806 Destructors no longer return ints, the low level problem it was intended to solve is long gone now... 2000-01-17 17:33:37 +00:00
Zeev Suraski
ee08b81aab - Make zend_hash_apply() (and friends) reentrant and much, much quicker
- Introduce zend_hash_graceful_destroy(), which allows the destructor functions to
  use zend_hash_apply() and/or zend_hash_graceful_destroy()
- Switch to zend_hash_graceful_destroy() in the resource list shutdowns
2000-01-16 20:59:03 +00:00
Zeev Suraski
dc0e663241 Allow module startup to be separate from the compiler/executor startup 2000-01-16 19:41:15 +00:00
Thies C. Arntzen
bd375505f7 make the ht->inconsistent stuff less ugly:) 2000-01-16 09:45:10 +00:00
Zeev Suraski
caaeb9ff12 Fix a bug in call_user_function_ex() 2000-01-15 22:52:24 +00:00
Zeev Suraski
470fe972f5 Added support for $foo->{$bar}["foobar"] notation (was supported in PHP 3) 2000-01-15 17:17:32 +00:00
Thies C. Arntzen
c93a189028 if ZEND_DEBUG mode is on we'll now see warnings when a HashTable is accessed
while it's inconsistent.

Zeev, Andi - you welcome to revert this patch if you don't like it - i find it
useful! accesssing inconsistent hashtables is one of the hardest things to track!
2000-01-15 13:40:17 +00:00
Andrei Zmievski
7d425f38ee Since we're highlighting code, put <code> and </code> around the code. 2000-01-14 19:35:29 +00:00
Zeev Suraski
f24931222c Make Win32 compile again 2000-01-13 20:34:45 +00:00
Sascha Schumann
bf7b292db9 Move dl stuff from acconfig.h into zend.h. That allows us finer control
when it comes to suppressing dlfcn.h.
2000-01-12 19:52:33 +00:00
Zeev Suraski
d3cad4f289 Functionality & crash fixes 2000-01-09 19:16:34 +00:00
Andi Gutmans
44e9e95933 - Rename IS_BC to FLAG_IS_BC. We will probably nuke it. 2000-01-04 14:25:42 +00:00
Thies C. Arntzen
af22085c51 added ZVAL_*() macros. 2000-01-04 13:56:17 +00:00
Andi Gutmans
b8cebe32e3 - Separate the overloaded objects' types from Zend's data types.
There is no reason for them to be the same, and IS_METHOD just cluttered
  there data types.
2000-01-04 13:52:52 +00:00
Andi Gutmans
bdefd5da15 - Change IS_UNSET -> IS_NULL 2000-01-04 13:22:58 +00:00
Zeev Suraski
f29ee8f7ee Fix a bug when using [] on a string 2000-01-03 20:01:54 +00:00
Joey Smith
c5589a9dd5 # There is no functions/ directory in PHP4.
@ number.h comes from ext/bcmath, not functions/
 number.h comes from ext/bcmath, not functions/
2000-01-03 18:53:29 +00:00
Zeev Suraski
8e99c415ab Fix 2000-01-03 17:26:24 +00:00
Andi Gutmans
da8ad4f20f - Fix compare_function() for IS_UNSET 2000-01-03 05:28:34 +00:00
Zeev Suraski
990ac99c97 Fix 2000-01-02 16:47:00 +00:00
Thies C. Arntzen
bc6811ec90 renamed RET???_UNSET -> RET???_NULL 2000-01-02 11:44:33 +00:00
Sascha Schumann
800ffda01c Some cleanup 2000-01-01 20:49:34 +00:00
Andi Gutmans
4a4fe0974f - IS_NULL should be 0 when converted to a long although I don't think it
really should be documented.
2000-01-01 18:47:03 +00:00
Zeev Suraski
a6d4b30d19 Fix buglet 2000-01-01 15:31:59 +00:00
Zeev Suraski
4765396846 .dsp updates 1999-12-31 16:20:04 +00:00
Zeev Suraski
61b9e78e1b - Add Release_inline builds 1999-12-31 15:41:18 +00:00
Zeev Suraski
f2d703e916 - Nuke undefined_variable_string
- Introduce IS_UNSET
1999-12-31 13:56:59 +00:00
Andi Gutmans
400ee6caa0 - Fix bug #3073. continue in do..while() loops should work now 1999-12-31 12:56:48 +00:00
Zeev Suraski
5864b57eec This should enable people to use ALLOC_ZVAL() in code outside the php4.dll 1999-12-30 05:25:44 +00:00
Sascha Schumann
d93da3c1c3 Solaris' sed does not like this expression. Since -O0 is the default,
we can also omit it.
1999-12-30 01:13:42 +00:00
Zeev Suraski
80e20b5fea - Change var_reset() to set bool(0) instead of string("")
Authors should go over their code and change it to use var_reset() instead of manually
setting it to string(""), in case they're interested in the false value.
1999-12-29 17:29:26 +00:00
Zeev Suraski
8f88443aba time_t is an int under Linux... this should always work. 1999-12-29 17:22:47 +00:00
Sascha Schumann
32ef59b290 Fix warnings 1999-12-28 20:33:02 +00:00
Thies C. Arntzen
546af70783 new constant: SQL_NULL
new macros: RETURN_SQLNULL,RETVAL_SQLNULL,IS_SQLNULL
1999-12-28 12:05:48 +00:00
Zeev Suraski
39d9a93acc Fix 1999-12-27 22:03:25 +00:00
Andi Gutmans
c34a062f5c - Get rid of warning 1999-12-27 19:17:40 +00:00
Zeev Suraski
b7a5b3c309 - Generalize the fast cache mechanism
- Add the HashTable struct to the fast cache mechanism
1999-12-27 19:07:33 +00:00
Andi Gutmans
27daca31f3 - Make zend_internal_function allocate a full zend_function structure so
that we don't get memory overruns and Thies doesn't get angry :)
1999-12-27 17:29:35 +00:00
Zeev Suraski
1ad06e428d *** empty log message *** 1999-12-27 17:24:33 +00:00
Zeev Suraski
ebd4445ba2 Add cache statistics support 1999-12-27 16:42:59 +00:00
Thies C. Arntzen
9cf1a98d0e fix UMR in ZTS mode 1999-12-27 11:22:57 +00:00
Zeev Suraski
3c50b7ee45 - Enable the new zval cache on debug too. No real reason not to, and it keeps
the code cleaner.
- ZTS compile fixes
1999-12-26 23:20:18 +00:00
Zeev Suraski
b90bc0b15c Fix buglet 1999-12-26 22:50:08 +00:00
Zeev Suraski
90e1b0734e Add missing file 1999-12-26 22:41:20 +00:00
Zeev Suraski
aec33aa753 Introduce a zval-specific cache - 5-15% speed improvement 1999-12-26 21:56:59 +00:00
Sascha Schumann
14f915ece6 Makefile.am: Add dummy target for dependencies
acinclude.m4: Cache result of broken sprintf check
1999-12-26 21:45:53 +00:00
Zeev Suraski
235386b245 Change ALLOC_ZVAL() semantics 1999-12-26 21:21:33 +00:00
Zeev Suraski
c517633b49 namespace protection 1999-12-26 20:45:42 +00:00
Zeev Suraski
7f27821c5f inline functions cannot accept varargs 1999-12-25 23:52:00 +00:00
Andi Gutmans
88b7ed053f - Prepare Zend for the new $a{2} string offset syntax. 1999-12-25 16:46:32 +00:00
Zeev Suraski
e25e3f092a Use __forceinline under Win32 (inlining under Win32 gives roughly 30% performance
increase)
1999-12-24 21:27:55 +00:00
Zeev Suraski
57fbbf2036 Shut gcc up 1999-12-24 20:19:37 +00:00
Zeev Suraski
e28aff2f7a Optimize 1999-12-24 16:03:44 +00:00
Andi Gutmans
62b2087a84 - Create two new macro's. ALLOC_ZVAL() and FREE_ZVAL(z) and make Zend use
them.
1999-12-24 15:22:11 +00:00
Zeev Suraski
946df29029 - Use function_add_ref() here too 1999-12-24 14:49:57 +00:00
Zeev Suraski
b996436b4c Fix a class inheritence leak, when using static varibles in a parent class member function 1999-12-23 19:23:36 +00:00
Zeev Suraski
3b86ea7dc0 This one slipped away 1999-12-23 18:07:52 +00:00
Sascha Schumann
44ffdc182f Rename option to match description string 1999-12-23 17:48:56 +00:00
Zeev Suraski
67b4b3a634 - require() of a dynamic expression now has the standard require() semantics
- Fixed a memory leak in require() of a dynamic expression
1999-12-23 15:03:25 +00:00
Sascha Schumann
9156d86009 Compile zend_execute.c with special CFLAGS. For GCC, INLINE_CFLAGS
contains -O0 to disable optimizations. This can be disabled by using
the appropiate parameter.
1999-12-23 13:29:26 +00:00
Sascha Schumann
473632bf0d Kill compiler warning 1999-12-22 22:43:55 +00:00
Sascha Schumann
304f1ebcb2 Don't set DEBUG_CFLAGS to -g, if -g is already in CFLAGS 1999-12-22 21:04:34 +00:00
Zeev Suraski
5ba5f00f65 export 1999-12-22 20:24:52 +00:00
Zeev Suraski
11967c94fc Those void's don't belong in there 1999-12-22 19:21:15 +00:00
Zeev Suraski
1fe57c9505 - Fix function_exists() 1999-12-22 18:49:23 +00:00
Zeev Suraski
5939b3d702 - Fix a very old legacy memory leak in break(n) statements 1999-12-22 18:10:38 +00:00
Zeev Suraski
5c56fd4793 Fix for the array() initialization bug Stas found 1999-12-22 15:34:38 +00:00
Andi Gutmans
ff737b6090 - Remove unused variable. 1999-12-22 14:38:00 +00:00
Zeev Suraski
f0888ccaef Fix the highlighting problem. STR_REALLOC() should be used instead of plain erealloc()
whenever you're dealing with strings that might be coming back from the engine - there seem
to be a few other places like this in PHP.
1999-12-21 20:30:04 +00:00
Andrei Zmievski
80bab9d939 We're using ZVAL's now. 1999-12-21 17:14:31 +00:00
Zeev Suraski
8a4170e6bd - Fix Sascha's leak. Good report! 1999-12-21 15:55:46 +00:00
Zeev Suraski
3a47431122 No need to block for interruptions so early 1999-12-21 15:48:56 +00:00
Sascha Schumann
efeadf086b Explicitly check for C++ preprocessor, otherwise autoconf forces it onto
us at the wrong place (subsequent autoconf checks failed).
1999-12-21 00:02:20 +00:00
Zeev Suraski
a2cc070fc2 - Fix @expr 1999-12-20 20:01:19 +00:00
Zeev Suraski
be1bb28355 - Fix the crash Thies was experiencing (returning a function call could cause a crash)
- Fix the leak Thies was experiencing (@fcall() leaked)
1999-12-20 16:05:36 +00:00
Zeev Suraski
8224207b26 Some updates 1999-12-19 21:29:24 +00:00
Zeev Suraski
2d87ae9ab6 Make these work again 1999-12-19 21:17:32 +00:00
Zeev Suraski
4d2b0715d1 libzend -> Zend 1999-12-19 21:02:54 +00:00
Zeev Suraski
223c674c2a - Made things work again (Thies, everybody - please check the latest CVS and see if you're
still getting any problems)
- Changed the interface of call_user_function_ex() to support returning of references
1999-12-19 18:54:40 +00:00
Andi Gutmans
213d0e2fb2 - More fixes related to the return references patch
- eval_string() and call_user_function_ex() still don't work.
- The libzend tree is untested and might not be stabl yet.
1999-12-19 06:39:17 +00:00
Sascha Schumann
b3c440c06a Add zend_sprintf.c 1999-12-19 01:50:10 +00:00
Sascha Schumann
2185831922 configure sets ZEND_BROKEN_SPRINTF 1999-12-19 01:47:43 +00:00
Sascha Schumann
bf1effa4bc Variables are not interpolated unless we use _UNQUOTED 1999-12-19 00:10:08 +00:00
Zeev Suraski
a1ad2872ee - The tree compiles again 1999-12-18 22:40:35 +00:00
Sascha Schumann
f1fcb022be Let autoconf check for the proper inline keyword 1999-12-18 22:37:22 +00:00
Sascha Schumann
11c9545416 automake created illegal target names due to the ZEND_SCANNER definition.
We now substitute @ZEND_SCANNER@ directly
1999-12-18 22:30:23 +00:00
Zeev Suraski
cd7d5546ae - Introduce ZEND_NUM_ARGS(), to replace ARG_COUNT(ht)
- Rename getParameters() and friends for consistency and namespace cleanliness
1999-12-18 22:23:23 +00:00
Zeev Suraski
71dddd7db7 - Made PHP_VERSION and PHP_OS work again
- More php3_ cleanup
@- Restored the PHP_VERSION and PHP_OS constants (Zeev)
1999-12-17 20:01:47 +00:00
Sascha Schumann
fb61a2c944 Define inline to inline explicitly 1999-12-17 17:50:14 +00:00
Sascha Schumann
91549cfa4f Move config code into separate file 1999-12-17 13:36:15 +00:00
Andi Gutmans
7fe808ea02 - By mistake commited this to the branch. It fixes a bug we introduced with
the return reference patch.
1999-12-17 08:24:10 +00:00
Andrei Zmievski
8a879b8fc5 Doh! I'm an idiot. 1999-12-15 22:37:05 +00:00
Andrei Zmievski
c9c6446aa1 - s/inheritence/inheritance/g
- Added is_subclass_of() function
1999-12-15 21:26:43 +00:00
Zeev Suraski
ced9cee10c - Implement return by reference:
- In function declaration instead of the return statement
  - In the assignment phase
- Implement ability to turn off support for call-time pass by reference
1999-12-15 20:15:32 +00:00
Andrei Zmievski
22344ea595 val->len 1999-12-15 16:54:46 +00:00
Andrei Zmievski
46b14f85c3 Faster, must go faster. 1999-12-15 15:59:04 +00:00
Andrei Zmievski
3fdf0dbedc - Added class_exists()
- Moved function_exists() here from from the basic_functions.c
- Modified method_exists() to convert method name to lowercase
  when checking
1999-12-14 21:15:24 +00:00
Andi Gutmans
e36be38140 - opened_path should not be freed here as the zend_file_dtor() takes care
of it. This doesn't fix the bug report for the crash of highlight_file()
  though.
1999-12-07 16:00:39 +00:00
Zeev Suraski
3d160b5b7c Support ZTS definition in zend_config.h 1999-12-07 06:19:42 +00:00
Zeev Suraski
ef596bbafb Move the #include of zend-parser.h out of zend_compile.h 1999-12-06 20:42:44 +00:00
Zeev Suraski
291066c459 More localization 1999-12-06 19:03:57 +00:00
Zeev Suraski
00c3ac908b Localize a couple of macros 1999-12-06 15:31:06 +00:00
Zeev Suraski
624117e5e4 *** empty log message *** 1999-12-05 23:32:21 +00:00
Sascha Schumann
70df2d7478 Fix some warnings 1999-12-05 16:23:45 +00:00
Andrei Zmievski
83ce7c13d1 *** empty log message *** 1999-12-04 18:57:44 +00:00
Andrei Zmievski
f962a35df7 Added zend_set_hash_symbol() function. 1999-12-04 16:50:18 +00:00
Thies C. Arntzen
0a276c2ff3 backed out last change after andi decided on a different approach. 1999-12-04 16:08:43 +00:00
Andi Gutmans
4c8259b538 - Call ZEND_SET_SYMBOL_WITH_LENGTH() with refcount 1 from the standard
ZEND_SET_SYMBOL()
1999-12-04 14:56:44 +00:00
Zeev Suraski
efc84af940 - Implement get_used_files() and get_imported_files() 1999-12-04 14:26:26 +00:00
Zeev Suraski
9baad80459 - Break the zend->PHP dependency introduced by the .php extension for use(),
by providing an API
- Enable Stig's patch for use() extensions (it wasn't refered to by the parser)
- Fix a memory leak in that code
1999-12-04 13:26:57 +00:00
Thies C. Arntzen
502bb337fe the new SET_VAR_* macros forgot to set the refcount! 1999-12-04 13:18:08 +00:00
Sam Ruby
6fb3b8c66f build error - windows 1999-12-04 13:13:45 +00:00
Stig S. Bakken
aaadc71d5d Fix typo, add prototype for use_filename(). 1999-12-04 11:45:14 +00:00
Stig S. Bakken
3570e8891d "use" should use arg+".php" as parameter to require 1999-12-04 11:43:07 +00:00
Zeev Suraski
cad92c80cc This should fix the fd leak with include()/require() 1999-12-04 10:59:30 +00:00
Andrei Zmievski
e345066140 *** empty log message *** 1999-12-03 17:03:35 +00:00
Andrei Zmievski
fec413c557 Added ZEND_SET_GLOBAL_VAR_WITH_LENGTH_EX() macro. 1999-12-03 16:59:04 +00:00
Thies C. Arntzen
0d7e971355 revert my last patch - WARNING: we leak fd's again.
add initialzation of opened_path highlight_file()
1999-12-03 14:07:00 +00:00
Andi Gutmans
c34560b53d - Remove _EX and make it the old _LENGTH 1999-12-03 07:54:17 +00:00
Andi Gutmans
2f5efbdea6 - Add _EX macro for Andrei 1999-12-02 20:38:41 +00:00
Zeev Suraski
fdcaba4096 Solve a couple of compile issues 1999-12-02 18:59:29 +00:00
Thies C. Arntzen
b92d70aabe php_fopen_wrapper_for_zend() does *NOT* insert the opened files into any list - the caller needs to fclose() the file. (not sure if this is desired)
fixed "Uninitialized memory read" when including URLs
1999-12-02 14:37:16 +00:00
Stig S. Bakken
93536507f6 Fix warnings surfacing in maintainer-mode. 1999-12-01 22:55:20 +00:00
Zeev Suraski
2ddc4fe4f5 Make it possible to explicitly set refcount in ZEND_SET_SYMBOL_WITH_LENGTH(), part 2 1999-12-01 22:00:58 +00:00
Zeev Suraski
158088ca1a Allow to set the reference count explicitly for ZEND_SET_SYMBOL_WITH_LENGTH() 1999-12-01 21:47:47 +00:00
Andi Gutmans
14382523bf - Forgot to check for BP_VAR_IS in the fix made for Thies' string offset
problem.
1999-12-01 14:55:58 +00:00
Andi Gutmans
3a17630121 - Applied Thies' bug fix. Great work! 1999-11-30 20:37:52 +00:00
Andi Gutmans
5463dd5b38 - Add use support (behaves like require, but will not use the same file twice)
- Add import support (behaves like include, but requires parentheses;  will not
  use the same file twice; Currently, it is not yet properly implemented, and
  only behaves like include)
1999-11-30 20:15:04 +00:00
Andi Gutmans
08304a3c93 - Fix problem Thies reported. We by mistake separated variables which were
being fetched for read only.
1999-11-30 17:10:11 +00:00
Zeev Suraski
4481898ff7 Add ability to disable the memory cache 1999-11-27 00:04:36 +00:00
Zeev Suraski
74f6202aa6 - Fix fd leak in ZTS mode 1999-11-26 23:54:05 +00:00
Zeev Suraski
6be3723f3d UNIX/non ZTS compile fixes 1999-11-26 23:48:04 +00:00
Zeev Suraski
58153dfed0 - Improve the file handle closing code 1999-11-26 23:45:22 +00:00
Zeev Suraski
cd53944435 - Modify zend_llist_del() to receive a comparison function 1999-11-26 23:44:41 +00:00
Zeev Suraski
71b1219ee3 This request_shutdown() is no longer needed (never was needed really) 1999-11-26 20:19:28 +00:00
Zeev Suraski
b53bc48847 This should get the file to close properly 1999-11-26 18:37:06 +00:00
Sascha Schumann
ac8736c8ee Rebuild libzend.la, if the scanner was rebuilt 1999-11-26 17:53:56 +00:00
Zeev Suraski
94b5119898 Remove request_started, increase thread safety 1999-11-26 13:53:18 +00:00
Zeev Suraski
f617a46305 That's a more thorough fix... 1999-11-25 16:21:01 +00:00
Zeev Suraski
f62a08c2ae Fix bug #2817 - assignments to string offsets could erronously modify unrelated strings 1999-11-25 16:11:34 +00:00
Zeev Suraski
b264733bc1 Fix compile problem with enable-memory-limit 1999-11-22 22:27:04 +00:00
Zeev Suraski
3b9673ca58 Fix inconsistencies with here-docs implementation 1999-11-22 17:11:36 +00:00
Zeev Suraski
86a0efcff5 Fix #2744 1999-11-22 16:30:23 +00:00
Andi Gutmans
f3ca328b34 That slipped away 1999-11-21 18:19:08 +00:00
Zeev Suraski
6358c6631b - Optimize class instanciation
- Fix constant instanciation for array elements inside objects
1999-11-21 18:11:10 +00:00
Andi Gutmans
1f11e07fc6 - Moved var_uninit() for return_value to the beginning of DO_FCALL.
We forgot to do it for overloaded methods
1999-11-19 17:04:54 +00:00
Andi Gutmans
817a11e7ed - Functions whose return values aren't used have them freed in DO_FCALL
and don't need a special ZEND_FREE opcode following them anymore
1999-11-19 16:55:25 +00:00
Andi Gutmans
52045afb08 - If a function's return value is unused then don't create a ZEND_FREE
opcode but free it after the function call in zend_execute.
1999-11-17 17:21:15 +00:00
Andi Gutmans
800e00727a - Forgot this 1999-11-17 04:38:38 +00:00
Andi Gutmans
3cd140cdef - Weird that this compiled for me. 1999-11-16 20:31:29 +00:00