Commit Graph

1701 Commits

Author SHA1 Message Date
Andi Gutmans
ac7ed464b5 - Start adding parsed variable checks. 2001-12-16 19:45:49 +00:00
Andi Gutmans
880e7d8ce7 - Framework for knowing what kind of variable we just parsed.
- This will be used in compile-time error checking which couldn't be done
- at the level of the grammar.
2001-12-16 19:18:19 +00:00
Andi Gutmans
7c749c1897 - Rearrange grammar to allow dereferencing of objects returned from
- functions. It still crashes though.
2001-12-13 22:21:50 +00:00
Andi Gutmans
f4b832d277 - Fix crash bug in startup code.
- Start work on being able to reference global and local scope
2001-12-13 16:55:04 +00:00
Andi Gutmans
ce98c73f82 - Infrastructure changes for allowing to access the global scope from
- within a class scope.
- Fix the Zend.dsp project a bit. It seems someone pretty much killed it
- when commiting their own personal configuration. Please be careful in
- future.
2001-12-12 20:45:38 +00:00
Andi Gutmans
74efc41fc3 - Make classes have scope and function/constant lookups default to the class 2001-12-12 17:38:37 +00:00
Andi Gutmans
4214a056a1 - Merge from ZE1 2001-12-11 18:51:02 +00:00
Andi Gutmans
4cb97fa3b9 - Rename zend_class_entry.constants -> zend_class_entry.constants_table 2001-12-11 18:46:43 +00:00
Andi Gutmans
1dcef1e4ea - Start making scope change correctly when calling namespace functions.
- When inside a namespace fallback to global namespace when function
- or constant is not found.
2001-12-11 17:56:57 +00:00
Sebastian Bergmann
5b0b5b6ed5 Forgot to update the LICENSE. 2001-12-11 17:38:49 +00:00
Sebastian Bergmann
d863d52a5d Update headers. 2001-12-11 15:16:21 +00:00
Sebastian Bergmann
4345f8a0b5 MFZE1 (AIX fixes) 2001-12-11 09:17:38 +00:00
Sebastian Bergmann
ff4cc2c6e2 MFZE1 (added zend_strip mode in the highliter) 2001-12-11 06:30:30 +00:00
Andi Gutmans
3bfee898db - More namespaces work.
- Nuke memory leak.
2001-12-10 18:57:17 +00:00
Andi Gutmans
8460372395 - Fix crash with unhandled exceptions 2001-12-08 20:58:20 +00:00
Andi Gutmans
055709538c - Support constants. The following works now:
<?
	class foo {
		const GC = "foo constant\n";
	}

	define("GC", "Global constant\n");

	namespace;
	print GC;
	namespace foo;
	print GC;
	namespace;
	print foo::GC;

?>
2001-12-06 18:05:18 +00:00
Andi Gutmans
42486196ad - Initial work on changing namespace scope. Only methods & variables
- right now.
<?
	$hey = "Global hey\n";

	class foo {
		static $hey = "Namespace hey\n";
		function bar()
		{
			print "in foo::bar()\n";
		}
	}
	function bar()
	{
		print "in bar()\n";
	}

	bar();
	namespace foo;
	bar();
	namespace;
	bar();
	namespace foo;
	$bar_indirect = "bar";
	$bar_indirect();

	namespace;
	print $hey;
	namespace foo;
	print $hey;
	$hey = "Namespace hey #2\n";
	namespace;
	print $hey;
	$hey = "Global hey #2\n";
	namespace foo;
	print $hey;
?>
2001-12-06 17:47:04 +00:00
Andi Gutmans
fe94f59427 - Nuke the namespace work I did. It'll be redone differently. 2001-12-06 17:23:08 +00:00
Sebastian Bergmann
8b34428167 Document recent changes. 2001-12-05 07:04:16 +00:00
Andi Gutmans
5476706142 - Damn Zeev :) 2001-12-04 17:58:32 +00:00
Andi Gutmans
94cfe03da5 - Revert one of the changes because it might be before the memory
- manager has started.
2001-12-01 08:46:02 +00:00
Andi Gutmans
bb9a36cad1 - Use alloca() when possible. 2001-12-01 08:33:48 +00:00
Andi Gutmans
e858d27888 - Initial support for class constants. There are still a few semantic
- issues which need to be looked into but basically it seems to work.
- Example:
<?php
	class foo
	{
		const hey = "hello";
	}

	print foo::hey;
