helly Thu Jan 11 22:35:36 2007 UTC
Modified files:
/ZendEngine2 zend_vm_def.h zend_vm_execute.h
Log:
- MFB Missing part of __toString() support
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_vm_def.h?r1=1.154&r2=1.155&diff_format=u
Index: ZendEngine2/zend_vm_def.h
diff -u ZendEngine2/zend_vm_def.h:1.154 ZendEngine2/zend_vm_def.h:1.155
--- ZendEngine2/zend_vm_def.h:1.154 Wed Jan 10 15:59:55 2007
+++ ZendEngine2/zend_vm_def.h Thu Jan 11 22:35:36 2007
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_vm_def.h,v 1.154 2007/01/10 15:59:55 dmitry Exp $ */
+/* $Id: zend_vm_def.h,v 1.155 2007/01/11 22:35:36 helly Exp $ */
/* If you change this file, please regenerate the zend_vm_execute.h and
* zend_vm_opcodes.h files by running:
@@ -885,6 +885,7 @@
zend_op *opline = EX(opline);
zend_free_op free_op1;
zval *z = GET_OP1_ZVAL_PTR(BP_VAR_R);
+ zval z_copy;
UErrorCode status = U_ZERO_ERROR;
/* UTODO: review this
@@ -906,6 +907,10 @@
}
zval_dtor(&z_conv);
ucnv_close(script_enc_conv);
+ } else if (Z_TYPE_P(z) == IS_OBJECT && Z_OBJ_HT_P(z)->get_method !=
NULL &&
+ zend_std_cast_object_tostring(z, &z_copy, ZEND_STR_TYPE,
ZEND_U_CONVERTER(UG(output_encoding_conv)) TSRMLS_CC) == SUCCESS) {
+ zend_print_variable(&z_copy);
+ zval_dtor(&z_copy);
} else {
zend_print_variable(z);
}
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_vm_execute.h?r1=1.157&r2=1.158&diff_format=u
Index: ZendEngine2/zend_vm_execute.h
diff -u ZendEngine2/zend_vm_execute.h:1.157 ZendEngine2/zend_vm_execute.h:1.158
--- ZendEngine2/zend_vm_execute.h:1.157 Wed Jan 10 15:59:55 2007
+++ ZendEngine2/zend_vm_execute.h Thu Jan 11 22:35:36 2007
@@ -1384,6 +1384,7 @@
zend_op *opline = EX(opline);
zval *z = &opline->op1.u.constant;
+ zval z_copy;
UErrorCode status = U_ZERO_ERROR;
/* UTODO: review this
@@ -1405,6 +1406,10 @@
}
zval_dtor(&z_conv);
ucnv_close(script_enc_conv);
+ } else if (Z_TYPE_P(z) == IS_OBJECT && Z_OBJ_HT_P(z)->get_method !=
NULL &&
+ zend_std_cast_object_tostring(z, &z_copy, ZEND_STR_TYPE,
ZEND_U_CONVERTER(UG(output_encoding_conv)) TSRMLS_CC) == SUCCESS) {
+ zend_print_variable(&z_copy);
+ zval_dtor(&z_copy);
} else {
zend_print_variable(z);
}
@@ -3992,6 +3997,7 @@
zend_op *opline = EX(opline);
zend_free_op free_op1;
zval *z = _get_zval_ptr_tmp(&opline->op1, EX(Ts), &free_op1 TSRMLS_CC);
+ zval z_copy;
UErrorCode status = U_ZERO_ERROR;
/* UTODO: review this
@@ -4013,6 +4019,10 @@
}
zval_dtor(&z_conv);
ucnv_close(script_enc_conv);
+ } else if (Z_TYPE_P(z) == IS_OBJECT && Z_OBJ_HT_P(z)->get_method !=
NULL &&
+ zend_std_cast_object_tostring(z, &z_copy, ZEND_STR_TYPE,
ZEND_U_CONVERTER(UG(output_encoding_conv)) TSRMLS_CC) == SUCCESS) {
+ zend_print_variable(&z_copy);
+ zval_dtor(&z_copy);
} else {
zend_print_variable(z);
}
@@ -7108,6 +7118,7 @@
zend_op *opline = EX(opline);
zend_free_op free_op1;
zval *z = _get_zval_ptr_var(&opline->op1, EX(Ts), &free_op1 TSRMLS_CC);
+ zval z_copy;
UErrorCode status = U_ZERO_ERROR;
/* UTODO: review this
@@ -7129,6 +7140,10 @@
}
zval_dtor(&z_conv);
ucnv_close(script_enc_conv);
+ } else if (Z_TYPE_P(z) == IS_OBJECT && Z_OBJ_HT_P(z)->get_method !=
NULL &&
+ zend_std_cast_object_tostring(z, &z_copy, ZEND_STR_TYPE,
ZEND_U_CONVERTER(UG(output_encoding_conv)) TSRMLS_CC) == SUCCESS) {
+ zend_print_variable(&z_copy);
+ zval_dtor(&z_copy);
} else {
zend_print_variable(z);
}
@@ -19686,6 +19701,7 @@
zend_op *opline = EX(opline);
zval *z = _get_zval_ptr_cv(&opline->op1, EX(Ts), BP_VAR_R TSRMLS_CC);
+ zval z_copy;
UErrorCode status = U_ZERO_ERROR;
/* UTODO: review this
@@ -19707,6 +19723,10 @@
}
zval_dtor(&z_conv);
ucnv_close(script_enc_conv);
+ } else if (Z_TYPE_P(z) == IS_OBJECT && Z_OBJ_HT_P(z)->get_method !=
NULL &&
+ zend_std_cast_object_tostring(z, &z_copy, ZEND_STR_TYPE,
ZEND_U_CONVERTER(UG(output_encoding_conv)) TSRMLS_CC) == SUCCESS) {
+ zend_print_variable(&z_copy);
+ zval_dtor(&z_copy);
} else {
zend_print_variable(z);
}
--
Zend Engine CVS Mailing List (http://cvs.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
|