Commit Graph

448 Commits

Author SHA1 Message Date
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
Zeev Suraski
023cb6474b Fix a crash bug in case of aborted execution 1999-08-27 21:21:04 +00:00
Zeev Suraski
aa8b27ba1d Better debug macros 1999-08-27 19:17:19 +00:00
Andi Gutmans
02822cbc33 - Damn. It wasn't a correct fix. This should do it.
When the zval ** are equal we don't want to assign_ref, in any other case
  I can think of we do want to assign_ref.
1999-08-26 07:33:53 +00:00
Andi Gutmans
2c88f2950c - Fix leak when global is used in the global scope. 1999-08-26 07:26:15 +00:00
Andi Gutmans
1bfb1f7958 - Fix when redefining classes at run-time. 1999-08-26 06:47:45 +00:00
Sascha Schumann
8b44285b90 make it compile with gcc again 1999-08-25 21:54:00 +00:00
Andi Gutmans
746ce67b66 - Add hash_apply_with_arguments() 1999-08-25 19:02:13 +00:00
Andi Gutmans
c5d640d8af - More elegant fix for Win32 include_path 1999-08-25 13:46:52 +00:00
Andi Gutmans
c7f7b1c3d6 - Temporary fix to allow Win32 MT safe version to use zend_fopen(). 1999-08-25 12:20:50 +00:00
Andi Gutmans
48a8b14a47 - Fixed a specific memory leak linked to locking. 1999-08-23 19:02:28 +00:00
Sascha Schumann
d82728c4d0 This changes makes it work on egcs 1.1.2/Alpha 1999-08-22 19:43:04 +00:00
Sascha Schumann
433880bc6e remove checks 1999-08-22 18:34:40 +00:00
Zeev Suraski
6313238c63 Fix for Thies's UMR 1999-08-20 17:02:11 +00:00
Andi Gutmans
e5fbf4414a - Make sure expr_list and echo_list are either empty or comma seperated
expressions
1999-08-19 15:15:34 +00:00
Thies C. Arntzen
9e9050a428 on unix ZTS gets defined in zend_config.h 1999-08-18 15:26:39 +00:00
Zeev Suraski
50bfff5502 Fix #2012 1999-08-17 22:31:45 +00:00
Zeev Suraski
96fd258d07 Fix #2070 1999-08-17 21:36:30 +00:00
Andi Gutmans
acd6114fa7 - Add some ZENDAPI's 1999-08-17 19:25:22 +00:00
Andi Gutmans
a08dc937c7 - Oopsie 1999-08-15 19:38:10 +00:00
Andi Gutmans
b5f5e9a6d1 - Optimize the execute stack a bit. 1999-08-15 19:29:39 +00:00
Zeev Suraski
96d4220a5d Fix several class issues 1999-08-14 12:54:17 +00:00
Zeev Suraski
ef5b7e212d Generate better warnings for class/function redefinitions 1999-08-14 11:50:36 +00:00
Andi Gutmans
28f9dc6e56 - Got rid of the C++ comments. 1999-08-10 15:43:32 +00:00
Andi Gutmans
11781bdaa8 - Thies's crash fix. 1999-08-09 16:39:13 +00:00
Zeev Suraski
720d32f581 Fix a few leaks 1999-08-07 23:04:01 +00:00
Zeev Suraski
0487650536 Fix a bug in call_user_func_ex() 1999-08-06 21:43:49 +00:00
Zeev Suraski
6393ab1486 Now that's an annoying bug. 1999-08-06 16:54:32 +00:00
Zeev Suraski
f95edc016b Introduce call_user_func_ex() 1999-08-06 15:24:10 +00:00
Zeev Suraski
4f2dd59e24 *** empty log message *** 1999-08-06 11:12:08 +00:00
Andi Gutmans
bbe27ffae9 - Initialize extended value's and put the fetch_type in it's own variable
name.
1999-08-03 18:54:49 +00:00
Andi Gutmans
07e0885519 Make set_compiled_filename() return a pointer to the allocated file name 1999-08-02 18:40:10 +00:00
Zeev Suraski
01c2701a0f These aren't necessary 1999-07-31 18:48:47 +00:00
Zeev Suraski
620d013499 Support symbols in any symbol table, not just the active one 1999-07-30 14:17:08 +00:00
Andi Gutmans
447eb3b031 - Damn that's more like it. 1999-07-30 12:27:04 +00:00
Andi Gutmans
2c32cc81dd - Cut&paste crap 1999-07-30 12:23:12 +00:00
Andi Gutmans
e9e7bc6db3 - Add ptr_stack_n_{push,pop} in order to speed up function calls a bit.
There seems to be no reason for stack->top in the ptr_stack except for
  when realloc()'in the stack. I think I'll remove it.
1999-07-30 11:55:53 +00:00
Zeev Suraski
48ffdd79f7 * Setting variables in the global scope wasn't handling is_ref's properly 1999-07-30 02:49:12 +00:00
Andi Gutmans
739132e58d - Fixed a leak when doing inheritance. The parent class name wasn't being freed.
- Fixed a stack leak. Functions that had late argument binding were set up as
  INIT_FCALL_BY_NAME but were using DO_FCALL and not the corresponding
  DO_FCALL_BY_NAME.