?>
2001-11-30 16:29:47 +00:00
Andi Gutmans
7f66d5e99a - Fix typo 2001-11-30 11:42:30 +00:00
Andi Gutmans
f289014922 - Support syntax for class constants (doesn't do anything yet but
- required some reworking of the grammar).
2001-11-27 17:46:31 +00:00
Andi Gutmans
7cd6ccc0ec - Support static $var = 0; style initialization of static class
- members. For example:
-	class foo {
-		static $my_static = 5;
-
-	}
-
-	print foo::$my_static;
2001-11-26 18:05:01 +00:00
Andi Gutmans
0d559f17cd - Fix crash and leak 2001-11-25 12:29:08 +00:00
Andi Gutmans
4f3eaaa854 - Whitespace 2001-11-25 08:58:59 +00:00
Andi Gutmans
d2da63f629 - Support static members. The following script works:
<?
	class foo
	{
		class bar
		{
			function init_values()
			{
				for ($i=1; $i<10; $i++) {
					foo::bar::$hello[$i] = $i*$i;
				}
			}

			function print_values()
			{
				for ($i=1; $i<10; $i++) {
					print foo::bar::$hello[$i] . "\n";
				}
			}
		}
	}

	foo::bar::init_values();
	foo::bar::print_values();

	for ($i=1; $i<10; $i++) {
		print $hello[$i]?"Shouldn't be printed\n":"";
	}
