}
while (param_count-->0) {
- if (Z_REFCOUNTED_P(param_ptr)) {
- Z_ADDREF_P(param_ptr);
- }
+ Z_TRY_ADDREF_P(param_ptr);
zend_hash_next_index_insert_new(Z_ARRVAL_P(argument_array), param_ptr);
param_ptr++;
}
zval *q = &CE_STATIC_MEMBERS(class_type->parent)[i];
ZVAL_NEW_REF(q, q);
- ZVAL_COPY_VALUE(&CE_STATIC_MEMBERS(class_type)[i], q);
- Z_ADDREF_P(q);
+ ZVAL_COPY(&CE_STATIC_MEMBERS(class_type)[i], q);
} else {
ZVAL_COPY_OR_DUP(&CE_STATIC_MEMBERS(class_type)[i], Z_REFVAL_P(p));
}
}
if (result) {
- if (Z_REFCOUNTED_P(result)) {
- Z_ADDREF_P(result);
- }
+ Z_TRY_ADDREF_P(result);
return SUCCESS;
} else {
return FAILURE;
while (num_symbol_tables-- > 0) {
symbol_table = va_arg(symbol_table_list, HashTable *);
zend_hash_str_update(symbol_table, name, name_length, symbol);
- if (Z_REFCOUNTED_P(symbol)) {
- Z_ADDREF_P(symbol);
- }
+ Z_TRY_ADDREF_P(symbol);
}
va_end(symbol_table_list);
return SUCCESS;
ZEND_HASH_FOREACH_VAL(Z_ARRVAL_P(args), arg) {
if (func && !Z_ISREF_P(arg) && ARG_SHOULD_BE_SENT_BY_REF(func, n)) {
ZVAL_NEW_REF(params, arg);
- if (Z_REFCOUNTED_P(arg)) {
- Z_ADDREF_P(arg);
- }
+ Z_TRY_ADDREF_P(arg);
} else {
ZVAL_COPY(params, arg);
}
if (Z_REFCOUNTED_P(val)) {
copy_constant_array(new_val, val);
}
- } else if (Z_REFCOUNTED_P(val)) {
- Z_ADDREF_P(val);
+ } else {
+ Z_TRY_ADDREF_P(val);
}
} ZEND_HASH_FOREACH_END();
}
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (OP_DATA_TYPE == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (OP_DATA_TYPE == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CONST == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CONST == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_TMP_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_TMP_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_VAR == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_VAR == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
value = Z_REFVAL_P(value);
Z_TRY_ADDREF_P(value);
}
- } else if (IS_CV == IS_CV && Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
+ } else if (IS_CV == IS_CV) {
+ Z_TRY_ADDREF_P(value);
}
}
zend_hash_add_new(zobj->properties, Z_STR_P(property), value);
/* In a future release of Bison, this section will be replaced
by #include "json_parser.tab.h". */
-#ifndef YY_PHP_JSON_YY_HOME_DMITRY_PHP_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
-# define YY_PHP_JSON_YY_HOME_DMITRY_PHP_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
+#ifndef YY_PHP_JSON_YY_HOME_HUIXINCHEN_OPENSOURCE_TRUNK_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
+# define YY_PHP_JSON_YY_HOME_HUIXINCHEN_OPENSOURCE_TRUNK_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
/* Debug traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
int php_json_yyparse (php_json_parser *parser);
-#endif /* !YY_PHP_JSON_YY_HOME_DMITRY_PHP_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED */
+#endif /* !YY_PHP_JSON_YY_HOME_HUIXINCHEN_OPENSOURCE_TRUNK_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED */
/* Copy the second part of user declarations. */
}
ZVAL_NEW_STR(&zkey, key);
zend_std_write_property(object, &zkey, zvalue, NULL);
-
- if (Z_REFCOUNTED_P(zvalue)) {
- Z_DELREF_P(zvalue);
- }
+ Z_TRY_DELREF_P(zvalue);
}
zend_string_release(key);
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
-#ifndef YY_PHP_JSON_YY_HOME_DMITRY_PHP_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
-# define YY_PHP_JSON_YY_HOME_DMITRY_PHP_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
+#ifndef YY_PHP_JSON_YY_HOME_HUIXINCHEN_OPENSOURCE_TRUNK_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
+# define YY_PHP_JSON_YY_HOME_HUIXINCHEN_OPENSOURCE_TRUNK_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED
/* Debug traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
int php_json_yyparse (php_json_parser *parser);
-#endif /* !YY_PHP_JSON_YY_HOME_DMITRY_PHP_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED */
+#endif /* !YY_PHP_JSON_YY_HOME_HUIXINCHEN_OPENSOURCE_TRUNK_EXT_JSON_JSON_PARSER_TAB_H_INCLUDED */
}
ZVAL_NEW_STR(&zkey, key);
zend_std_write_property(object, &zkey, zvalue, NULL);
-
- if (Z_REFCOUNTED_P(zvalue)) {
- Z_DELREF_P(zvalue);
- }
+ Z_TRY_DELREF_P(zvalue);
}
zend_string_release(key);
{
struct msghdr *msg = args[0];
size_t len;
+ zend_string *str;
- if (Z_REFCOUNTED_P(elem)) {
- Z_ADDREF_P(elem);
- }
- convert_to_string_ex(elem);
+ str = zval_get_string(elem);
- len = Z_STRLEN_P(elem);
- msg->msg_iov[i - 1].iov_base = accounted_emalloc(len, ctx);
- msg->msg_iov[i - 1].iov_len = len;
- memcpy(msg->msg_iov[i - 1].iov_base, Z_STRVAL_P(elem), len);
+ msg->msg_iov[i - 1].iov_base = accounted_emalloc(ZSTR_LEN(str), ctx);
+ msg->msg_iov[i - 1].iov_len = ZSTR_LEN(str);
+ memcpy(msg->msg_iov[i - 1].iov_base, ZSTR_VAL(str), ZSTR_LEN(str));
- zval_ptr_dtor(elem);
+ zend_string_release(str);
}
static void from_zval_write_iov_array(const zval *arr, char *msghdr_c, ser_context *ctx)
{
ret = SUCCESS;
}
} else {
- if (Z_REFCOUNTED_P(val)) {
- Z_ADDREF_P(val);
- }
- convert_to_string_ex(val);
- ret = php_string_to_if_index(Z_STRVAL_P(val), out);
- zval_ptr_dtor(val);
+ zend_string *str = zval_get_string(val);
+ ret = php_string_to_if_index(ZSTR_VAL(str), out);
+ zend_string_release(str);
}
return ret;
php_socket *sock, php_sockaddr_storage *ss, socklen_t *ss_len)
{
zval *val;
+ zend_string *str;
if ((val = zend_hash_str_find(ht, key, strlen(key))) == NULL) {
php_error_docref(NULL, E_WARNING, "no key \"%s\" passed in optval", key);
return FAILURE;
}
- if (Z_REFCOUNTED_P(val)) {
- Z_ADDREF_P(val);
- }
- convert_to_string_ex(val);
- if (!php_set_inet46_addr(ss, ss_len, Z_STRVAL_P(val), sock)) {
- zval_ptr_dtor(val);
+ str = zval_get_string(val);
+ if (!php_set_inet46_addr(ss, ss_len, ZSTR_VAL(str), sock)) {
+ zend_string_release(str);
return FAILURE;
}
- zval_ptr_dtor(val);
+ zend_string_release(str);
return SUCCESS;
}
return;
}
- if (Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
- }
-
+ Z_TRY_ADDREF_P(value);
if (!offset) {
ht = spl_array_get_hash_table(intern);
zend_hash_next_index_insert(ht, value);
return;
}
- if (Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
- }
+ Z_TRY_ADDREF_P(value);
if (index == intern->llist->count) {
/* If index is the last entry+1 then we do a push because we're not inserting before any entry */
spl_ptr_llist_push(intern->llist, value);
for (i = 0; i < intern->array.size; i++) {
if (!Z_ISUNDEF(intern->array.elements[i])) {
zend_hash_index_update(ht, i, &intern->array.elements[i]);
- if (Z_REFCOUNTED(intern->array.elements[i])){
- Z_ADDREF(intern->array.elements[i]);
- }
+ Z_TRY_ADDREF(intern->array.elements[i]);
} else {
zend_hash_index_update(ht, i, &EG(uninitialized_zval));
}
spl_fixedarray_init(&intern->array, size);
ZEND_HASH_FOREACH_VAL(intern_ht, data) {
- if (Z_REFCOUNTED_P(data)) {
- Z_ADDREF_P(data);
- }
- ZVAL_COPY_VALUE(&intern->array.elements[index], data);
+ ZVAL_COPY(&intern->array.elements[index], data);
index++;
} ZEND_HASH_FOREACH_END();
for (; i < intern->array.size; i++) {
if (!Z_ISUNDEF(intern->array.elements[i])) {
zend_hash_index_update(Z_ARRVAL_P(return_value), i, &intern->array.elements[i]);
- if (Z_REFCOUNTED(intern->array.elements[i])) {
- Z_ADDREF(intern->array.elements[i]);
- }
+ Z_TRY_ADDREF(intern->array.elements[i]);
} else {
zend_hash_index_update(Z_ARRVAL_P(return_value), i, &EG(uninitialized_zval));
}
/* }}} */
static void spl_ptr_heap_zval_ctor(zval *elem) { /* {{{ */
- if (Z_REFCOUNTED_P(elem)) {
- Z_ADDREF_P(elem);
- }
+ Z_TRY_ADDREF_P(elem);
}
/* }}} */
efree(cfi);
return NULL;
}
- if (Z_REFCOUNTED_P(&cfi->fci.function_name)) {
- Z_ADDREF(cfi->fci.function_name);
- }
+ Z_TRY_ADDREF(cfi->fci.function_name);
cfi->object = cfi->fcc.object;
if (cfi->object) GC_ADDREF(cfi->object);
intern->u.cbfilter = cfi;
use_copy = zend_make_printable_zval(&intern->u.caching.zstr, &expr_copy);
if (use_copy) {
ZVAL_COPY_VALUE(&intern->u.caching.zstr, &expr_copy);
- } else if (Z_REFCOUNTED(intern->u.caching.zstr)) {
- Z_ADDREF(intern->u.caching.zstr);
+ } else {
+ Z_TRY_ADDREF(intern->u.caching.zstr);
}
}
spl_dual_it_next(intern, 0);
return;
}
- if (Z_REFCOUNTED_P(value)) {
- Z_ADDREF_P(value);
- }
+ Z_TRY_ADDREF_P(value);
zend_symtable_update(Z_ARRVAL(intern->u.caching.zcache), key, value);
}
/* }}} */
if (data == NULL) {
return ZEND_HASH_APPLY_STOP;
}
- if (Z_REFCOUNTED_P(data)) {
- Z_ADDREF_P(data);
- }
+ Z_TRY_ADDREF_P(data);
add_next_index_zval(return_value, data);
return ZEND_HASH_APPLY_KEEP;
}
zval_ptr_dtor(&ent1->data);
} else if (Z_TYPE(ent2->data) == IS_OBJECT) {
zend_update_property(Z_OBJCE(ent2->data), &ent2->data, ent1->varname, strlen(ent1->varname), &ent1->data);
- if Z_REFCOUNTED(ent1->data) Z_DELREF(ent1->data);
+ Z_TRY_DELREF(ent1->data);
} else {
zend_symtable_str_update(target_hash, ent1->varname, strlen(ent1->varname), &ent1->data);
}
if (XMLRPC_ServerRegisterMethod(server->server_ptr, method_key, php_xmlrpc_callback)) {
/* save for later use */
- if (Z_REFCOUNTED_P(method_name)) {
- Z_ADDREF_P(method_name);
- }
+ Z_TRY_ADDREF_P(method_name);
/* register our php method */
add_zval(&server->method_map, method_key, method_name);
RETURN_FALSE;
}
- if (Z_REFCOUNTED_P(method_name)) {
- Z_ADDREF_P(method_name);
- }
+ Z_TRY_ADDREF_P(method_name);
/* register our php method */
add_zval(&server->introspection_map, NULL, method_name);
RETURN_FALSE;
}
convert_to_string_ex(entry);
- if (Z_REFCOUNTED_P(entry)) {
- Z_ADDREF_P(entry);
- }
+ Z_TRY_ADDREF_P(entry);
zend_hash_update(intern->parameter, string_key, entry);
} ZEND_HASH_FOREACH_END();
RETURN_TRUE;