1999-07-29 12:24:58 +00:00
Andi Gutmans
741ca16711 - Fixed various inheritance problems & Andrey's leak 1999-07-28 17:59:55 +00:00
Zeev Suraski
879bfc7a34 Inherit parent's constructor 1999-07-27 20:34:31 +00:00
Zeev Suraski
c4bc4871ee Fix runtime inheritence (child functions/members should have higher precedence) 1999-07-27 20:14:58 +00:00
Andi Gutmans
348b2f0730 - Add missing lock 1999-07-27 18:35:22 +00:00
Andi Gutmans
88322d2ea0 - Fix up the new operator a bit more. 1999-07-27 17:30:16 +00:00
Zeev Suraski
9d0d2e5a69 Set reference count and is_ref values for new objects 1999-07-27 00:14:34 +00:00
Zeev Suraski
09628fd51e - Fixed a memory leak when using assignment-op operators with lvalue of type
string (or array/object)
1999-07-26 21:56:45 +00:00
Zeev Suraski
075146773f *** empty log message *** 1999-07-26 21:31:40 +00:00
Zeev Suraski
41308d4b43 Fix a bug in inheritence from classes defined in include files, that are
inherited from require()'d files
1999-07-26 21:18:35 +00:00
Andi Gutmans
7af5579e3f - Oops I erased this by mistake 1999-07-26 19:35:57 +00:00
Andi Gutmans
7d77a63342 - Should be a complete fix now. This break away code should maybe be made
somewhat generic
1999-07-26 19:32:13 +00:00
Andi Gutmans
fe0fbdc5b6 - Temporary fix for "this". Have to fix it tomorrow. 1999-07-26 19:24:54 +00:00
Andi Gutmans
221c80d26d - Fix compile error. Weird that Visual didn't catch this one. 1999-07-26 18:56:54 +00:00
Andi Gutmans
8f51f72dc6 - Fix the new operator incompatibility.
- I commented PHP_FUNCTION(strtotime) in datetime.c because it stopped
  win32 from compiling. This needs to be fixed!!!
- Check out libzend to compile the tree now.
1999-07-26 16:57:06 +00:00
Zeev Suraski
0cdb7d6a29 Fix that memory leak... nested function issue remains 1999-07-24 14:38:05 +00:00
Zeev Suraski
9c754da0fc Fix RETURN & SWITCH memory leak issue 1999-07-24 11:43:21 +00:00
Zeev Suraski
1b6fae101a Thoroughly fix the SWITCH problem. No RETURN handling yet. 1999-07-24 11:24:19 +00:00
Zeev Suraski
028cf1a368 Fix bug #1812 1999-07-23 18:41:58 +00:00
Zeev Suraski
84aa8cce64 * Add an API macro users can use to ensure an array member can be modifed
before they modify it.
* Fix a bug and remove redundant code in convert_to_long() (booleans and
  resources weren't changing their types
1999-07-23 16:02:51 +00:00
Zeev Suraski
5bae591f88 New constants 1999-07-22 22:17:49 +00:00
Stig S. Bakken
f5bfd16b0b identify ourselves 1999-07-22 20:20:11 +00:00
Andi Gutmans
acb9cae36d - Include alloca.h when need and available. 1999-07-20 18:26:56 +00:00
Andi Gutmans
bf8c6dbd99 - Get rid of C++ comments 1999-07-20 13:01:30 +00:00
Zeev Suraski
8d1de13aef 0.91 update 1999-07-19 20:02:12 +00:00
Andi Gutmans
e78fc33c35 * Fix Zend version
* Fix a method call bug
1999-07-19 19:58:44 +00:00
Andi Gutmans
8a9d0fa9eb License update 1999-07-19 17:52:38 +00:00
Andi Gutmans
353a2d38d8 Make error codes PHP 3.0 compatible 1999-07-19 16:17:40 +00:00
Andi Gutmans
e3daad2d67 - Should fix the memory leak when returning from the main scope. 1999-07-18 17:33:51 +00:00
Zeev Suraski
101e1f4c0f Debug on by default 1999-07-17 13:24:53 +00:00
Zeev Suraski
d66fad5fcd Ignore T_PHP_TRACK_VARS in the parser (handled in the scanner) 1999-07-16 16:42:49 +00:00
Zeev Suraski
b5b1117760 License update 1999-07-16 14:58:16 +00:00
Andi Gutmans
91d7ba7610 Change true/false back to 1/"" 1999-07-15 20:38:00 +00:00
Andi Gutmans
da648c0fb1 Fix a lock issue 1999-07-15 19:59:18 +00:00
Sascha Schumann
138dd94c8d disable zend_handle_sigsegv 1999-07-15 12:17:34 +00:00
Andi Gutmans
762158aa65 Fix thread unsafe constants startup 1999-07-14 19:49:19 +00:00
Andi Gutmans
fec59d3b4d - License update
- Fix multithreaded constants startup
1999-07-14 16:00:47 +00:00
Andi Gutmans
078c3ce198 - Fix for boolean convert to number 1999-07-14 09:10:14 +00:00
Andi Gutmans
4dc22e32b6 - Fixed a purify warning 1999-07-12 18:07:01 +00:00
Zeev Suraski
3b037ebbe9 Oh, that dumb bug. 1999-07-10 22:50:44 +00:00
Andi Gutmans
44947bf563 Ok, so we do have to lock in there 1999-07-10 18:46:20 +00:00
Andi Gutmans
fb7a4b6486 Fix assignments of reference variables 1999-07-10 16:56:56 +00:00