Commit Graph

1227 Commits

Author SHA1 Message Date
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
Andi Gutmans
247d3d3345 - CHange used_return_value -> return_value_used 1999-11-16 19:12:46 +00:00
Andi Gutmans
b7b614d0b5 - In any case create the free opcode. Need to allow the functions to
create a hint.
1999-11-16 18:46:32 +00:00
Andi Gutmans
dbb67ab9dc - Add support for used_return_value passed to internal functions. 1999-11-16 18:30:06 +00:00
Andi Gutmans
4ebf7b85ad - Fix comment as to Joey's findings 1999-11-14 10:30:39 +00:00
Andi Gutmans
d35ea24fc0 - Fix crash with string offset assignments. 1999-11-13 18:11:34 +00:00
Andrei Zmievski
3964c92f8b Made zend_hash_rehash() callable from outside. 1999-11-04 21:02:35 +00:00
Andi Gutmans
6d988ec694 - Add support for BYREF_FORCE_REST 1999-11-03 19:21:56 +00:00
Andi Gutmans
83c79bb154 - Fix for Thies' leak and Andrei's crash 1999-10-28 15:53:31 +00:00
Zeev Suraski
7f35cfda71 *** empty log message *** 1999-10-25 16:07:14 +00:00
Sam Ruby
6576719dcb Allow CYGWIN directory to be specified as via environment variable 1999-10-23 19:27:24 +00:00
Andi Gutmans
9b83d1ca5d - Fix isset() with string offsets. 1999-10-22 22:35:16 +00:00
Thies C. Arntzen
816627b16c fixed is_identicat_function() 1999-10-19 15:48:25 +00:00
Andi Gutmans
98f025430e - Move IS_IDENTICAL next to IS_EQUAL 1999-10-19 14:19:42 +00:00
Andi Gutmans
70b41809f2 - Fix is_identical function 1999-10-19 14:11:39 +00:00
Andi Gutmans
7a205f6087 - Preliminary submit of Thie's patch. Will fix the rest on Windows
as this was added on UNIX with patch. Changed IS_SAME -> IS_IDENTICAL
1999-10-19 13:33:17 +00:00
Andrei Zmievski
52a30fd21b Be safe, use (). 1999-10-18 14:17:36 +00:00
Andrei Zmievski
c279668168 unstatic'fy is_numeric_string() 1999-10-15 20:42:26 +00:00
Andrei Zmievski
e956a266e2 *** empty log message *** 1999-10-15 20:37:53 +00:00
Andrei Zmievski
62c1407a4d *** empty log message *** 1999-10-15 13:45:28 +00:00
Andi Gutmans
4d7c162d16 - Add convert_to_number_ex() 1999-10-15 06:25:42 +00:00
Sascha Schumann
e77485a8f7 Add "--disable-inline" for low-memory machines (be it limited
RAM or virtual memory). It's also useful for Digital C where
the C++ compiler thinks "inline" is an invalid specifier.
1999-10-14 22:17:22 +00:00
Sascha Schumann
d58e6f2b00 Use sources from $(srcdir) 1999-10-14 17:20:25 +00:00
Sascha Schumann
2170fa6dea Do not use $< for anything but implicit rules. 1999-10-13 16:16:09 +00:00
Thies C. Arntzen
6e07d060fc (zend_fetch_resource) added warinig if resource is of wrong type 1999-10-13 12:59:48 +00:00
Sascha Schumann
8cc4fc6111 Disable ZEND_EXTENSIONS_SUPPORT, if RTLD_NOW is not defined.
Note that this part could be made platform independent by using
libltdl (for Solaris, Linux, *BSD, HP-UX, Win16/32, BeOS).
1999-10-13 00:17:01 +00:00
Thies C. Arntzen
6d7c18c1f5 new improved resource-API 1999-10-12 14:51:17 +00:00
Sascha Schumann
fc48083437 Use DL_LAZY for OpenBSD. This seems to be a compatibility flag which
should be used for the 2nd parameter to dlopen.

http://www.openbsd.org/cgi-bin/cvsweb/src/share/man/man3/dlfcn.3?rev=1.8
1999-10-12 14:48:32 +00:00
Andi Gutmans
faa1891782 - object.ptr was made NULL in DO_FCALL but wasn't restored. Right now I
push it in DO_FCALL and at the end of do_fcall_common it always gets
  popped. We might be able to optimize it out.
