Commit Graph

355 Commits

Author SHA1 Message Date
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
Zeev Suraski
dc933fc50b Woops, fix. 1999-07-10 12:44:56 +00:00
Zeev Suraski
909590ba7b Put the garbage in the garbage bin 1999-07-10 11:47:16 +00:00
Zeev Suraski
cccd2445ee Get rid of AiCount completely 1999-07-10 11:45:23 +00:00
Zeev Suraski
82563bde60 Final tweaks 1999-07-10 10:55:55 +00:00
Zeev Suraski
03d33b2f88 More locking work 1999-07-10 09:29:02 +00:00
Zeev Suraski
6fcf8aa12c *** empty log message *** 1999-07-09 21:00:24 +00:00
Zeev Suraski
0fadd053fa More stuff 1999-07-09 20:57:29 +00:00
Zeev Suraski
2a6da7814c Step 4:
Move to a 7-bit counter (not fully implemented yet)
1999-07-09 20:43:59 +00:00
Zeev Suraski
6ec1acbe32 Phase 3:
Use a single bit to mark IS_REF variables
1999-07-09 18:19:48 +00:00
Zeev Suraski
5f62c347c7 Step 2:
Rename is_ref to EA
1999-07-09 17:44:41 +00:00
Zeev Suraski
81d901b14d Step 1 in nuking the garbage collector:
- Change the hash destructor to return int
- Don't kill the bucket on hash_destroy if the destructor returns 0
1999-07-09 17:24:47 +00:00
Zeev Suraski
cdce334c56 *** empty log message *** 1999-07-09 11:19:38 +00:00
Zeev Suraski
cc26d0e609 Send a SIGSEGV instead of exiting, to trigger a core dump 1999-07-09 11:10:19 +00:00
Zeev Suraski
6abe9c34d9 * Support recoverable failure from erealloc()
* Fix the shutdown code on an unrecoverable erealloc() failure
1999-07-09 11:03:56 +00:00
Zeev Suraski
81f5522210 Fix the mess in SIGSEGV handling, hopefully 1999-07-09 07:35:13 +00:00
Zeev Suraski
d894cf44d8 Support definition of classes that are derived from classes that are defined in runtime 1999-07-08 16:55:27 +00:00
Sascha Schumann
fdc1b9262d enable it, until we find a better way 1999-07-06 21:02:07 +00:00
Sascha Schumann
52308cd368 make Solaris gcc happy 1999-07-05 17:05:38 +00:00
Sascha Schumann
f6164dbf3a use void * instead of long for 64-bit test 1999-07-05 10:51:11 +00:00
Thies C. Arntzen
eb5c6da5a4 added RETVAL_RESOURCE and RETURN_RESOURCE 1999-07-05 06:26:29 +00:00
Zeev Suraski
d189972737 Make convert_to_string() regard false as "" instead of "0" 1999-07-04 23:50:58 +00:00
Sascha Schumann
c2b8a4667b don't wipe files for distributions 1999-07-03 19:37:55 +00:00
Sascha Schumann
d6169276dd checking for ints won't work, since they are 32 bit on both platforms 1999-07-03 18:46:10 +00:00
Zeev Suraski
baa75917c8 Support isset()/empty() for string offsets 1999-07-03 18:03:02 +00:00
Zeev Suraski
063051d6ac Fix a crash 1999-07-03 16:05:58 +00:00
Sascha Schumann
7bbd454143 add usual rhapsody hack 1999-07-03 02:45:46 +00:00
Sascha Schumann
e0fff74d41 missing DL_HANDLE broke build 1999-07-03 02:44:11 +00:00
Sascha Schumann
8b51ad8157 typo 1999-07-03 02:34:09 +00:00
Sascha Schumann
2a44f45cbe workaround for 64-bit platforms 1999-07-02 21:12:03 +00:00
Zeev Suraski
9ece796086 define zend_bool 1999-07-02 14:10:57 +00:00
Zeev Suraski
49d98c5a3f Make require accept any parameter 1999-06-30 17:17:39 +00:00
Zeev Suraski
98b6ddda90 * Make the memory leak reporting code much better with repeats
* Remove useless variables
1999-06-26 11:48:22 +00:00
Zeev Suraski
c471c77c58 Fix Thies's bug report 1999-06-22 20:24:51 +00:00
Zeev Suraski
3eac45ea80 * Fix concatenation of arrays (it was PHP 3.0 style, copying zval's instead
of zval *, and it wasn't using reference counting)
* Fix a memory leak in static array()'s with textual indices
1999-06-22 19:05:40 +00:00
Zeev Suraski
d035af4af1 *** empty log message *** 1999-06-19 20:42:15 +00:00
Zeev Suraski
138d601ab1 Add a standard get_ini_entry() to interface between Zend and the outside world 1999-06-19 20:22:56 +00:00
Zeev Suraski
8def18813f *** empty log message *** 1999-06-19 14:07:48 +00:00
Stig S. Bakken
5d4579a1f4 added INIT_FUNC_ARGS_PASSTHRU and SHUTDOWN_FUNC_ARGS_PASSTHRU 1999-06-16 11:03:57 +00:00
Stig S. Bakken
80f1ce5eed * added zend_binary_strcasecmp() 1999-06-15 22:32:51 +00:00
Zeev Suraski
c50cd2df99 We can't quite go with expr there (shift/reduce conflict), go with scalar. 1999-06-12 07:43:36 +00:00
Zeev Suraski
4bf413e358 require() improvement as per Andi's suggestion 1999-06-12 06:59:54 +00:00
Zeev Suraski
0d560de1b7 Make the concatenation operator use make_printable as well 1999-06-11 15:37:43 +00:00
Zeev Suraski
9f106c61ec Don't take failing on an include file so badly 1999-06-11 14:51:44 +00:00
Zeev Suraski
d6595d628c Support <?= 1999-06-11 13:56:04 +00:00
Zeev Suraski
d47d83511a E_ERROR -> E_COMPILE_ERROR in the compiler 1999-06-11 13:40:18 +00:00
Zeev Suraski
54d210427a Two fixes:
* The error generated by a failed class inheritence wasn't  properly
  displaying the file in which he error occured.
* Inheritence didn't work if the parent class had uppercase letters in it.
1999-06-11 13:37:29 +00:00
Zeev Suraski
963a004481 * Use to_string() instead of __print()
* Support boolean casts ((bool) and (boolean))
1999-06-11 11:17:43 +00:00
Zeev Suraski
99fd17df63 Change __print into to_string() 1999-06-11 11:02:38 +00:00
Zeev Suraski
da9faa2c3a * Make the output handling of variables much, much cooler.
Uses zend_make_printable_zval() instead of convert_to_string() now:

$foo = true;
print "\$foo is $foo";
will now print
$foo is true
(instead of "$foo is 1", earlier).

Also, with objects, it automatically tries to call __print() and use it as a printing
function.

For example:

class foo {
  function __print() { return "Foo Object"; }
};

$foo = new foo;
print $foo;

will print "Foo Object".
1999-06-11 10:44:26 +00:00
Zeev Suraski
c1f75b6fda Now THAT's an annoying bug. 1999-06-10 23:03:35 +00:00
Zeev Suraski
2fb5e56123 Fix 1999-06-09 21:40:52 +00:00
Zeev Suraski
95c9e3014a * Fix cases where you assign an array element to the parent array (the array was
being erased before the assignment, so the element was being smashed).
1999-06-09 21:39:12 +00:00
Zeev Suraski
b484f40c31 * Fix foreach() that receives a non array argument
* Clean up some C++ comments
1999-06-09 21:02:59 +00:00
Andi Gutmans
7ed4923441 - Fix the static array() initializing 1999-06-09 19:26:54 +00:00
Zeev Suraski
230846f6dd Replace error messages 1999-06-08 19:37:40 +00:00
Andi Gutmans
04b2c1d422 * Fix a by-name call/method call bug
* Clean and optimize the whole function call process
1999-06-08 18:33:31 +00:00
Zeev Suraski
fd4650b540 Add zend_hash_get_current_key_type() 1999-06-07 22:49:33 +00:00
Andi Gutmans
5b0ae2dff3 Work around a compiler bug - mark variables that are sent to functions that aren't yet
defined as FETCH_W (because they might end up being sent by reference)
1999-06-06 17:35:42 +00:00
Zeev Suraski
ed06a70f7f * Centralized shutdown
* Change shutdown order again
1999-06-05 20:00:00 +00:00
Zeev Suraski
89f139d3b0 Call the request_shutdown on modules before destroying symbol tables, so that
the session module can be implemented
1999-06-05 19:10:40 +00:00
Zeev Suraski
8b2fe60467 - Fixed Karl's bug report. It's not really a thorough fix, we really need to rethink the INIT_FCALL/DO_FCALL issue.
- Fixed numerous AiCount problems
1999-06-05 18:47:36 +00:00
Zeev Suraski
1b4b5c4a88 New $GLOBALS init 1999-06-04 13:09:24 +00:00
Zeev Suraski
cf757f7c89 Fix that GLOBALS leak. We were explicitly adding GLOBALS to the main symbol table,
but there's no reason to do it (INIT_GLOBALS takes care of it if necessary.)
1999-06-04 12:22:19 +00:00
Zeev Suraski
9108abc287 Minor updates (mostly __declspec() stuff) 1999-06-04 11:44:02 +00:00
Thies C. Arntzen
a3a60dd4e7 added is_ref=0 and refcount=1 to SET_VAR_* macros 1999-06-04 09:04:05 +00:00
Zeev Suraski
66a48f2131 T_BAD_CHARACTER is actually a string. 1999-06-03 23:59:33 +00:00
Andi Gutmans
1225d0307b - We weren't counting newlines in heredocs. The only place which is still questionable
is when there's a \ followed by a newline but it seems we have a parse error in this
case anyways.
- Fixed the alloca() macros so that the alloca() #define in win32 mode won't clash
with the real win32 alloca().
1999-06-03 21:06:03 +00:00
Andi Gutmans
c4b7426ec1 - Make execute() use less stack in thread-safe win32 due to Microsoft's shitty 256kb stack. 1999-06-01 18:47:53 +00:00
Zeev Suraski
63f2cc9fe9 *** empty log message *** 1999-05-31 18:39:29 +00:00
Andi Gutmans
52ec64359c Fixes 1999-05-31 18:33:12 +00:00
Sascha Schumann
88029643d0 * fix some casts
* introduce unary_op_type - cleaner than casting data voids to function ptrs
1999-05-30 13:28:56 +00:00
Zeev Suraski
cf4a2c3bfc That got fucked up when we went back to using uninitialized_zval 1999-05-29 23:37:26 +00:00
Sascha Schumann
b5dd397459 another VPATH related change 1999-05-29 23:20:55 +00:00
Zeev Suraski
f78d4f1a56 Fix a bug 1999-05-29 22:26:28 +00:00
Zeev Suraski
bcc1337d8c Support overwrite mode in zend_hash_merge() 1999-05-29 18:59:58 +00:00
Sascha Schumann
33507acca5 - clean is not called from automake. use CLEANFILES instead
- allow VPATH compilation
1999-05-29 18:13:14 +00:00
Zeev Suraski
b7ee45e13c Correct fix 1999-05-29 12:00:32 +00:00
Zeev Suraski
7068d4a201 *** empty log message *** 1999-05-29 11:02:37 +00:00
Zeev Suraski
24a21ca2e1 Fix a leak 1999-05-29 11:01:50 +00:00
Zeev Suraski
741b816136 * Support getThis() for internal functions.
* Fix 'new object or die' and AiCount issue thoroughly (earlier fix didn't
  work with the optimizer).
* Add new macros for standardized definition of classes.
* Only report AiCount problems if shutdown was not silent.
1999-05-28 12:06:59 +00:00
Zeev Suraski
3b5972ed4a Fix the AiCount issue with objects 1999-05-27 03:11:08 +00:00
Zeev Suraski
1f985ede74 Moved all #define's for SET_ and RETURN_ to zend_API.h 1999-05-27 01:44:17 +00:00
Zeev Suraski
033858e13d Avoid crashing if an error occurs before we open the first file. 1999-05-25 22:55:13 +00:00
Zeev Suraski
e115fdc6d6 The last fix was wrong 1999-05-24 16:48:01 +00:00
Zeev Suraski
cbcd462d46 Another operators fix 1999-05-24 16:43:47 +00:00
Zeev Suraski
97107dc440 boolean comparison didn't work with smaller-than and greater-than, something that
fucked up berber's site a bit.  fixed.
1999-05-23 22:07:04 +00:00
Zeev Suraski
ee7032f069 Sigh, another leak bites the dust. FREE_OP missing in case of a SEND_VAR. 1999-05-22 18:02:30 +00:00
Zeev Suraski
84bb91d762 I'm on a roll. Fix a nasty yet stupid AiCount bug 1999-05-22 17:30:09 +00:00
Zeev Suraski
05f6cf54f0 Warn about AiCount not zeroing out 1999-05-22 16:48:23 +00:00
Zeev Suraski
1250c43a39 * Add struct name to all typedef's so that they can be debugged with MSVC
* Fix an AiCount bug - list(...) = $var was using $var multiple times, and thus
causing AiCount to be decreased multiple times even though it was increased only
once for $var.  Mark all FETCH_DIM's so that they won't decrease AiCount, and only
decrease AiCount on the last FETCH_DIM.
* Fix a stupid bug - forgot to pass CLS_C to some compiler function.  For some reason
MSVC doesn't report these :I
1999-05-22 16:10:51 +00:00
Zeev Suraski
080105f79f Give more information and save log lines in memory leak reports 1999-05-22 11:20:56 +00:00
Zeev Suraski
87ba08d1d0 Avoid leaking fd's in case of failures 1999-05-22 02:13:01 +00:00
Zeev Suraski
ac94c83867 more fixes 1999-05-22 01:07:50 +00:00
Zeev Suraski
d56ae4f670 That wasn't supposed to slip in 1999-05-21 23:48:24 +00:00
Zeev Suraski
9dc0842e58 * Properly handle failed file opens in C++
* Properly handle failed require()'s within libzend
1999-05-21 20:20:32 +00:00
Zeev Suraski
f33c22c055 * Fix the comments issue. yymore() worked like a charm.
* Change all flex states to be prefixed with ST_
1999-05-21 17:31:49 +00:00
Zeev Suraski
9cb2cf1393 Optimize allocations into uninitialized_zval assignments 1999-05-20 20:00:59 +00:00
Andi Gutmans
3facf7cb7c - Updates we did today 1999-05-20 13:04:59 +00:00
Andi Gutmans
d79292d52b - Fix a small problem with class decelerations. 1999-05-20 09:08:29 +00:00
Andi Gutmans
0bc950bcd5 -Open curly braces fix? 1999-05-20 09:02:03 +00:00
Zeev Suraski
b0bfa458b5 * Fix all hash checks that checked Bucket.arKey for NULL, when it was changed
to char[1], these checks should have been changed to Bucket.nKeyLength==0
* Support runtime declaration of functions.  I ended up changing the grammar
  to catch top level functions vs. nested functions.  The reason is simple -
  if we don't have functions properly declared at compile-time, function calls
  cannot be resolved at compile time, and have to be resolved at runtime, which
  ends up being much much slower (without the optimizer, that is).
  It's no biggy though, the grammar change isn't that bad.
1999-05-15 15:47:24 +00:00
Zeev Suraski
b9fb0b8e4d If a require() dies, we must bail out (since it corrupts an existing op_array 1999-05-14 20:16:22 +00:00
Zeev Suraski
53f98a66cf Fix a bug 1999-05-14 19:04:37 +00:00
Stig S. Bakken
695b4f4d5e don't install Zend on the system 1999-05-14 18:42:06 +00:00
Zeev Suraski
67296f0704 Add \012 and \xff missing support to constant quoted string 1999-05-14 11:29:34 +00:00
Zeev Suraski
0b873a7899 *** empty log message *** 1999-05-12 23:05:17 +00:00
Stig S. Bakken
cefca57c9c install libzend.a and header files on "make install" 1999-05-12 20:12:15 +00:00
Stig S. Bakken
97ea66a045 add --enable-thread-safety option 1999-05-12 20:11:42 +00:00
Zeev Suraski
853d6c6206 Added prepend to llist 1999-05-12 18:06:14 +00:00
Zeev Suraski
6bc6dacf5c Fixes:
* Avoid closing stdin (I could have sworn I've committed that already)
* unclean_shutdown patches
1999-05-11 21:39:48 +00:00
Zeev Suraski
e22cce0dda Easier Win32 debug code 1999-05-11 21:38:39 +00:00
Zeev Suraski
473d1d7cf1 * Fix a bug that occured in case of parse errors. We need to restore the lexical state
even if the compilation failed.
1999-05-11 17:50:37 +00:00
Zeev Suraski
74a9ed7b3f Weed out all BoundsChecker-found bugs (including a serious file descriptor leak
in the C++ scanner)
1999-05-10 20:46:42 +00:00
Zeev Suraski
14a8e9b6c3 Change argument name 1999-05-09 14:56:38 +00:00
Zeev Suraski
bfbe86187e Almost forgot to commit those 1999-05-09 12:24:21 +00:00
Zeev Suraski
c5d8c389a5 Ok, I tested it now. It works very nicely! 1999-05-06 19:13:13 +00:00
Andi Gutmans
c8b2bf0a1d llist improvements 1999-05-05 19:24:46 +00:00
Andi Gutmans
fcaf734f94 - Don't support interactive mode when thread safe. 1999-05-02 19:07:46 +00:00
Zeev Suraski
064f75fd1b Several operator fixes. Should fix the MySQL problem. 1999-05-01 01:04:13 +00:00
Andi Gutmans
5dd7f27f0b - Free refcount when destroying the last class reference. 1999-04-30 23:32:03 +00:00
Andi Gutmans
202135bfac - Missed one place 1999-04-30 21:44:27 +00:00
Andi Gutmans
0e1f8ed58e - First try at fixing $a->foo[] syntax. 1999-04-30 20:27:36 +00:00
Andi Gutmans
91371c4340 - Move back to yyless(). I haven't tested it yet because it's taking too long
to compile and I have to disconnect
1999-04-30 17:35:38 +00:00
Zeev Suraski
9dd66bc2ae Fix Boris's problem (in my never ending struggle to show I never mean what I say
when I say something's not gonna happen :)
1999-04-30 17:29:18 +00:00
Zeev Suraski
bc3686c14a * Fix a problem with constant quoted strings, that was causing Thies's problem
* Remove a development-time printf
1999-04-30 10:46:48 +00:00
Andi Gutmans
95e2e023fb - No reason to handle newlines here. 1999-04-29 20:58:29 +00:00
Zeev Suraski
d90ea1a136 Make the C++ scanner support interactive input 1999-04-28 23:18:57 +00:00
Zeev Suraski
2493f68018 * Fix debugger+interactive mode bug
* Recognize whether an extension is with debug information or not
1999-04-27 11:00:59 +00:00
Zeev Suraski
0f195a79cd fix 1999-04-26 15:16:06 +00:00
Zeev Suraski
7c4a08381e Various thread safety fixes and DLL updates 1999-04-26 14:10:42 +00:00
Andi Gutmans
df6134bc42 -More commits 1999-04-26 03:03:39 +00:00
Zeev Suraski
208e81696f Another small fix 1999-04-24 17:16:39 +00:00
Zeev Suraski
f6971f17a9 dsp update 1999-04-24 16:52:40 +00:00
Zeev Suraski
e06a1ed265 Thread safety fixes 1999-04-24 16:16:11 +00:00
Zeev Suraski
8dd4a63366 Remove redundant includes 1999-04-24 09:26:09 +00:00
Zeev Suraski
cd07879f2d g++ compile fix 1999-04-24 09:08:03 +00:00
Zeev Suraski
1e9ce9528d *** empty log message *** 1999-04-24 09:01:30 +00:00
Zeev Suraski
5a5806e02a Cleanups, remove old ts code 1999-04-24 00:12:55 +00:00
Zeev Suraski
b2c5ef42d3 Arithmetics bug fix 1999-04-23 13:25:33 +00:00
Zeev Suraski
a458b4f6bd Support eval() and highlight_string() in the C++ scanner 1999-04-23 10:21:00 +00:00
Andi Gutmans
01575b9d9d - Use yyless() instead of unput() where possible. I'll erase the commented
out code in a day or so.
1999-04-23 06:14:06 +00:00
Zeev Suraski
1aa2c5c0b4 Ok, call me crazy, because I probably am.
Thread safe version now uses a C++ scanner object.  Works fully.
1999-04-23 03:32:33 +00:00
Zeev Suraski
551fe7780b Make token names uniform, they all begin with T_ now. 1999-04-22 23:08:42 +00:00
Stig S. Bakken
d9144155f5 state which aclocal.m4 and configure files are created 1999-04-21 20:33:33 +00:00
Stig S. Bakken
1ee30e61fc zend-parser.o and zend-scanner.o were included twice in libzend.a 1999-04-21 20:30:37 +00:00
Zeev Suraski
942f409292 * Change the thread safe project to create a C++ scanner.
* Add in a slightly modified skeleton file (only a couple of #if's for #include's
that we dont have in Windows)

It does NOT compile or work yet :)
1999-04-21 20:13:02 +00:00
Zeev Suraski
937270f319 Fix 1999-04-21 19:10:54 +00:00
Zeev Suraski
a9f9ae7920 Thread safety patch. It works now with 'just in time' resource initialization! 1999-04-21 17:26:37 +00:00
Zeev Suraski
52fcaa443b Thread-safe project 1999-04-21 15:35:57 +00:00
Stig S. Bakken
a9d3d0832a move automake back to before autoconf 1999-04-21 14:06:58 +00:00
Stig S. Bakken
9003b9a261 autoheader must be called after autoconf, automake after autoheader 1999-04-21 13:45:46 +00:00
Stig S. Bakken
bb74a94fa5 think before one commits 1999-04-21 13:26:27 +00:00
Stig S. Bakken
f68609b50f doh. cvs appears to ignore .in files by default 1999-04-21 13:24:39 +00:00
Zeev Suraski
7a87fcbbda Thread safety patch. We're still not quite there but it compiles again, and
more logic has been implemented.
1999-04-21 03:49:09 +00:00
Stig S. Bakken
9e4c7bd56c Makefile.in and aclocal.m4 are generated
added buildconf script
1999-04-20 01:12:53 +00:00
Zeev Suraski
b7c30c1bdf Return a success value from the startup function, so we can unload immediately
if it fails.
1999-04-19 21:39:18 +00:00
Stig S. Bakken
b227e385cc convert to automake 1999-04-19 20:10:26 +00:00
Andi Gutmans
9deab4118d Add a couple of ZEND_API's 1999-04-19 18:57:14 +00:00
Andi Gutmans
dd03a7a2f3 Support =unset as arguments 1999-04-19 16:28:05 +00:00
Stig S. Bakken
b515f34dd1 removed -lnsl and -lsocket checks from zend 1999-04-19 13:51:13 +00:00
Zeev Suraski
1ae9891e7e AiCount needs to be decreased here 1999-04-18 19:55:42 +00:00
Zeev Suraski
342c6e0b23 Whatnot:
* updated alloc_persist to use critical sections
* changed extension shutdown to two-phase
* updated dependencies
* PR support (don't remember if there was any really)
1999-04-18 15:11:52 +00:00
Andi Gutmans
b32b2831d8 - one more place which seems to have needed fixing. I don't have time to look
more into it. I hope we don't have anymore places which need fixing.
1999-04-15 17:43:16 +00:00
Andi Gutmans
3d631c4ca0 - Should fix the pass by reference problem. This happened because we moved
start from arg 1 now and not arg 0. There might be more places which need fixing
 like in the executor but the bug seems OK now.
1999-04-15 17:41:21 +00:00
Zeev Suraski
fa76f0c903 Compile fix 1999-04-14 21:03:25 +00:00
Andi Gutmans
39f9487ee1 -Tiny patches 1999-04-14 19:53:33 +00:00
Zeev Suraski
76ceb9ad44 Better detection 1999-04-13 22:09:59 +00:00
Zeev Suraski
7c2155c1ad Move Ai stuff before get_zval_*(), like Andi suggested. Fixes Sascha's huge
memory leak
1999-04-13 20:50:31 +00:00
Andi Gutmans
e1e2226b92 - Fix various memory leaks. 1999-04-13 19:28:03 +00:00
Andi Gutmans
d86ed8207c Refcount bugfix 1999-04-13 17:49:14 +00:00
Andi Gutmans
3fcc6511f6 * Optimize argument_stack top lookup
* Fix a nasty bug in zend_ptr_stack_clean()
1999-04-13 17:03:10 +00:00
Zeev Suraski
533f135987 Remove unnecessary stack 1999-04-12 21:50:49 +00:00
Zeev Suraski
ad9b13eb9e off by one 1999-04-12 21:06:29 +00:00
Zeev Suraski
1dff49ec83 Minor optimization 1999-04-12 20:49:02 +00:00
Zeev Suraski
3ca6d6113a Make functions that don't take arguments somewhat happier:) 1999-04-12 19:44:47 +00:00
Zeev Suraski
714f450a00 This should take care of "this" for user-defined functions. It wasn't yet working
for built-in functions anyway, this one is coming soon.
1999-04-12 19:40:48 +00:00
Zeev Suraski
15be5f0b4a Destroy the resource list after destroying the symbol table, otherwise the
auto-destructor for resources are run when the resource list is no longer valid
1999-04-12 18:40:18 +00:00
Zeev Suraski
39a7f4c306 This patch is a go. Not fully optimized yet, but working properly.
Prepatch tagged as BEFORE_STACK_PATCH.
1999-04-12 18:29:09 +00:00
Zeev Suraski
b06c5731fc Minor fixes:
missing zval_copy_ctor()
	messed up AiCount fix
1999-04-12 17:59:36 +00:00
Zeev Suraski
4472d05025 Allow runtime setting of the memory limit 1999-04-10 16:24:28 +00:00
Zeev Suraski
2e9886de3c Get rid of php3_ini in Zend 1999-04-10 14:44:35 +00:00
Zeev Suraski
7656c77c38 We need to initialize the utility values after we initialize the INI file, which in
turn, is after we initialize Zend.  Set the utility values separately from Zend's
initialization
1999-04-10 11:21:55 +00:00
Andi Gutmans
906dc43ed7 - Changed here-docs to <<< followed by whitespace. 1999-04-09 20:47:29 +00:00
Andi Gutmans
5cb576d81a - I guess print $GLOBALS and print "$GLOBALS" should yield the same result
so I returned the one in encaps_var.
- Made INITAL_OP_ARRAY_SIZE smaller (64? can't remeber). I don't think the
  erealloc()'s during compile time are such a biggy, we might make it even
  smaller. We can have a configure time option as to it's size.
1999-04-09 15:18:29 +00:00
Andi Gutmans
2d7b9b038d - Support $GLOBALS in cvar's. Now list(..) = each($GLOBALS) will work.
- Remove support of $GLOBALS in enacapsed strings. print "$GLOBALS" isn't
  supposed to work in any case.
1999-04-09 15:01:13 +00:00
Zeev Suraski
43c0e94ac9 Honor a semicolon on the same line as an ending token of a heredoc 1999-04-09 11:19:03 +00:00
Zeev Suraski
0a6e9ddd7f Prevent class redeclarations 1999-04-09 10:59:58 +00:00
Zeev Suraski
9d8e0db38f * Add arguments to shutdown functions
* Remove traces of php_ini stuff
1999-04-08 21:14:50 +00:00
Zeev Suraski
f2d5ca7482 "Our favourite mistake" 1999-04-08 20:27:08 +00:00
Zeev Suraski
17bdb70823 $GLOBALS support 1999-04-08 20:21:36 +00:00
Andi Gutmans
893160fcbe foreach() syntax has changed 1999-04-08 04:11:23 +00:00
Zeev Suraski
135da4b4fc Fix static assignment 1999-04-08 00:18:29 +00:00
Zeev Suraski
d1d96d04c6 Remove an unused variable 1999-04-07 23:09:09 +00:00