Commit Graph

295 Commits

Author SHA1 Message Date
Andi Gutmans
7b5138035c - Remove unreachable code 2001-01-01 17:59:08 +00:00
Zeev Suraski
36eaad252f Allow get_current_key() not to return the key itself, instead of a duplicate 2000-12-22 12:49:51 +00:00
Andi Gutmans
8d9082563a - Allow passing references which are returned from functions and new
- statements to be passed by reference.
2000-11-27 18:46:23 +00:00
Sascha Schumann
2ef6b689e8 Pass on the exit status 2000-11-22 04:24:35 +00:00
Andi Gutmans
12077112b4 - The baby patch wasn't that innocent :) 2000-11-21 16:14:02 +00:00
Andi Gutmans
b2c957d4b1 - NEVER copy and paste :) 2000-11-20 20:54:10 +00:00
Andi Gutmans
b5d5b3a703 - Baby patch towards making the damn pass-by-ref work. 2000-11-20 20:49:42 +00:00
Andi Gutmans
6d2a433ec5 - This patch is broken and needs more thorough fixing. 2000-11-20 05:09:21 +00:00
Andi Gutmans
ce87ae4159 - Try and fix the problem when sending references returned from a function by reference. 2000-11-19 19:49:58 +00:00
Zeev Suraski
d0fbddcc2b Fix a corruption bug, when erroneously allowing to send non-variables by reference (several
bug-db reports seem to originate in this bug)
2000-10-29 19:16:29 +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
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
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
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
c698e14635 - Beautify 2000-08-19 15:16:53 +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
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
e5015ed581 @ Fix problem with nested foreach()'s (Andi, Zend Engine) 2000-08-10 22:08:02 +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
Andi Gutmans
290525fdcd Always store full filename as compiled file name 2000-07-27 15:36:54 +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
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
Stanislav Malyshev
be59613ddf Remove C++ commennts. 2000-07-07 09:50:50 +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
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
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
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
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
03e842ccb8 Fix bug #4933 2000-06-09 15:42:49 +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
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
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
Andi Gutmans
686bd5724b - Make $obj->test = 5; work again (assigning to uninitialized objects) 2000-05-06 18:40:48 +00:00
Andi Gutmans
f2471fd50a - Change the place CAST uses for the op_type 2000-05-03 17:56:44 +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
Andi Gutmans
4f15966d1b - Fix order of JMPZNZ arguments 2000-04-17 17:16:47 +00:00
Zeev Suraski
021631d5eb *** empty log message *** 2000-04-12 00:50:21 +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
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
a9159c2eec Initial preparation for OO overloading patch 2000-04-06 16:34:55 +00:00
Andi Gutmans
da3db3d864 - FIx JMPZNZ 2000-04-05 20:55:51 +00:00
Torben Wilson
521c8af6a4 Added !== (is not identical) operator. 2000-03-29 22:05:19 +00:00
Andi Gutmans
7fd92b524d - Stop zend_func_args() and co. from crashing 2000-03-26 18:40:24 +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
Zeev Suraski
5dba477467 - Some header dependencies cleanup
- Generalize zval_print() and zval_print_r()
2000-03-25 19:10:07 +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
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
Zeev Suraski
15dd8e61a2 - Fix newly introduced problem reported by Sam Ruby 2000-03-15 17:32:29 +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
5951b166c8 - Quick way of supporting include_once().
Good enough for RC1.
2000-03-10 16:36:30 +00:00
Andi Gutmans
9cc704421a - Cleanup old IMPORT stuff 2000-03-10 15:05:00 +00:00
Zeev Suraski
5e55e47f7f It's official now... 2000-03-06 05:26:39 +00:00
Andi Gutmans
110b670d44 - Fix typos 2000-03-01 17:10:45 +00:00
Andrei Zmievski
e6146d6bf3 Fix typo. 2000-02-26 16:21:29 +00:00
Zeev Suraski
0ac9536d99 (c) patch 2000-02-19 22:46:42 +00:00
Zeev Suraski
f77e6a4499 Generalize macros 2000-02-19 13:11:39 +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
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
Zeev Suraski
80bdd19e03 Fine tune Andi's patch 2000-02-11 15:59:30 +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
ca5622c711 Fix an elusive bug 2000-02-08 20:10:47 +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
b6197bcf90 Maintain a state of whether we're compiling and/or executing 2000-02-04 14:45:58 +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
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