1999-10-12 11:41:17 +00:00
Andrei Zmievski
8864313c48 Modified zend_hash() to accept a pointer to sort function. 1999-10-11 21:30:23 +00:00
Andi Gutmans
81aa9a36b6 - No idea why this bug didn't exist before. But I'm too tired to think of it.
During a regular do_fcall we need to set object.ptr to NULL and, thus,
  push it in the beginning and pop it in the end.
  I hope this fix more or less cuts it. I just want to sleep :)
1999-10-11 20:29:55 +00:00
Andi Gutmans
3a88d5a68e - Didn't lower refcount when doing an internal function call linked to a regular object. 1999-10-10 18:31:42 +00:00
Andi Gutmans
274ce69429 - Clean up a bit. Separate before the locking so that we can use SEPARATE_ZVAL
macro.
1999-10-10 04:38:51 +00:00
Sascha Schumann
ea567a73f1 Add clean target which removes standard targets 1999-10-10 02:02:13 +00:00
Sascha Schumann
f2608c3fdb build.mk can be used to generate build tools. It is usually
faster than buildconf, since it rebuilds only components, if
it is necessary. To use it, run

    $ make -f build.mk
1999-10-10 01:23:15 +00:00
Andi Gutmans
ec04c922aa - Shouldn't be needed 1999-10-09 20:37:08 +00:00
Andi Gutmans
37159e7863 - God damn this sucked. I hopefully fixed the problems with classes although
we might need to clean stuff up a bit.
1999-10-09 20:29:36 +00:00
Sascha Schumann
1df149ec1a Define RTLD_NOW to DL_NOW, if RTLD_NOW is not defined (for OpenBSD). 1999-10-09 18:03:23 +00:00
Thies C. Arntzen
f352444541 added zval_del_ref() function 1999-10-07 12:20:40 +00:00
Andi Gutmans
5fed1466ef - Reverse my patch 1999-10-07 04:38:03 +00:00
Andi Gutmans
e3d0c91dbb - Fixed memory leak with this pointer. It was somtimes initialized with refcount
of 2 instead of 1.
- Also fixed a place where object.ptr_ptr is set to pointing to a zval* instead
  of zval**. I don't think this is ever used so we might be able to remove it
  altogether.
1999-10-06 17:45:15 +00:00
Thies C. Arntzen
c6b91f789d fix for using resources as array indices 1999-10-06 15:09:26 +00:00
Sascha Schumann
b510a6d11f More portability stuff 1999-10-05 15:13:22 +00:00
Sascha Schumann
2785fbce1e OSF/1 V4.0 wants -lcxx 1999-10-05 13:50:13 +00:00
Sascha Schumann
1877b0779c This causes link problems with anything higher than -O0. 1999-10-05 11:17:04 +00:00
Sascha Schumann
590f9c1dee Add necessary rule. 1999-10-04 15:35:16 +00:00
Sascha Schumann
8ae3f4b027 Use libtool to build. 1999-10-04 15:20:12 +00:00
Thies C. Arntzen
ca1d1f832a use getParametersEx for all builtin functions 1999-10-04 13:27:12 +00:00
Thies C. Arntzen
6847fefad9 added add_*_resource() and add_*_bool() functions 1999-10-04 11:42:46 +00:00
Andi Gutmans
1c0f136405 - Hooray. This might actually work. (I hope) 1999-10-03 20:06:21 +00:00
Sascha Schumann
a0296da876 Make it executable. 1999-10-03 15:49:27 +00:00
Andi Gutmans
56834ff66a - Another locking fix. 1999-10-02 18:02:10 +00:00
Andi Gutmans
e40667440d - Fixed locking problem when fetching string offsets 1999-10-02 16:40:25 +00:00
Zeev Suraski
77ddd3a35b Fix the leak reported on the PHP 3 list (isset() on string offsets) 1999-10-02 15:56:49 +00:00
Andi Gutmans
86357a9c27 - Move is_ref back to being an unsigned char and not a bit field. 1999-10-01 23:31:39 +00:00
Andi Gutmans
4dd47ffbc1 - Remove locking support completely 1999-10-01 23:26:00 +00:00
Andi Gutmans
03d354dcf9 - For Andrei. Implement references in array() initializations 1999-10-01 10:00:05 +00:00
Zeev Suraski
dbccd75b06 *** empty log message *** 1999-09-29 21:46:37 +00:00
Andi Gutmans
202d7dd216 Fix leak in += with arrays 1999-09-29 17:45:44 +00:00
Andi Gutmans
06d04d15a8 - Fix SEND_VAR problem after fetch'ing a variable and not knowing the fetch type 1999-09-29 17:18:36 +00:00
Thies C. Arntzen
446e5d0fff added add_property_resource 1999-09-29 15:25:06 +00:00
Andi Gutmans
59d5462a6a - Stop using the locking mechanism and start using refcount.
Now we know when we need to free but we still need to support it
1999-09-28 17:37:14 +00:00
Andi Gutmans
b56fd4602f - First part of the patch which makes reads use ptr and not ptr_ptr. 1999-09-28 16:03:09 +00:00
Sascha Schumann
7ed68c0f53 Provide alternative istdiostream.
This has been tested with Sun WorkShop 4.2 C++ which does not
    contain class istdiostream.
