summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/zend_execute.c4
-rw-r--r--Zend/zend_highlight.c4
-rw-r--r--Zend/zend_object_handlers.c4
-rw-r--r--Zend/zend_objects.c2
-rw-r--r--Zend/zend_operators.c24
-rw-r--r--Zend/zend_vm_def.h2
-rw-r--r--Zend/zend_vm_execute.h2
-rw-r--r--ext/opcache/Optimizer/block_pass.c2
-rw-r--r--ext/session/session.c4
-rw-r--r--ext/standard/array.c24
-rw-r--r--ext/standard/var_unserializer.c2
-rw-r--r--ext/standard/var_unserializer.re2
12 files changed, 38 insertions, 38 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 06ef1314c9..afddbc1643 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -3169,7 +3169,7 @@ static zend_never_inline zend_op_array* ZEND_FASTCALL zend_include_or_eval(zval
zend_destroy_file_handle(&file_handle);
zend_string_release_ex(resolved_path, 0);
if (Z_TYPE(tmp_inc_filename) != IS_UNDEF) {
- zend_string_release_ex(Z_STR(tmp_inc_filename), 0);
+ zval_ptr_dtor_str(&tmp_inc_filename);
}
return op_array;
} else {
@@ -3207,7 +3207,7 @@ already_compiled:
}
if (Z_TYPE(tmp_inc_filename) != IS_UNDEF) {
- zend_string_release_ex(Z_STR(tmp_inc_filename), 0);
+ zval_ptr_dtor_str(&tmp_inc_filename);
}
return new_op_array;
}
diff --git a/Zend/zend_highlight.c b/Zend/zend_highlight.c
index 2f4737952e..67ad33265c 100644
--- a/Zend/zend_highlight.c
+++ b/Zend/zend_highlight.c
@@ -156,7 +156,7 @@ ZEND_API void zend_highlight(zend_syntax_highlighter_ini *syntax_highlighter_ini
case T_DOC_COMMENT:
break;
default:
- zend_string_release_ex(Z_STR(token), 0);
+ zval_ptr_dtor_str(&token);
break;
}
}
@@ -219,7 +219,7 @@ ZEND_API void zend_strip(void)
break;
default:
- zend_string_release_ex(Z_STR(token), 0);
+ zval_ptr_dtor_str(&token);
break;
}
}
diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c
index fda969cd30..97a0dcd817 100644
--- a/Zend/zend_object_handlers.c
+++ b/Zend/zend_object_handlers.c
@@ -572,7 +572,7 @@ ZEND_API uint32_t *zend_get_property_guard(zend_object *zobj, zend_string *membe
EXPECTED(zend_string_equal_content(str, member)))) {
return &Z_PROPERTY_GUARD_P(zv);
} else if (EXPECTED(Z_PROPERTY_GUARD_P(zv) == 0)) {
- zend_string_release_ex(Z_STR_P(zv), 0);
+ zval_ptr_dtor_str(zv);
ZVAL_STR_COPY(zv, member);
return &Z_PROPERTY_GUARD_P(zv);
} else {
@@ -581,7 +581,7 @@ ZEND_API uint32_t *zend_get_property_guard(zend_object *zobj, zend_string *membe
/* mark pointer as "special" using low bit */
zend_hash_add_new_ptr(guards, str,
(void*)(((zend_uintptr_t)&Z_PROPERTY_GUARD_P(zv)) | 1));
- zend_string_release_ex(Z_STR_P(zv), 0);
+ zval_ptr_dtor_str(zv);
ZVAL_ARR(zv, guards);
}
} else if (EXPECTED(Z_TYPE_P(zv) == IS_ARRAY)) {
diff --git a/Zend/zend_objects.c b/Zend/zend_objects.c
index 496b46f5f8..65d8dca205 100644
--- a/Zend/zend_objects.c
+++ b/Zend/zend_objects.c
@@ -60,7 +60,7 @@ ZEND_API void zend_object_std_dtor(zend_object *object)
}
if (UNEXPECTED(object->ce->ce_flags & ZEND_ACC_USE_GUARDS)) {
if (EXPECTED(Z_TYPE_P(p) == IS_STRING)) {
- zend_string_release_ex(Z_STR_P(p), 0);
+ zval_ptr_dtor_str(p);
} else if (Z_TYPE_P(p) == IS_ARRAY) {
HashTable *guards;
diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c
index e10a75679d..333bce5dfc 100644
--- a/Zend/zend_operators.c
+++ b/Zend/zend_operators.c
@@ -1455,7 +1455,7 @@ ZEND_API int ZEND_FASTCALL bitwise_or_function(zval *result, zval *op1, zval *op
if (EXPECTED(Z_STRLEN_P(op1) == Z_STRLEN_P(op2)) && Z_STRLEN_P(op1) == 1) {
zend_uchar or = (zend_uchar) (*Z_STRVAL_P(op1) | *Z_STRVAL_P(op2));
if (result==op1) {
- zend_string_release_ex(Z_STR_P(result), 0);
+ zval_ptr_dtor_str(result);
}
ZVAL_INTERNED_STR(result, ZSTR_CHAR(or));
return SUCCESS;
@@ -1473,7 +1473,7 @@ ZEND_API int ZEND_FASTCALL bitwise_or_function(zval *result, zval *op1, zval *op
}
memcpy(ZSTR_VAL(str) + i, Z_STRVAL_P(longer) + i, Z_STRLEN_P(longer) - i + 1);
if (result==op1) {
- zend_string_release_ex(Z_STR_P(result), 0);
+ zval_ptr_dtor_str(result);
}
ZVAL_NEW_STR(result, str);
return SUCCESS;
@@ -1533,7 +1533,7 @@ ZEND_API int ZEND_FASTCALL bitwise_and_function(zval *result, zval *op1, zval *o
if (EXPECTED(Z_STRLEN_P(op1) == Z_STRLEN_P(op2)) && Z_STRLEN_P(op1) == 1) {
zend_uchar and = (zend_uchar) (*Z_STRVAL_P(op1) & *Z_STRVAL_P(op2));
if (result==op1) {
- zend_string_release_ex(Z_STR_P(result), 0);
+ zval_ptr_dtor_str(result);
}
ZVAL_INTERNED_STR(result, ZSTR_CHAR(and));
return SUCCESS;
@@ -1551,7 +1551,7 @@ ZEND_API int ZEND_FASTCALL bitwise_and_function(zval *result, zval *op1, zval *o
}
ZSTR_VAL(str)[i] = 0;
if (result==op1) {
- zend_string_release_ex(Z_STR_P(result), 0);
+ zval_ptr_dtor_str(result);
}
ZVAL_NEW_STR(result, str);
return SUCCESS;
@@ -1611,7 +1611,7 @@ ZEND_API int ZEND_FASTCALL bitwise_xor_function(zval *result, zval *op1, zval *o
if (EXPECTED(Z_STRLEN_P(op1) == Z_STRLEN_P(op2)) && Z_STRLEN_P(op1) == 1) {
zend_uchar xor = (zend_uchar) (*Z_STRVAL_P(op1) ^ *Z_STRVAL_P(op2));
if (result==op1) {
- zend_string_release_ex(Z_STR_P(result), 0);
+ zval_ptr_dtor_str(result);
}
ZVAL_INTERNED_STR(result, ZSTR_CHAR(xor));
return SUCCESS;
@@ -1629,7 +1629,7 @@ ZEND_API int ZEND_FASTCALL bitwise_xor_function(zval *result, zval *op1, zval *o
}
ZSTR_VAL(str)[i] = 0;
if (result==op1) {
- zend_string_release_ex(Z_STR_P(result), 0);
+ zval_ptr_dtor_str(result);
}
ZVAL_NEW_STR(result, str);
return SUCCESS;
@@ -2332,7 +2332,7 @@ static void ZEND_FASTCALL increment_string(zval *str) /* {{{ */
int ch;
if (Z_STRLEN_P(str) == 0) {
- zend_string_release_ex(Z_STR_P(str), 0);
+ zval_ptr_dtor_str(str);
ZVAL_INTERNED_STR(str, ZSTR_CHAR('1'));
return;
}
@@ -2426,7 +2426,7 @@ try_again:
switch (is_numeric_string(Z_STRVAL_P(op1), Z_STRLEN_P(op1), &lval, &dval, 0)) {
case IS_LONG:
- zend_string_release_ex(Z_STR_P(op1), 0);
+ zval_ptr_dtor_str(op1);
if (lval == ZEND_LONG_MAX) {
/* switch to double */
double d = (double)lval;
@@ -2436,7 +2436,7 @@ try_again:
}
break;
case IS_DOUBLE:
- zend_string_release_ex(Z_STR_P(op1), 0);
+ zval_ptr_dtor_str(op1);
ZVAL_DOUBLE(op1, dval+1);
break;
default:
@@ -2493,13 +2493,13 @@ try_again:
break;
case IS_STRING: /* Like perl we only support string increment */
if (Z_STRLEN_P(op1) == 0) { /* consider as 0 */
- zend_string_release_ex(Z_STR_P(op1), 0);
+ zval_ptr_dtor_str(op1);
ZVAL_LONG(op1, -1);
break;
}
switch (is_numeric_string(Z_STRVAL_P(op1), Z_STRLEN_P(op1), &lval, &dval, 0)) {
case IS_LONG:
- zend_string_release_ex(Z_STR_P(op1), 0);
+ zval_ptr_dtor_str(op1);
if (lval == ZEND_LONG_MIN) {
double d = (double)lval;
ZVAL_DOUBLE(op1, d-1);
@@ -2508,7 +2508,7 @@ try_again:
}
break;
case IS_DOUBLE:
- zend_string_release_ex(Z_STR_P(op1), 0);
+ zval_ptr_dtor_str(op1);
ZVAL_DOUBLE(op1, dval - 1);
break;
}
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index 095d947180..c5ff50cf85 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -4525,7 +4525,7 @@ ZEND_VM_C_LABEL(send_again):
ZEND_ASSERT(Z_TYPE(key) == IS_STRING);
zend_throw_error(NULL,
"Cannot unpack Traversable with string keys");
- zend_string_release_ex(Z_STR(key), 0);
+ zval_ptr_dtor_str(&key);
break;
}
}
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 8220a021c2..2724bca69c 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -1362,7 +1362,7 @@ send_again:
ZEND_ASSERT(Z_TYPE(key) == IS_STRING);
zend_throw_error(NULL,
"Cannot unpack Traversable with string keys");
- zend_string_release_ex(Z_STR(key), 0);
+ zval_ptr_dtor_str(&key);
break;
}
}
diff --git a/ext/opcache/Optimizer/block_pass.c b/ext/opcache/Optimizer/block_pass.c
index 621236fc08..3fe25a3691 100644
--- a/ext/opcache/Optimizer/block_pass.c
+++ b/ext/opcache/Optimizer/block_pass.c
@@ -704,7 +704,7 @@ static void zend_optimize_block(zend_basic_block *block, zend_op_array *op_array
Z_TYPE_INFO(ZEND_OP2_LITERAL(src)) = IS_STRING_EX;
memcpy(Z_STRVAL(ZEND_OP2_LITERAL(src)) + old_len, Z_STRVAL(ZEND_OP2_LITERAL(opline)), Z_STRLEN(ZEND_OP2_LITERAL(opline)));
Z_STRVAL(ZEND_OP2_LITERAL(src))[l] = '\0';
- zend_string_release_ex(Z_STR(ZEND_OP2_LITERAL(opline)), 0);
+ zval_ptr_dtor_str(&ZEND_OP2_LITERAL(opline));
ZVAL_STR(&ZEND_OP2_LITERAL(opline), zend_new_interned_string(Z_STR(ZEND_OP2_LITERAL(src))));
ZVAL_NULL(&ZEND_OP2_LITERAL(src));
MAKE_NOP(src);
diff --git a/ext/session/session.c b/ext/session/session.c
index 3482768781..b8a895c504 100644
--- a/ext/session/session.c
+++ b/ext/session/session.c
@@ -1446,7 +1446,7 @@ PHPAPI int php_session_reset_id(void) /* {{{ */
smart_str_appends(&var, ZSTR_VAL(PS(id)));
smart_str_0(&var);
if (sid) {
- zend_string_release_ex(Z_STR_P(sid), 0);
+ zval_ptr_dtor_str(sid);
ZVAL_NEW_STR(sid, var.s);
} else {
REGISTER_STRINGL_CONSTANT("SID", ZSTR_VAL(var.s), ZSTR_LEN(var.s), 0);
@@ -1454,7 +1454,7 @@ PHPAPI int php_session_reset_id(void) /* {{{ */
}
} else {
if (sid) {
- zend_string_release_ex(Z_STR_P(sid), 0);
+ zval_ptr_dtor_str(sid);
ZVAL_EMPTY_STRING(sid);
} else {
REGISTER_STRINGL_CONSTANT("SID", "", 0, 0);
diff --git a/ext/standard/array.c b/ext/standard/array.c
index 84671b965a..b1ad917640 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -1947,7 +1947,7 @@ static zend_long php_extract_ref_prefix_if_exists(zend_array *arr, zend_array *s
count++;
}
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
}
} ZEND_HASH_FOREACH_END();
@@ -1997,7 +1997,7 @@ static zend_long php_extract_prefix_if_exists(zend_array *arr, zend_array *symbo
count++;
}
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
}
} ZEND_HASH_FOREACH_END();
@@ -2056,7 +2056,7 @@ static zend_long php_extract_ref_prefix_same(zend_array *arr, zend_array *symbol
count++;
}
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
} else {
if (!php_valid_var_name(ZSTR_VAL(var_name), ZSTR_LEN(var_name))) {
continue;
@@ -2124,7 +2124,7 @@ static zend_long php_extract_prefix_same(zend_array *arr, zend_array *symbol_tab
count++;
}
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
} else {
if (!php_valid_var_name(ZSTR_VAL(var_name), ZSTR_LEN(var_name))) {
continue;
@@ -2184,7 +2184,7 @@ static zend_long php_extract_ref_prefix_all(zend_array *arr, zend_array *symbol_
count++;
}
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
} ZEND_HASH_FOREACH_END();
return count;
@@ -2229,7 +2229,7 @@ static zend_long php_extract_prefix_all(zend_array *arr, zend_array *symbol_tabl
count++;
}
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
} ZEND_HASH_FOREACH_END();
return count;
@@ -2248,7 +2248,7 @@ static zend_long php_extract_ref_prefix_invalid(zend_array *arr, zend_array *sym
if (!php_valid_var_name(ZSTR_VAL(var_name), ZSTR_LEN(var_name))) {
php_prefix_varname(&final_name, prefix, ZSTR_VAL(var_name), ZSTR_LEN(var_name), 1);
if (!php_valid_var_name(Z_STRVAL(final_name), Z_STRLEN(final_name))) {
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
continue;
}
} else {
@@ -2259,7 +2259,7 @@ static zend_long php_extract_ref_prefix_invalid(zend_array *arr, zend_array *sym
php_prefix_varname(&final_name, prefix, ZSTR_VAL(str), ZSTR_LEN(str), 1);
zend_string_release_ex(str, 0);
if (!php_valid_var_name(Z_STRVAL(final_name), Z_STRLEN(final_name))) {
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
continue;
}
}
@@ -2283,7 +2283,7 @@ static zend_long php_extract_ref_prefix_invalid(zend_array *arr, zend_array *sym
}
count++;
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
} ZEND_HASH_FOREACH_END();
return count;
@@ -2302,7 +2302,7 @@ static zend_long php_extract_prefix_invalid(zend_array *arr, zend_array *symbol_
if (!php_valid_var_name(ZSTR_VAL(var_name), ZSTR_LEN(var_name))) {
php_prefix_varname(&final_name, prefix, ZSTR_VAL(var_name), ZSTR_LEN(var_name), 1);
if (!php_valid_var_name(Z_STRVAL(final_name), Z_STRLEN(final_name))) {
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
continue;
}
} else {
@@ -2313,7 +2313,7 @@ static zend_long php_extract_prefix_invalid(zend_array *arr, zend_array *symbol_
php_prefix_varname(&final_name, prefix, ZSTR_VAL(str), ZSTR_LEN(str), 1);
zend_string_release_ex(str, 0);
if (!php_valid_var_name(Z_STRVAL(final_name), Z_STRLEN(final_name))) {
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
continue;
}
}
@@ -2335,7 +2335,7 @@ static zend_long php_extract_prefix_invalid(zend_array *arr, zend_array *symbol_
}
count++;
}
- zend_string_release_ex(Z_STR(final_name), 0);
+ zval_ptr_dtor_str(&final_name);
} ZEND_HASH_FOREACH_END();
return count;
diff --git a/ext/standard/var_unserializer.c b/ext/standard/var_unserializer.c
index 622ab87537..d377bb18e9 100644
--- a/ext/standard/var_unserializer.c
+++ b/ext/standard/var_unserializer.c
@@ -477,7 +477,7 @@ string_key:
ZEND_ASSERT(existing_propinfo->flags & ZEND_ACC_PUBLIC);
new_key = unmangled;
}
- zend_string_release_ex(Z_STR(key), 0);
+ zval_ptr_dtor_str(&key);
ZVAL_STR(&key, new_key);
} else {
zend_string_release_ex(unmangled, 0);
diff --git a/ext/standard/var_unserializer.re b/ext/standard/var_unserializer.re
index f17d339bdd..7a04a6ccbf 100644
--- a/ext/standard/var_unserializer.re
+++ b/ext/standard/var_unserializer.re
@@ -481,7 +481,7 @@ string_key:
ZEND_ASSERT(existing_propinfo->flags & ZEND_ACC_PUBLIC);
new_key = unmangled;
}
- zend_string_release_ex(Z_STR(key), 0);
+ zval_ptr_dtor_str(&key);
ZVAL_STR(&key, new_key);
} else {
zend_string_release_ex(unmangled, 0);