Dmitry Stogov
3009a073b0
Fixed bug #29566 (foreach/string handling strangeness (crash)).
2004-09-22 07:14:26 +00:00
Dmitry Stogov
81a5af36a1
Fixed bug in fix for bug #29707
2004-09-22 06:32:19 +00:00
Andi Gutmans
d9252aa1ea
- Fix for bug #29707
2004-09-21 22:09:22 +00:00
Stanislav Malyshev
29fec3febc
Antony Dovgal's error message improvement - #27290
2004-09-13 10:41:39 +00:00
Andi Gutmans
96ab56e146
- Roll back VM commit
2004-09-09 16:47:22 +00:00
Andi Gutmans
8eb8850c90
- Some architectural changes:
...
a) We specialize opcodes according to op_type fields. Each opcode has to
be marked with which op_type's it uses.
b) We support different execution methods. Function handlers, switch()
and goto dispatching. goto seems to be the fastest but it really
depends on the compiler and how well it optimizes. I suggest playing
around with optimization flags.
- Warning: Things might break so keep us posted on how things are going.
(Dmitry, Andi)
2004-09-08 22:14:12 +00:00
Stanislav Malyshev
4f68f3774c
fix crash #29893
2004-08-30 08:57:40 +00:00
Marcus Boerger
0eaa26fc31
String offset starts with 0, fix isset($str[$len])
2004-08-29 19:15:08 +00:00
Andi Gutmans
a36e7b0ab1
- Cleanup
2004-08-19 20:42:20 +00:00
Andi Gutmans
edb7c7d4f5
- Stop using garbage. Please let me know if you find any bugs resulting
...
- of this patch (very likely). (Dmitry, Andi)
2004-08-19 20:03:06 +00:00
Andi Gutmans
993f70c1d2
- Don't use magic numbers
2004-08-12 05:54:11 +00:00
Andi Gutmans
de25255b6d
- Significantly improve performance of foreach($arr as $data). (Marcus)
2004-08-12 05:41:01 +00:00
Marcus Boerger
be022a813f
More meaningfull error message
2004-08-11 20:19:49 +00:00
Marcus Boerger
51505045e6
- Fix warnings
2004-08-10 07:01:54 +00:00
Ilia Alshanetsky
d746343928
A gentler (performance wise) allocation of buffer for temp variables.
2004-08-02 02:35:01 +00:00
Andi Gutmans
d7c839d54f
- More ptr_stack optimizations and cleanups
2004-07-30 21:00:37 +00:00
Andi Gutmans
138ef9a43e
- Improve performance by inlining zend_ptr_stack_n_push(). var_args can
...
usually not be inlined by compilers.
2004-07-30 20:16:40 +00:00
Sara Golemon
d96e7a170c
Revert goto opcode
2004-07-29 17:45:31 +00:00
Sara Golemon
37acb31c1a
&tmp and label are the same thing, don't free it till we're done with it.
2004-07-29 16:49:59 +00:00
Sara Golemon
8c844fdde3
Plug some memory leaks and promote unknown label to E_ERROR.
...
If someone tries to jump to a non-existant label execution really
shouldn't try to carry on.
2004-07-29 16:36:00 +00:00
Sara Golemon
5865b3680a
Add goto operator by popular request.
2004-07-29 15:23:47 +00:00
Marcus Boerger
f5cf052225
- Fix bug #29368 : The destructor is called when an exception is thrown from the constructor
2004-07-25 17:25:44 +00:00
Marcus Boerger
5ff2111a59
Fix 0 Byte leak after alloca to emalloc change
2004-07-23 07:13:54 +00:00
Andi Gutmans
56f8195fe5
- Nuke empty_string. It is a reminanent from the time where RETURN_FALSE()
...
used to return "" and not bool(false). It's not worth keeping it because
STR_FREE() and zval_dtor() always have to check for it and it slows down
the general case. In addition, it seems that empty_string has been abused
quite a lot, and was used not only for setting zval's but generally in
PHP code instead of "", which wasn't the intention. Last but not least,
nuking empty_string should improve stability as I doubt every place
correctly checked if they are not mistakenly erealloc()'ing it or
calling efree() on it.
NOTE: Some code is probably broken. Each extension maintainer should
check and see that my changes are OK. Also, I haven't had time to touch
PECL yet. Will try and do it tomorrow.
2004-07-19 07:19:50 +00:00
Marcus Boerger
381a3b234f
Bugfix #28464 catch() does not catch exceptions by interfaces
2004-07-16 06:39:50 +00:00
Ilia Alshanetsky
a8996a8ac6
Fixed bug #29086 & #28064 (PHP crashes on extremly long scripts).
2004-07-12 17:47:29 +00:00
Sara Golemon
a4032b68c6
Ease off on severity of new error (Using Resources as array offsets)
2004-06-24 16:35:34 +00:00
Sara Golemon
56b153390b
BugFix #28879 Inconsistent behavior between explicit and implicit array creation.
...
Changes:
Throw E_WARNING "Illegal offset type" when explicitly creating
array elements with objects, arrays, or resorces as indexes.
This matches implicit creation w/ obj/arr indices.
Throw E_WARNING "Resource ID#%ld used as offset, casting to integer (%ld)"
when implicitly creating array with resource as index. (BC)
2004-06-23 23:20:44 +00:00
Sara Golemon
2f7c5d30b5
Another typo in converting array index doubles to long.
2004-06-18 18:33:46 +00:00
Stanislav Malyshev
176f6d8e6e
fix incdec - make value's refcount non-zero when passing to
...
write_property - otherwise __set caller cleanup could kill it.
2004-06-02 12:48:19 +00:00
Marcus Boerger
0ef420a71e
Prevent possible problems with illegal properties
2004-05-28 08:55:10 +00:00
Andi Gutmans
bca3e30484
- Fix problem with exceptions returning from include(). (Dmitry)
2004-05-27 11:59:58 +00:00
Sara Golemon
b094db390e
Bugfix#28404 When type is double we need to access dval, not lval
2004-05-18 00:04:22 +00:00
Stanislav Malyshev
239ae7b5fc
Fix bug #27876
2004-04-29 09:47:29 +00:00
Marcus Boerger
a455d7846d
Handle failure in get_current_data
2004-04-15 21:32:34 +00:00
Ilia Alshanetsky
962c8cc9ef
Fixed reversed condition for error reporting.
2004-04-01 22:05:35 +00:00
Dmitry Stogov
d00b6c7c99
Fixed BUG in zend_post_incdec_property
2004-03-31 15:16:00 +00:00
Sebastian Bergmann
c29e9277d0
-clonning+cloning
2004-03-29 15:20:50 +00:00
Dmitry Stogov
75d1e4ca7d
Implicit clonning strict warning was added for ze1_compatibility_mode
2004-03-29 15:00:31 +00:00
Ilia Alshanetsky
62c80d5e6e
Fixed bug #27731 (error_reporting() inside @ block fails to set
...
error_reporting level).
2004-03-29 00:50:52 +00:00
Stanislav Malyshev
9be3c9388b
- call set handler if assigning to object having this handler
...
- cleanup: use macros to access object internal vars
2004-03-28 14:57:29 +00:00
Andi Gutmans
43d04ee291
- Fix build (thanks to Timm)
2004-03-26 00:26:19 +00:00
Stanislav Malyshev
7a98f60e1b
no need to use result for RECV's - as in PHP4
2004-03-25 14:03:34 +00:00
Stanislav Malyshev
3c3dbc8873
Use get/set handlers for increment.decrement ops on objects
2004-03-25 13:03:04 +00:00
Dmitry Stogov
ec53815b0f
Object cloning in ze1 compatibility mode (zend.ze1_compatibility_mode) was reimplemented (Dmitry, Andi)
2004-03-24 10:55:04 +00:00
Andi Gutmans
94dc9af5a0
- Remove whitespace
2004-03-22 11:16:24 +00:00
Andi Gutmans
4ccca568bb
- Improve consistency
2004-03-21 21:29:17 +00:00
Stanislav Malyshev
bd9b600c3c
API change for read_property:
...
instead of bool silent it now gets fetch type
This can be used for creating proxy objects for write contexts
2004-03-21 18:07:27 +00:00
Andi Gutmans
f0b5eeb17b
- Nuke unused code
2004-03-21 17:48:51 +00:00
Zeev Suraski
b8275175ff
Fix possible data corruption with __set()
2004-03-18 14:03:58 +00:00