iliaa Mon Jun 6 08:50:57 2005 EDT
Modified files: (Branch: PHP_4_4)
/php-src/ext/standard type.c
Log:
MFH: Fixed strval to not print notices on strval(array()).
http://cvs.php.net/diff.php/php-src/ext/standard/type.c?r1=1.20.4.2&r2=1.20.4.2.4.1&ty=u
Index: php-src/ext/standard/type.c
diff -u php-src/ext/standard/type.c:1.20.4.2
php-src/ext/standard/type.c:1.20.4.2.4.1
--- php-src/ext/standard/type.c:1.20.4.2 Thu Apr 1 03:56:32 2004
+++ php-src/ext/standard/type.c Mon Jun 6 08:50:57 2005
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: type.c,v 1.20.4.2 2004/04/01 08:56:32 derick Exp $ */
+/* $Id: type.c,v 1.20.4.2.4.1 2005/06/06 12:50:57 iliaa Exp $ */
#include "php.h"
#include "php_incomplete_class.h"
@@ -180,14 +180,24 @@
PHP_FUNCTION(strval)
{
pval **num;
+ zval expr_copy;
+ int use_copy;
if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &num) == FAILURE)
{
WRONG_PARAM_COUNT;
}
*return_value = **num;
- zval_copy_ctor(return_value);
- convert_to_string(return_value);
+
+ zend_make_printable_zval(return_value, &expr_copy, &use_copy);
+ if (use_copy) {
+ *return_value = expr_copy;
+ INIT_PZVAL(return_value);
+ zval_copy_ctor(return_value);
+ zval_dtor(&expr_copy);
+ } else {
+ zval_copy_ctor(return_value);
+ }
}
/* }}} */
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php