1999-09-28 11:54:02 +00:00
Sascha Schumann
b7a1130143 Actually allow to set CXXFLAGS 1999-09-26 20:59:47 +00:00
Sascha Schumann
0ac169b474 Build communication channel and add checks for C++ library 1999-09-26 20:12:05 +00:00
Andi Gutmans
4fff0386ac - Changed Ts{}.var to Ts{}.var.ptr_ptr. 1999-09-26 05:45:18 +00:00
Sascha Schumann
d8895c02f7 Add _ex API implementation for booleans. 1999-09-24 19:22:25 +00:00
Zeev Suraski
85844ace95 Exify the standardized resource stuff 1999-09-24 14:03:45 +00:00
Andi Gutmans
63c15d292a - Fix bug #2364.
I haven't checked all of the conversion macros yet but there's a change
  there are more such bugs there.
1999-09-23 16:13:31 +00:00
Sascha Schumann
4efa22c84e Fix vpath build w/ thread-safe enabled on Unix. 1999-09-23 16:07:16 +00:00
Thies C. Arntzen
49c891f2cf preliminary fix for each until andi & zeev clean up! 1999-09-22 09:57:42 +00:00
Thies C. Arntzen
5f3515652a if you pass NULL as the resource_type_name to zend_fetch_resource*&friends the functions will not print any warnings if the resource is not found! 1999-09-22 09:46:44 +00:00
Andi Gutmans
228a537bbe - Fix problem where function parameter fetches were created too late. 1999-09-21 20:00:01 +00:00
Zeev Suraski
a30f028a12 Add get_func_args() 1999-09-21 07:31:24 +00:00
Zeev Suraski
9f1d0dec47 *** empty log message *** 1999-09-21 00:46:22 +00:00
Andi Gutmans
68217ef564 - Move some more Zend internal functions from PHP 1999-09-20 21:28:37 +00:00
Andi Gutmans
5e3bbea0ff - Next part of locking fix.
$var = expr; and $var += expr; first create code for expr and later on
  for the fetch_w of $var.
1999-09-20 18:17:32 +00:00
Andi Gutmans
7831d30265 - Newline for Sun's compiler 1999-09-20 17:01:38 +00:00
Andi Gutmans
06a18f169b - Add some internal functions to Zend 1999-09-20 16:56:09 +00:00
Andi Gutmans
babad2694e - First step in fixing locking problem. Array fetches are now always done last.
Later on we will want to delay the write fetches even longer until after their
  resulting expression is parsed. The way it is now, will make it very easy
  to delay as long as we need.
1999-09-20 15:44:30 +00:00
Andi Gutmans
82c8a9e745 - Indirect references had all of the fetches by mistakenly backpatched.
Actually all of the fetches are supposed to be read, except for the last
  one.
