summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>2000-01-09 19:16:34 +0000
committerZeev Suraski <zeev@php.net>2000-01-09 19:16:34 +0000
commitd3cad4f289bf7612dc4e431149051420fc05555c (patch)
tree4fa8244d4f8e55d9d2bef88b0f064de1e6cce9be
parent8acd3e381866271f880dcad46e581092495c9443 (diff)
downloadphp-git-d3cad4f289bf7612dc4e431149051420fc05555c.tar.gz
Functionality & crash fixes
-rw-r--r--Zend/zend_execute.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 42bcc25938..ac48ac6780 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -627,7 +627,6 @@ static inline void zend_fetch_dimension_address(znode *result, znode *op1, znode
zend_overloaded_element overloaded_element;
if (Ts[op1->u.var].EA.type == IS_STRING_OFFSET) {
- zval_ptr_dtor(&Ts[op1->u.var].EA.str);
switch (type) {
case BP_VAR_R:
case BP_VAR_IS:
@@ -665,7 +664,8 @@ static inline void zend_fetch_dimension_address(znode *result, znode *op1, znode
return;
}
- if (container->type == IS_NULL) {
+ if (container->type==IS_NULL
+ || (container->type==IS_STRING && container->value.str.len==0)) {
switch (type) {
case BP_VAR_RW:
case BP_VAR_W: