*use_copy = 0;
return;
}
+ if (Z_TYPE_P(expr) == IS_REFERENCE) {
+ expr = Z_REFVAL_P(expr);
+ if (Z_TYPE_P(expr) == IS_STRING) {
+ ZVAL_STR(expr_copy, Z_STR_P(expr));
+ *use_copy = 1;
+ return;
+ }
+ }
switch (Z_TYPE_P(expr)) {
case IS_NULL:
Z_STR_P(expr_copy) = STR_EMPTY_ALLOC();
int use_copy1 = 0, use_copy2 = 0;
if (Z_TYPE_P(op1) != IS_STRING) {
- if (Z_TYPE_P(op1) == IS_REFERENCE) {
- op1 = Z_REFVAL_P(op1);
- }
- if (Z_TYPE_P(op1) != IS_STRING) {
- zend_make_printable_zval(op1, &op1_copy, &use_copy1);
- }
+ zend_make_printable_zval(op1, &op1_copy, &use_copy1);
}
if (Z_TYPE_P(op2) != IS_STRING) {
- if (Z_TYPE_P(op2) == IS_REFERENCE) {
- op2 = Z_REFVAL_P(op2);
- }
- if (Z_TYPE_P(op2) != IS_STRING) {
- zend_make_printable_zval(op2, &op2_copy, &use_copy2);
- }
+ zend_make_printable_zval(op2, &op2_copy, &use_copy2);
}
if (use_copy1) {