1999-09-20 14:45:36 +00:00
Zeev Suraski
7a4a5944f9 Added zend_num_args() and zend_get_arg() 1999-09-20 13:00:35 +00:00
Zeev Suraski
13d840bc3f Add a file in which we can put Zend builtin functions 1999-09-20 12:24:39 +00:00
Andi Gutmans
1ac04fe9f4 - Try to fix the leak Rasmus reported. It's pretty sucky code so I'm really
not sure this fix is OK.I can't remember all of what we did there.
1999-09-18 22:07:12 +00:00
Zeev Suraski
6ddd686141 Safer behavior 1999-09-18 13:07:45 +00:00
Thies C. Arntzen
aa5102490a make SUNs c89 happy 1999-09-17 13:57:24 +00:00
Thies C. Arntzen
20ee106672 no // in the sources please 1999-09-17 12:16:21 +00:00
Thies C. Arntzen
83bbb90d10 added newline at end of file 1999-09-17 12:14:31 +00:00
Zeev Suraski
567b3cef6b - Fix bug #2318 1999-09-17 02:06:12 +00:00
Zeev Suraski
52e769d883 Introduce convert_to_*_ex() 1999-09-16 23:15:34 +00:00
Sascha Schumann
119b85b736 this helps compiling on non-ANSI C compliant platforms 1999-09-16 14:06:35 +00:00
Stig S. Bakken
af1e5ad881 Make sure HAVE_LIBDL gets defined.
Disable more C++ tests when not configured for thread safety.
1999-09-13 11:29:44 +00:00
Zeev Suraski
5f1793e21c Make this class instanciatable 1999-09-12 19:27:50 +00:00
Sascha Schumann
c656292b96 check for c++ only, if thread safety is enabled 1999-09-12 14:14:34 +00:00
Zeev Suraski
ca1b3ffbc8 Shut up a warning 1999-09-10 16:16:24 +00:00
Andi Gutmans
22f066e708 - Add foreach() freeing code.
- Fix switch() freeing code to only free current function's switch expressions.
- I have a feeling break expr; in a switch where expr > 1 leaks because it
  won't free all of the expressions. Fix is probably not trivial.
1999-09-09 14:15:17 +00:00
Andi Gutmans
f0a988a26a - Fix leak when decrementing strings which actually are longs. 1999-09-09 12:59:09 +00:00
Andi Gutmans
67daaa7aac - Fix for floating point array offsets. Same behaviour as in PHP 3.0. We
casted to (long).
1999-09-08 20:38:08 +00:00
Andi Gutmans
afecff3aa4 - Add -b option to flex++ 1999-09-08 17:16:22 +00:00
Stig S. Bakken
928863f85b define tests first, use after. 1999-09-07 09:02:41 +00:00
Andi Gutmans
4bc3097e6f - Fix win32 compile 1999-09-06 20:43:35 +00:00
Andi Gutmans
a0bad70bd1 - Make zend compile again in Win32. 1999-09-06 20:33:40 +00:00
Stig S. Bakken
623406cf2b hand-patched some MSVC files 1999-09-06 16:15:27 +00:00
Stig S. Bakken
009025e00d * header file cleanup
* fixed --enable-thread-safety build for UNIX

I don't have a Win32 environment available, could someone please try
compiling on Win32 to see if I got all the header file stuff right there?
1999-09-06 16:14:08 +00:00
Andi Gutmans
2807ba18e1 - Oops 1999-09-05 19:37:24 +00:00
Andi Gutmans
99947a251e - Shift around header files. 1999-09-05 19:03:35 +00:00
Zeev Suraski
7d33215124 Fix a stupid bug (from stefan@roehri.ch) 1999-09-04 21:58:51 +00:00
Zeev Suraski
63b272998c Damn, forgot to commit that 1999-09-03 23:54:41 +00:00
Zeev Suraski
3feb4b3bdd Add new API for resources 1999-09-03 19:12:07 +00:00
Sascha Schumann
690575e51f Add global startup/shutdown functions 1999-09-03 17:43:10 +00:00
Zeev Suraski
18d11eea40 Revert the IS_RESOURCE patch. It had some unintended behavior. 1999-09-03 15:22:04 +00:00
Zeev Suraski
69fa5199bc Let $GLOBALS actually work... 1999-09-03 01:34:52 +00:00
Zeev Suraski
7b083fe5d1 Release resources when converting to other types (fix Thies's reported problem) 1999-09-03 00:11:47 +00:00
Zeev Suraski
a3f77686ef Use \0NameFilenameLineno as key instead of numeric index for runtime defined functions 1999-09-02 21:06:05 +00:00
Zeev Suraski
3a52ee44f5 *** empty log message *** 1999-08-28 21:51:12 +00:00
Zeev Suraski
81e0131bc9 *** empty log message *** 1999-08-28 21:43:24 +00:00
Zeev Suraski
cda27ae9ac Beef up debug macros 1999-08-28 10:18:54 +00:00