?>
2001-11-25 08:49:09 +00:00
Andi Gutmans
559d611a86 - MFZE1 2001-11-24 18:27:20 +00:00
Zeev Suraski
08615c6f68 MFZE1 2001-11-15 23:26:52 +00:00
Stig S. Bakken
78f108d31a add newline at end of file to avoid warnings 2001-11-05 00:17:28 +00:00
Stig S. Bakken
9382ddec52 non-zts compile fix 2001-11-05 00:16:33 +00:00
Andi Gutmans
a332f826a7 - Support instantiation of nested class. The following script now should
- work:
-<?php
-	class foo
-	{
-		function bar()
-		{
-			print "bar() in class bar\n";
-		}
-
-		class barbara
-		{
-			function bar()
-			{
-				print "bar() in class foo::barbara\n";
-			}
-		}
-	}
-
-	$obj = new foo();
-	$obj->bar();
-
-	$obj = new foo::barbara();
-	$obj->bar();
-
2001-11-04 19:30:49 +00:00
Andi Gutmans
48e54e0c7a - RISC OS patch by Alex Waugh 2001-11-03 13:35:14 +00:00
Andi Gutmans
2eccd95ca4 - Add some initializations 2001-11-03 12:19:52 +00:00
Andi Gutmans
b87194e0c6 - Add constructor to the zend_class_entry instead of looking it up each
- time by name.
- This will allow the next patch of being able to instantiate nested
- classes such as new foo::bar::barbara();
2001-11-03 11:59:14 +00:00
Andi Gutmans
0a682c6d70 - Fix internal classes 2001-10-29 18:10:36 +00:00
Andi Gutmans
26578c386d - Initial support for nested class definitions 2001-10-29 17:19:02 +00:00
Zeev Suraski
8b53a129f7 MFTGZE1 2001-10-27 09:43:38 +00:00
Andi Gutmans
89a0e85251 - Fix Zeev's MFZE1 2001-10-26 14:13:42 +00:00
Zeev Suraski
aecd5b89ee MFZE1 2001-10-23 01:23:36 +00:00
Andrei Zmievski
3ead31449f MFHZ1 2001-10-20 13:55:47 +00:00
Sebastian Bergmann
01850714ee MFZE1: Introduced extension version numbers (Stig) 2001-10-12 18:40:30 +00:00
Sebastian Bergmann
43c7615c51 MFZE1 2001-10-04 14:18:52 +00:00
Andi Gutmans
2eabb14dc7 - Merge the NAMESPACES_BRANCH. It wasn't a good idea to have a branch when
- the whole CVS tree is work in progress
2001-09-30 17:29:55 +00:00
Andi Gutmans
279b468bf7 - Bump it up in the right place 2001-09-27 08:08:33 +00:00
Sebastian Bergmann
76ccb015e8 Keep ZEND_CHANGES up-to-date. 2001-09-22 17:03:05 +00:00
Zeev Suraski
e42ab2c95f MFZE1 2001-09-22 14:03:27 +00:00
Zeev Suraski
17352812a3 MFZE1 2001-09-22 00:09:24 +00:00
Andi Gutmans
d58240d0f5 - Nuke unused enum 2001-09-20 15:50:11 +00:00
Zeev Suraski
483fc4c73a MFZE1 2001-09-19 22:34:11 +00:00
Andi Gutmans
88d408ee11 - MFZE1 2001-09-19 10:41:35 +00:00
Sebastian Bergmann
3bdddb4910 MFZE1 2001-09-19 10:25:04 +00:00
Sebastian Bergmann
da5a79d185 MFZE1 2001-09-19 10:06:09 +00:00
Brian Moon
b285fae0bc adding RFC for loose type requirements for functions 2001-09-17 16:01:20 +00:00
Zeev Suraski
f88c25b60e MFZE1 2001-09-16 16:48:38 +00:00
Zeev Suraski
9f61e47c24 MFZE1 (nuke cplusplus code) 2001-09-10 00:08:24 +00:00
Zeev Suraski
b06440bceb MFZE1 (support return value in execute_scripts) 2001-09-10 00:07:32 +00:00
Stig S. Bakken
d07cfabce4 remove bogus comment :) 2001-09-08 11:17:25 +00:00
Stig S. Bakken
b07b4c6029 RFC document for namespaces 2001-09-08 11:02:06 +00:00
Stig S. Bakken
4585ae9fb1 wrapped to 80 columns :) 2001-09-08 08:55:42 +00:00
Andi Gutmans
d7536a8a5f - Shift around the variable parsing code to make it simpler. 2001-09-07 14:46:12 +00:00
Andi Gutmans
fc1abec531 - Fix warning (was fixed in ZE1 and not merged at some point). Please make
sure you merge patches!
2001-09-07 06:40:03 +00:00
Stanislav Malyshev
d082fb373d MFZE1 2001-09-05 09:29:28 +00:00
Andi Gutmans
7c4a0cc6cf - CLS_CC -> TSRMLS_CC 2001-09-03 16:57:49 +00:00
Sterling Hughes
c57ed1b93b spaces->tabs 2001-08-31 21:55:43 +00:00
Sterling Hughes
498f7fd90f MFZE1 2001-08-31 21:52:44 +00:00
Sterling Hughes
69c7346f0e MFZE1 2001-08-31 21:47:26 +00:00
Zeev Suraski
819ea51d00 MFZE1 2001-08-31 13:11:52 +00:00
Andi Gutmans
619702157b - Make it compile in thread-safe mode. 2001-08-30 17:27:43 +00:00
Andi Gutmans
560606d210 - Get rid of warning and C++ comments 2001-08-30 15:31:35 +00:00
Andi Gutmans
29f5dbe10b - Initial support for exceptions. 2001-08-30 15:26:30 +00:00
Zeev Suraski
4684d5f405 MFZE1 2001-08-30 12:08:23 +00:00
Zeev Suraski
b392fe4497 MFZE1 2001-08-28 09:23:22 +00:00
Andi Gutmans
0378e545a0 - Add sample RFC 2001-08-27 18:43:20 +00:00
Stanislav Malyshev
2a0a07b883 Add dlsym underscore detection, by Jani Taskinen 2001-08-26 15:25:55 +00:00
Andi Gutmans
b0970f1421 - MFZE1 2001-08-26 15:16:06 +00:00
Andi Gutmans
e2efa0196f - Merge Andrei's fix from Engine 1. Please commit patches to both trees! 2001-08-26 15:14:45 +00:00
Zeev Suraski
4757104e45 MFZE1 2001-08-21 12:29:12 +00:00
Zeev Suraski
9b3df86e8d MFZE1 2001-08-20 14:58:52 +00:00
Andi Gutmans
718f323edc - Fix compile problem 2001-08-19 15:23:25 +00:00
Zeev Suraski
4340c57ece MFZE1 2001-08-19 13:39:06 +00:00
Andi Gutmans
d87fa22532 - Merge Sterling's patches from ZE1 2001-08-18 18:16:49 +00:00
Andrei Zmievski
ea315a2e70 MFZE1 2001-08-17 17:42:43 +00:00
Zeev Suraski
b02df6f4ac MFZE1 2001-08-17 14:53:55 +00:00
Zeev Suraski
77c52275a1 MFZE1 2001-08-16 20:38:56 +00:00
Andi Gutmans
f909ff9ed0 - Try and nuke get_object_zval_ptr() 2001-08-16 15:01:25 +00:00
Andi Gutmans
6435c3e962 - Remove bogus notice 2001-08-16 14:42:28 +00:00
Andi Gutmans
290fc10af7 - Sync with ZE1 2001-08-16 14:12:03 +00:00
Andi Gutmans
ea48c0c46a - Fix a bug in method calls.
- Try to get the old copying behavior of objects to work (doesn't work yet).
2001-08-16 14:04:04 +00:00
Zeev Suraski
7fe3b91c67 MFZE1 2001-08-15 18:06:06 +00:00
Zeev Suraski
f72d907105 MFZE1 2001-08-14 15:24:20 +00:00
Zeev Suraski
ac0bee7ec9 MFZE1 2001-08-14 15:22:34 +00:00
Andi Gutmans
33539126d0 - MFZE1 2001-08-13 18:33:41 +00:00
Andi Gutmans
30bad123f0 - MFZE1 2001-08-13 15:38:07 +00:00
Andi Gutmans
b6eb324cd2 - Merge from Engine 1 2001-08-13 15:23:37 +00:00
Zeev Suraski
8722b31d8a MFZE1 2001-08-13 00:28:18 +00:00
Stanislav Malyshev
f5c5986344 _FUNCTION is used in definition, so use _D 2001-08-12 14:58:57 +00:00
Andi Gutmans
76a7a5bc18 - More work on making objects work 2001-08-11 18:26:47 +00:00
Andi Gutmans
532677e7ac - Fix some places which create objects. The fixes are ugly and will be
revised when things start working well
2001-08-11 18:04:07 +00:00
Zeev Suraski
4f6c95d17a Whitespace 2001-08-11 15:56:40 +00:00
Zeev Suraski
adf89828d2 Whitespace 2001-08-11 15:44:24 +00:00
Andi Gutmans
1751c4eba5 - Fix UNIX build. 2001-08-11 13:23:35 +00:00
Andi Gutmans
73d4931dac - Need to do some rewriting in the parser instead of this. 2001-08-11 10:47:41 +00:00
Andi Gutmans
f5ea49a647 - For Sebastian. Will allow to see you're using the Engine 2 CVS via
phpinfo()
2001-08-11 00:20:37 +00:00
Andi Gutmans
8b6f848cbb - Merge from Engine 1 2001-08-10 16:19:49 +00:00
Andi Gutmans
8ff094046d - A couple of fixes 2001-08-10 14:18:38 +00:00
Andi Gutmans
61edd1bf41 - Merge from Engine 1 CVS 2001-08-10 13:39:35 +00:00
Andi Gutmans
80b870e5d3 - Merge from Engine 1 tree 2001-08-09 03:58:58 +00:00
Andi Gutmans
9d11db1200 - Merge new $_GET, $_POST etc. patch from Engine 1 tree 2001-08-08 17:18:16 +00:00
Andi Gutmans
cb1a40f399 - Preliminary patch for method() dereferencing 2001-08-08 15:07:11 +00:00
Andi Gutmans
2f6cd308f9 - Merge zend_try fix from Engine 1 2001-08-08 15:06:08 +00:00
Zeev Suraski
b92a9c872f Migrate .dsp patches 2001-08-07 20:15:17 +00:00
Andi Gutmans
3d3eff12cb - Forgot to commit the updated dsp 2001-08-07 19:33:06 +00:00
Andi Gutmans
9802b1632c - More sync with latest CVS 2001-08-07 03:35:31 +00:00
Andi Gutmans
5af7770a81 - Sync Engine2 CVS with latest Engine CVS 2001-08-07 03:17:33 +00:00
Zeev Suraski
2c8ec7f994 Commit uncommitted build fix 2001-08-06 23:56:32 +00:00
Zeev Suraski
7ade3b30cb Fix an off by one lineno issue, in case of an implicit ; 2001-08-06 14:36:46 +00:00
Zeev Suraski
85875e83ae Better shared code 2001-08-06 14:26:05 +00:00
Zeev Suraski
609d58a4d6 Merge from branch - move to standard C scanners in thread safe mode 2001-08-06 13:48:51 +00:00
Andi Gutmans
e6697297b6 - Move to using Z_ macros 2001-08-06 02:52:03 +00:00
Andi Gutmans
54e871a9cc - Use Z_ macros 2001-08-06 02:48:55 +00:00
Zeev Suraski
c4ca84d3a1 More nulled-out macros 2001-08-05 17:07:59 +00:00
Zeev Suraski
fcc035108f TSRMLS_FETCH work 2001-08-05 01:37:10 +00:00
Zeev Suraski
c06dbe23bb Fix buglet 2001-08-03 16:08:01 +00:00
Zeev Suraski
e206bd3374 Fix macro 2001-08-03 08:15:16 +00:00
Zeev Suraski
66d9314b60 Implement fast memory allocation and reduced fragmentation under Windows. 2001-08-03 07:06:05 +00:00
Zeev Suraski
ded764461b Some compat macros 2001-08-03 07:02:46 +00:00
Zeev Suraski
7ecb33868c require_once()/include_once will return true in case a file was not included
because it was already included earlier.
Changed the default return value type of the include() family from long to
boolean
2001-08-02 17:27:19 +00:00
Zeev Suraski
c14baeece3 Avoid going over huge lists of functions, classes and constants.
Special thanks to the guys from the MS lab for the profiling tools :)
2001-08-02 07:00:43 +00:00
Zeev Suraski
7deb44e36d Some cleanup 2001-08-02 06:16:20 +00:00
Zeev Suraski
3aa5674a84 TSRMLS fixes 2001-08-02 05:25:29 +00:00
Zeev Suraski
f93bfc47df Implement fast scanning in the multithreaded environment 2001-08-01 02:36:05 +00:00
Zeev Suraski
982cd24aa4 the make Sebastian happy part of the day :) 2001-07-31 07:12:15 +00:00
Zeev Suraski
0b7fdbb690 More TSRMLS_FETCH work 2001-07-31 06:07:25 +00:00
Zeev Suraski
57507b4ea6 More TSRMLS_FETCH annihilation 2001-07-31 05:32:25 +00:00
Zeev Suraski
d76cf1da18 More TSRMLS_FETCH work 2001-07-31 04:53:54 +00:00
Zeev Suraski
d49077f871 Compile fix 2001-07-30 09:05:42 +00:00
Zeev Suraski
4187439cff More TSRMLS_FETCH work 2001-07-30 07:43:02 +00:00
Zeev Suraski
e8ac55d03c More TSRMLS_FETCH work 2001-07-30 06:12:15 +00:00
Zeev Suraski
b52554951f More TSRMLS_FETCH work, and get rid of redundant ParametersPassedByRef 2001-07-30 05:34:21 +00:00
Andrei Zmievski
3839af35dc Let's be consisten and keep TSRMLS_DC declaration after num_args. 2001-07-30 05:05:26 +00:00
Zeev Suraski
8ce8324e59 More TSRMLS_FETCH annihilation 2001-07-30 04:54:16 +00:00
Zeev Suraski
11e5d2f229 Get rid of more TSRMLS_FETCH's 2001-07-30 02:07:52 +00:00
Zeev Suraski
b57703825b Avoid TSRMLS_FETCH()'s (still lots of work left) 2001-07-30 01:48:22 +00:00
Andi Gutmans
51b92451d0 - More object junk 2001-07-29 08:24:38 +00:00
Andi Gutmans
c259cb7c1a - Object macros... 2001-07-29 08:22:57 +00:00
Andi Gutmans
cf510cb7fd - Fix build 2001-07-28 20:28:29 +00:00
Andi Gutmans
ff61394786 - More object macros. 2001-07-28 20:27:32 +00:00
Andi Gutmans
896eec1ec5 - Use the Z_OBJ* macros for accessing objects 2001-07-28 18:35:22 +00:00
Andi Gutmans
b40db64d0d - Small patch to allow fixing the PHP tree to be compatible w/ the initial
- Zend 2 objects patch. Hopefully I can commit that this week.
2001-07-28 18:33:06 +00:00
Zeev Suraski
b4f3b9d3ce Redesigned thread safety mechanism - nua nua 2001-07-28 10:51:54 +00:00
Sascha Schumann
6be787a929 Fix build 2001-07-28 00:46:42 +00:00
Zeev Suraski
2c254ba762 Get rid of ELS_*(), and use TSRMLS_*() instead.
This patch is *bound* to break some files, as I must have had typos somewhere.
If you use any uncommon extension, please try to build it...
2001-07-27 10:10:39 +00:00
Sascha Schumann
b677af2265 tsrm_error is only available, if TSRM_DEBUG is defined. 2001-07-23 04:21:11 +00:00
Sascha Schumann
28ecbb213c tsrm_error is only available, if TSRM_DEBUG is defined. 2001-07-23 04:19:32 +00:00
Zeev Suraski
ef4fe54f0a Always track bailout file/lineno 2001-07-21 16:21:22 +00:00
Zeev Suraski
5f2da6f219 Fix Release builds 2001-07-21 16:13:46 +00:00
Zeev Suraski
931ebe08d7 Improve bailout mechanism, supports nesting of bailouts a-la try..catch 2001-07-21 14:25:27 +00:00
Zeev Suraski
660a09c6da Fix compile warning 2001-07-21 14:18:53 +00:00
Andrei Zmievski
fc260e6c98 Fix certain cases where inheritance of base class's overloaded handlers wasn't
being done.
2001-07-21 02:35:13 +00:00
Zeev Suraski
8084d27885 Implement a more granular shutdown mechanism for the executor -
prevent corruption of constants and missing destructions of resources
2001-07-20 14:20:34 +00:00
Zeev Suraski
d68f53e94e Unfix, it has too strong effects 2001-07-19 18:33:22 +00:00
Zeev Suraski
ce29cb297e Catch all cases 2001-07-19 15:53:38 +00:00
Zeev Suraski
01814bb2b8 Fix bug #11970, strike 2 2001-07-19 14:15:50 +00:00
Zeev Suraski
06fc55cc67 Revert bogus patch 2001-07-19 14:11:40 +00:00
Stanislav Malyshev
db97aea8d9 fix double->long conversion 2001-07-18 16:46:51 +00:00
Andi Gutmans
6bd084cb0a - Remove unused code 2001-07-17 16:10:15 +00:00
Zeev Suraski
43ebb86806 Fix bug #10287 - avoid crashing under a bogus usage of list() 2001-07-16 15:48:31 +00:00
Zeev Suraski
fb532ba52b Fix bug #10467 2001-07-16 11:41:06 +00:00
Zeev Suraski
1c2893a1b9 Minor cleaning 2001-07-15 22:48:04 +00:00
Zeev Suraski
ec6c9f67c4 Optimize the parser a bit 2001-07-15 19:24:32 +00:00
Zeev Suraski
0078ceec19 Fix an inline 2001-07-15 19:08:32 +00:00
Zeev Suraski
c4f2e0197b Time to bid this old timer goodbye - get rid of var_uninit() 2001-07-15 19:02:20 +00:00
Zeev Suraski
563aacdb66 Fix bug #6239 2001-07-15 18:57:43 +00:00
Zeev Suraski
73f488b323 Allow indirect reference to method names in class::method() construct 2001-07-15 18:39:14 +00:00
Zeev Suraski
9bd9862451 Fix bug #10257 2001-07-15 17:48:50 +00:00
Zeev Suraski
553505cb61 Fix bug #11970 2001-07-15 16:51:30 +00:00
Zeev Suraski
0c49166197 Fix bug #9884 2001-07-15 16:22:41 +00:00
Zeev Suraski
85b4df53c0 Improved interactive mode - it is now available in all builds, without any significant slowdown 2001-07-15 14:08:58 +00:00
Zeev Suraski
ab30c8cca3 Early initialization 2001-07-15 12:24:10 +00:00
Zeev Suraski
f63367bf16 layout 2001-07-13 12:08:32 +00:00
Thies C. Arntzen
7b7e72d1d2 the resource-lists are now destroyed backwards. this will make sure that
resources get destroyed in the opposite order they were created and thereby
db-cursors will always be released before their corresponding connection etc.
this sould not break anything!
2001-07-13 12:05:47 +00:00
Zeev Suraski
87e3924379 Remove the last couple of bogus inlines 2001-07-11 17:18:22 +00:00
Andi Gutmans
b98acd61f1 - Move inline_zend_hash_func() to header file 2001-07-11 16:16:08 +00:00
Thies C. Arntzen
07ea068454 fixed ZVAL_FALSE and ZVAL_TRUE 2001-07-11 12:40:29 +00:00
Stanislav Malyshev
6cf5e7f9f7 No hashpjw anymore, but we have zend_hash_func 2001-07-11 12:20:07 +00:00
Zeev Suraski
4cc86259dd Get rid of ZVAL_RESET... 2001-07-11 11:35:11 +00:00
Zeev Suraski
ed542331b7 Get rid of some inlines 2001-07-11 09:33:41 +00:00
Andi Gutmans
2f8fa8cf21 - Merge faster hash implementation.
- The hash function parameter in hash_init(...) is not used anymore.
- It should be removed but it is "to be decided" if we want to do that now
- or in a major version as it means changing MANY places and third party
- modules might stop working.
2001-07-10 20:31:42 +00:00
Thies C. Arntzen
bcddfd474a cleaned up the RETVAL_ RETURN_ and ZVAL_ macros
added check for \0 at end-of-string at some places. all strings in PHP
have to be terminated with \0 because 3th party libraries might not be
binary-safe.
2001-07-10 08:20:20 +00:00
Andi Gutmans
6297cd26e2 - Commit Thies' patch. str.len was too long. 2001-07-10 05:02:50 +00:00
Andrei Zmievski
58f88057b1 Adding new parameter parsing API. 2001-07-09 18:51:29 +00:00
Rasmus Lerdorf
fb8e614690 Trivial fix - but the period looks odd in error messages 2001-07-03 04:18:38 +00:00
Andi Gutmans
55687ca216 - Fix the memory limit fix. 2001-06-30 07:58:34 +00:00
Andi Gutmans
af089a2938 - Remove bogus comment. 2001-06-29 20:42:02 +00:00
Zeev Suraski
3eb6d65ece Fix memory_limit, kill warning 2001-06-29 00:36:34 +00:00
Zeev Suraski
446567cb26 Fix warnings 2001-06-28 23:40:44 +00:00
Zeev Suraski
2536259557 Fix leak in the patch, and revert a couple of lines I didn't mean to commit 2001-06-27 15:47:31 +00:00
Zeev Suraski
ee115c8ecc - Warn about illegal offsets
- Allow assignments to uninitialized string offsets (automatically pads the
  string with spaces)
