summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Zmievski <andrei@php.net>2002-06-12 16:46:24 +0000
committerAndrei Zmievski <andrei@php.net>2002-06-12 16:46:24 +0000
commit87f5f3962da783c0b433a067f4d4ce34a89b9c3a (patch)
treed56ec587f1041182a4c8ad249f587c8a519cb9fe
parentd2b830ff4a6dac8174bb3c5235a5d5ec6087453a (diff)
downloadphp-git-87f5f3962da783c0b433a067f4d4ce34a89b9c3a.tar.gz
Properly return the result of __call() handler.
-rw-r--r--NEWS6
-rw-r--r--ext/overload/overload.c6
2 files changed, 7 insertions, 5 deletions
diff --git a/NEWS b/NEWS
index 0f43dc871a..a241f66b96 100644
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,10 @@
PHP 4 NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 2002, Version 4.3.0
-- Impelemented timeout functionality, and fixed error handling of fsockopen() on win32
-- Add --with-mysql-sock option (James Cox)
+- Fixed a memory corruption bug in overload extension. (Andrei)
+- Impelemented timeout functionality, and fixed error handling of fsockopen()
+ on win32.
+- Add --with-mysql-sock option. (James Cox)
- Fixed shuffle() to provide equal distribution of values. (Andrei)
- Added --with-mysql-sock configure option which can be used to override
the unix socket location. (e.g. NFS compiles, etc.) (James Cox)
diff --git a/ext/overload/overload.c b/ext/overload/overload.c
index 6b234437fb..41b1e2f6d8 100644
--- a/ext/overload/overload.c
+++ b/ext/overload/overload.c
@@ -601,9 +601,9 @@ static void overload_call_method(INTERNAL_FUNCTION_PARAMETERS, zend_property_ref
return;
}
- *return_value = *retval;
- INIT_PZVAL(return_value);
- FREE_ZVAL(retval);
+ return_value->value = retval->value;
+ zval_copy_ctor(return_value);
+ zval_ptr_dtor(&retval);
}
efree(args);