2001-06-27 15:40:49 +00:00
Zeev Suraski
5e99993058 Fixed autoconversion of negative values to double (Fix bug #11685) 2001-06-26 21:11:35 +00:00
Andi Gutmans
b70eeddc70 - Fix crash bug (fix by Jani). 2001-06-26 15:19:47 +00:00
Andi Gutmans
12db900a6f - Bump Zend version 2001-06-24 03:54:11 +00:00
Andi Gutmans
5bf89ce61c - Hopefully fix bug #11476 and improve garbage to be freed very quickly.
Tree tagged as PRE_GRANULAR_GARBAGE_FIX before commiting.
2001-06-21 22:30:23 +00:00
Andi Gutmans
7690887cf6 - Use inline instead of macro for PZVAL_LOCK()/PZVAL_UNLOCK() so that it
can be debugged.
2001-06-21 21:31:33 +00:00
Andi Gutmans
8cd70926c5 - Nuke dependency of all of PHP on zend_execute_locks.h. 2001-06-21 21:17:10 +00:00
Zeev Suraski
851b1e3b35 Eliminate the leak that the original bogus code tried to solve 2001-06-21 15:33:55 +00:00
Zeev Suraski
cb0d2775fb parent::methodname() now works better with runtime classes (fix bug #11589) 2001-06-21 14:53:05 +00:00
Zeev Suraski
3276cfd950 Fix bug #11590 (I want Andi to also review this patch before it goes into 4.0.6) 2001-06-21 08:17:09 +00:00
Andi Gutmans
1aa5b19cc9 - Fix string offsets crash. 2001-06-20 17:14:58 +00:00
Andi Gutmans
34e0c392e8 - Fix memory fragmention problem which could lead to web server processes
growing much more than they should. (bug #11344?)
2001-06-19 17:59:07 +00:00
Zeev Suraski
0c164128f8 Add missing exports 2001-06-19 08:52:19 +00:00
Zeev Suraski
38085881a6 Fix warning 2001-06-19 08:42:22 +00:00
Zeev Suraski
b23d83cf6a Avoid crashing if the error reporting function is called after a bailout during shutdown 2001-06-13 17:18:11 +00:00
Zeev Suraski
e8796a1503 Improve XHTML compliance (suggested by Anil Madhavapeddy) 2001-06-12 10:51:59 +00:00
Zeev Suraski
6cf6835a4d Add missing check 2001-05-30 08:23:15 +00:00
Andi Gutmans
e264a407eb - Change if() to while() to make sure we skip enough opcodes 2001-05-25 09:46:48 +00:00
Andi Gutmans
90c36273b4 - Fix memory leak 2001-05-25 07:26:48 +00:00
Andrei Zmievski
9f0a619553 Fix segfault -- need to copy-construct constant value. 2001-05-23 13:54:22 +00:00
Andrei Zmievski
4d78270b4e Moving some functions into Zend. 2001-05-21 15:47:52 +00:00
Andi Gutmans
e4f7a85acb - The previous name could be confused with resource # 2001-05-20 20:48:40 +00:00
Andi Gutmans
e2f12eb0e5 - Whitespace and change the name of the macro to something more verbose
ZEND_GET_RESOURCE_ID(...)
2001-05-20 20:25:20 +00:00
James Moore
c1164ad5bf @ - Add new ZEND_GET_LE macro for retrieving destructor
@   id's from remote extensions. (Jmoore, Zend Engine)
2001-05-20 17:06:39 +00:00
Andi Gutmans
65d9584ac0 - Don't allow resource types of 0 2001-05-20 16:04:22 +00:00
Sascha Schumann
ba8af2515e Fix segfault when using zend_hash_add_empty_element 2001-05-19 14:53:55 +00:00
Thies C. Arntzen
473d3eae45 reset allocated_memory_peak after each request. 2001-05-18 14:32:11 +00:00
Zeev Suraski
5b12d6077e That's slightly clearer that way :) 2001-05-17 16:33:45 +00:00
Zeev Suraski
c7464b7d6a Fix build 2001-05-17 12:51:24 +00:00
Zeev Suraski
41fbc95fe1 Fix build 2001-05-17 11:22:49 +00:00
Zeev Suraski
51303fc051 Fix corruption issue 2001-05-17 09:58:34 +00:00
Zeev Suraski
755207a1e6 Implement zend_hash_add_empty_element() using the existing infrastructure 2001-05-16 17:22:01 +00:00
Zeev Suraski
4c0d85ba4f Commit missing fix 2001-05-16 17:21:16 +00:00
Zeev Suraski
260b4d0dbf Merge memory usage into memory limit 2001-05-16 15:02:30 +00:00
Sascha Schumann
bb472e7069 Initialize empty pDataPtr to a pseudo value to prevent a pefree on
pData.
2001-05-14 10:49:17 +00:00
Andi Gutmans
eadaf3eb7a - Remove check for ht == NULL in copy_ctor.
If ht is NULL at this point then we are better off crashing and fixing
  the bug that caused it.
2001-05-12 13:55:49 +00:00
Sascha Schumann
996e9a7212 add missing closing paranthesis 2001-05-11 19:41:11 +00:00
Sascha Schumann
3efa08aaa8 Some extensions don't associate any data with hash entries,
except the key.  Prior to this change, a separate chunk of memory
was allocated in that case to store exactly zero bytes (plus
memory manager overhead).  We treat that case similar to the
pointer case, but don't copy any data at all (because the pointer
is usually the NULL pointer).
2001-05-11 19:32:01 +00:00
Sascha Schumann
2c4e1e84ce Fix a memory leak which occured upon registering an already existing
constant.
2001-05-11 19:18:24 +00:00
Thies C. Arntzen
8ca106bffc added --enable-memory-usage-info 2001-05-11 18:16:41 +00:00
Andi Gutmans
d8c11e6f2a - Fix crash bug when opcodes array is erealloc()'ed to a different memory
area before it reaches the loop.
- Some whitespace stuff
2001-05-11 14:29:06 +00:00
Zeev Suraski
429667883e Treat numeric strings as numbers in the increment operator 2001-05-10 12:58:31 +00:00
Andrei Zmievski
555fa77930 Nuke unused variable. 2001-05-09 20:37:16 +00:00
Andrei Zmievski
41aebd058e Fix a few bugs in zend_is_callable() and make it stricter. 2001-05-09 20:07:49 +00:00
Andi Gutmans
a514e8fe66 - Fix line numbers when some lines end with \r 2001-05-08 19:42:14 +00:00
Andi Gutmans
3380fa1b8e - Fix crash bug reported by DBG author Dmitri Dmitrienko. 2001-05-08 15:56:26 +00:00
Zeev Suraski
0eadc7e423 Make zend_execute_scripts() reentrant 2001-05-07 11:08:18 +00:00
Zeev Suraski
bda9c83a82 Recover from a parse error in include files (before, it could result in a crash under certain circumstances). Fix bug #8663 2001-05-06 19:30:31 +00:00
Zeev Suraski
d2cbd019e3 Yikes, that would have been a very bad bug :) 2001-05-06 16:24:36 +00:00
Zeev Suraski
f78e65cabf Floating point keys didn't work in array() (fix bug #6662) 2001-05-06 15:39:27 +00:00