diff options
Diffstat (limited to 'ext/standard')
| -rw-r--r-- | ext/standard/array.c | 36 | ||||
| -rw-r--r-- | ext/standard/basic_functions.c | 6 | ||||
| -rw-r--r-- | ext/standard/php_filestat.h | 2 | ||||
| -rw-r--r-- | ext/standard/scanf.c | 12 | ||||
| -rw-r--r-- | ext/standard/streamsfuncs.c | 2 | ||||
| -rw-r--r-- | ext/standard/string.c | 2 | ||||
| -rw-r--r-- | ext/standard/user_filters.c | 4 | ||||
| -rw-r--r-- | ext/standard/var.c | 10 | ||||
| -rw-r--r-- | ext/standard/var_unserializer.c | 10 | ||||
| -rw-r--r-- | ext/standard/var_unserializer.re | 10 |
10 files changed, 47 insertions, 47 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c index 96cd0c991d..09852f23c3 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -1465,10 +1465,10 @@ PHP_FUNCTION(extract) *orig_var = *entry; } else { - if (var_array->refcount > 1 || *entry == EG(uninitialized_zval_ptr)) { + if (Z_REFCOUNT_P(var_array) > 1 || *entry == EG(uninitialized_zval_ptr)) { SEPARATE_ZVAL_TO_MAKE_IS_REF(entry); } else { - (*entry)->is_ref = 1; + Z_SET_ISREF_PP(entry); } zval_add_ref(entry); zend_hash_update(EG(active_symbol_table), Z_STRVAL(final_name), Z_STRLEN(final_name) + 1, (void **) entry, sizeof(zval *), NULL); @@ -1889,7 +1889,7 @@ HashTable* php_splice(HashTable *in_hash, int offset, int length, zval ***list, for (pos=0, p=in_hash->pListHead; pos<offset && p ; pos++, p=p->pListNext) { /* Get entry and increase reference count */ entry = *((zval **)p->pData); - entry->refcount++; + Z_ADDREF_P(entry); /* Update output hash depending on key type */ if (p->nKeyLength) @@ -1902,7 +1902,7 @@ HashTable* php_splice(HashTable *in_hash, int offset, int length, zval ***list, if (removed != NULL) { for ( ; pos<offset+length && p; pos++, p=p->pListNext) { entry = *((zval **)p->pData); - entry->refcount++; + Z_ADDREF_P(entry); if (p->nKeyLength) zend_hash_quick_update(*removed, p->arKey, p->nKeyLength, p->h, &entry, sizeof(zval *), NULL); else @@ -1916,7 +1916,7 @@ HashTable* php_splice(HashTable *in_hash, int offset, int length, zval ***list, /* ..for each one, create a new zval, copy entry into it and copy it into the output hash */ for (i=0; i<list_count; i++) { entry = *list[i]; - entry->refcount++; + Z_ADDREF_P(entry); zend_hash_next_index_insert(out_hash, &entry, sizeof(zval *), NULL); } } @@ -1924,7 +1924,7 @@ HashTable* php_splice(HashTable *in_hash, int offset, int length, zval ***list, /* Copy the remaining input hash entries to the output hash */ for ( ; p ; p=p->pListNext) { entry = *((zval **)p->pData); - entry->refcount++; + Z_ADDREF_P(entry); if (p->nKeyLength) zend_hash_quick_update(out_hash, p->arKey, p->nKeyLength, p->h, &entry, sizeof(zval *), NULL); else @@ -1970,7 +1970,7 @@ PHP_FUNCTION(array_push) /* For each subsequent argument, make it a reference, increase refcount, and add it to the end of the array */ for (i=1; i<argc; i++) { new_var = *args[i]; - new_var->refcount++; + Z_ADDREF_P(new_var); if (zend_hash_next_index_insert(Z_ARRVAL_P(stack), &new_var, sizeof(zval *), NULL) == FAILURE) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot add element to the array as the next element is already occupied"); @@ -2277,7 +2277,7 @@ PHP_FUNCTION(array_slice) /* Copy elements from input array to the one that's returned */ while (pos < offset_val+length_val && zend_hash_get_current_data_ex(Z_ARRVAL_PP(input), (void **)&entry, &hpos) == SUCCESS) { - (*entry)->refcount++; + Z_ADDREF_PP(entry); switch (zend_hash_get_current_key_ex(Z_ARRVAL_PP(input), &string_key, &string_key_len, &num_key, 0, &hpos)) { case HASH_KEY_IS_STRING: @@ -2314,7 +2314,7 @@ PHPAPI int php_array_merge(HashTable *dest, HashTable *src, int recursive TSRMLS case HASH_KEY_IS_STRING: if (recursive && zend_hash_find(dest, string_key, string_key_len, (void **)&dest_entry) == SUCCESS) { - if (*src_entry == *dest_entry && ((*dest_entry)->refcount % 2)) { + if (*src_entry == *dest_entry && (Z_REFCOUNT_PP(dest_entry) % 2)) { php_error_docref(NULL TSRMLS_CC, E_WARNING, "recursion detected"); return 0; } @@ -2327,7 +2327,7 @@ PHPAPI int php_array_merge(HashTable *dest, HashTable *src, int recursive TSRMLS Z_ARRVAL_PP(src_entry), recursive TSRMLS_CC)) return 0; } else { - (*src_entry)->refcount++; + Z_ADDREF_PP(src_entry); zend_hash_update(dest, string_key, string_key_len, src_entry, sizeof(zval *), NULL); @@ -2335,7 +2335,7 @@ PHPAPI int php_array_merge(HashTable *dest, HashTable *src, int recursive TSRMLS break; case HASH_KEY_IS_LONG: - (*src_entry)->refcount++; + Z_ADDREF_PP(src_entry); zend_hash_next_index_insert(dest, src_entry, sizeof(zval *), NULL); break; } @@ -2504,7 +2504,7 @@ PHP_FUNCTION(array_values) zend_hash_internal_pointer_reset_ex(Z_ARRVAL_PP(input), &pos); while (zend_hash_get_current_data_ex(Z_ARRVAL_PP(input), (void **)&entry, &pos) == SUCCESS) { - (*entry)->refcount++; + Z_ADDREF_PP(entry); zend_hash_next_index_insert(Z_ARRVAL_P(return_value), entry, sizeof(zval *), NULL); @@ -2602,7 +2602,7 @@ PHP_FUNCTION(array_reverse) zend_hash_internal_pointer_end_ex(Z_ARRVAL_PP(input), &pos); while (zend_hash_get_current_data_ex(Z_ARRVAL_PP(input), (void **)&entry, &pos) == SUCCESS) { - (*entry)->refcount++; + Z_ADDREF_PP(entry); switch (zend_hash_get_current_key_ex(Z_ARRVAL_PP(input), &string_key, &string_key_len, &num_key, 0, &pos)) { case HASH_KEY_IS_STRING: @@ -2779,7 +2779,7 @@ PHP_FUNCTION(array_change_key_case) zend_hash_internal_pointer_reset_ex(Z_ARRVAL_PP(array), &pos); while (zend_hash_get_current_data_ex(Z_ARRVAL_PP(array), (void **)&entry, &pos) == SUCCESS) { - (*entry)->refcount++; + Z_ADDREF_PP(entry); switch (zend_hash_get_current_key_ex(Z_ARRVAL_PP(array), &string_key, &str_key_len, &num_key, 0, &pos)) { case HASH_KEY_IS_LONG: @@ -2991,7 +2991,7 @@ static void php_array_intersect_key(INTERNAL_FUNCTION_PARAMETERS, int data_compa } } if (ok) { - (*((zval**)p->pData))->refcount++; + Z_ADDREF_PP((zval**)p->pData); zend_hash_index_update(Z_ARRVAL_P(return_value), p->h, p->pData, sizeof(zval*), NULL); } } else { @@ -3005,7 +3005,7 @@ static void php_array_intersect_key(INTERNAL_FUNCTION_PARAMETERS, int data_compa } } if (ok) { - (*((zval**)p->pData))->refcount++; + Z_ADDREF_PP((zval**)p->pData); zend_hash_quick_update(Z_ARRVAL_P(return_value), p->arKey, p->nKeyLength, p->h, p->pData, sizeof(zval*), NULL); } } @@ -3452,7 +3452,7 @@ static void php_array_diff_key(INTERNAL_FUNCTION_PARAMETERS, int data_compare_ty } } if (ok) { - (*((zval**)p->pData))->refcount++; + Z_ADDREF_PP((zval**)p->pData); zend_hash_index_update(Z_ARRVAL_P(return_value), p->h, p->pData, sizeof(zval*), NULL); } } else { @@ -3466,7 +3466,7 @@ static void php_array_diff_key(INTERNAL_FUNCTION_PARAMETERS, int data_compare_ty } } if (ok) { - (*((zval**)p->pData))->refcount++; + Z_ADDREF_PP((zval**)p->pData); zend_hash_quick_update(Z_ARRVAL_P(return_value), p->arKey, p->nKeyLength, p->h, p->pData, sizeof(zval*), NULL); } } diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index 6119e74fb8..cf10e21cea 100644 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -5418,7 +5418,7 @@ PHP_FUNCTION(register_shutdown_function) } for (i = 0; i < shutdown_function_entry.arg_count; i++) { - shutdown_function_entry.arguments[i]->refcount++; + Z_ADDREF_P(shutdown_function_entry.arguments[i]); } zend_hash_next_index_insert(BG(user_shutdown_function_names), &shutdown_function_entry, sizeof(php_shutdown_function_entry), NULL); } @@ -5994,7 +5994,7 @@ PHP_FUNCTION(register_tick_function) } for (i = 0; i < tick_fe.arg_count; i++) { - tick_fe.arguments[i]->refcount++; + Z_ADDREF_P(tick_fe.arguments[i]); } zend_llist_add_element(BG(user_tick_functions), &tick_fe); @@ -6285,7 +6285,7 @@ static int copy_request_variable(void *pDest, int num_args, va_list args, zend_h } zend_delete_global_variable(Z_STRVAL(new_key), Z_STRLEN(new_key) TSRMLS_CC); - ZEND_SET_SYMBOL_WITH_LENGTH(&EG(symbol_table), Z_STRVAL(new_key), Z_STRLEN(new_key) + 1, *var, (*var)->refcount + 1, 0); + ZEND_SET_SYMBOL_WITH_LENGTH(&EG(symbol_table), Z_STRVAL(new_key), Z_STRLEN(new_key) + 1, *var, Z_REFCOUNT_PP(var) + 1, 0); zval_dtor(&new_key); return 0; diff --git a/ext/standard/php_filestat.h b/ext/standard/php_filestat.h index b0aae0a76c..c8a8200d54 100644 --- a/ext/standard/php_filestat.h +++ b/ext/standard/php_filestat.h @@ -62,7 +62,7 @@ PHP_FUNCTION(clearstatcache); #define MAKE_LONG_ZVAL_INCREF(name, val)\ MAKE_STD_ZVAL(name); \ ZVAL_LONG(name, val); \ - name->refcount++; + Z_ADDREF_P(name); #ifdef PHP_WIN32 #define S_IRUSR S_IREAD diff --git a/ext/standard/scanf.c b/ext/standard/scanf.c index b711522e4c..7f1de30189 100644 --- a/ext/standard/scanf.c +++ b/ext/standard/scanf.c @@ -745,11 +745,11 @@ literal: zend_uint refcount; current = args[objIndex++]; - refcount = (*current)->refcount; + refcount = Z_REFCOUNT_PP(current); zval_dtor( *current ); ZVAL_LONG( *current, (long)(string - baseString) ); - (*current)->refcount = refcount; - (*current)->is_ref = 1; + Z_SET_REFCOUNT_PP(current, refcount); + Z_SET_ISREF_PP(current); } else { add_index_long(*return_value, objIndex++, string - baseString); } @@ -869,11 +869,11 @@ literal: zend_uint refcount; current = args[objIndex++]; - refcount = (*current)->refcount; + refcount = Z_REFCOUNT_PP(current); zval_dtor( *current ); ZVAL_STRINGL( *current, string, end-string, 1); - (*current)->refcount = refcount; - (*current)->is_ref = 1; + Z_SET_REFCOUNT_PP(current, refcount); + Z_SET_ISREF_PP(current); } else { add_index_stringl( *return_value, objIndex++, string, end-string, 1); } diff --git a/ext/standard/streamsfuncs.c b/ext/standard/streamsfuncs.c index 963cecc0fb..0d40a2a0cd 100644 --- a/ext/standard/streamsfuncs.c +++ b/ext/standard/streamsfuncs.c @@ -894,7 +894,7 @@ static int parse_context_params(php_stream_context *context, zval *params) context->notifier = php_stream_notification_alloc(); context->notifier->func = user_space_stream_notifier; context->notifier->ptr = *tmp; - ZVAL_ADDREF(*tmp); + Z_ADDREF_P(*tmp); context->notifier->dtor = user_space_stream_notifier_dtor; } if (SUCCESS == zend_hash_find(Z_ARRVAL_P(params), "options", sizeof("options"), (void**)&tmp)) { diff --git a/ext/standard/string.c b/ext/standard/string.c index 45c36d5c0c..dea0753947 100644 --- a/ext/standard/string.c +++ b/ext/standard/string.c @@ -3569,7 +3569,7 @@ static void php_str_replace_common(INTERNAL_FUNCTION_PARAMETERS, int case_sensit php_str_replace_in_subject(*search, *replace, subject_entry, result, case_sensitivity, (argc > 3) ? &count : NULL); } else { ALLOC_ZVAL(result); - ZVAL_ADDREF(*subject_entry); + Z_ADDREF_P(*subject_entry); COPY_PZVAL_TO_ZVAL(*result, *subject_entry); } /* Add to return array */ diff --git a/ext/standard/user_filters.c b/ext/standard/user_filters.c index ea6ed4c938..d900368550 100644 --- a/ext/standard/user_filters.c +++ b/ext/standard/user_filters.c @@ -335,8 +335,8 @@ static php_stream_filter *user_filter_factory_create(const char *filtername, /* create the object */ ALLOC_ZVAL(obj); object_init_ex(obj, fdat->ce); - ZVAL_REFCOUNT(obj) = 1; - PZVAL_IS_REF(obj) = 1; + Z_SET_REFCOUNT_P(obj, 1); + Z_SET_ISREF_P(obj); /* filtername */ add_property_string(obj, "filtername", (char*)filtername, 1); diff --git a/ext/standard/var.c b/ext/standard/var.c index 820c3077f1..63e57b38b0 100644 --- a/ext/standard/var.c +++ b/ext/standard/var.c @@ -35,8 +35,7 @@ #include "basic_functions.h" #include "php_incomplete_class.h" -#define COMMON ((*struc)->is_ref ? "&" : "") -#define Z_REFCOUNT_PP(a) ((*a)->refcount) +#define COMMON (Z_ISREF_PP(struc) ? "&" : "") /* }}} */ @@ -269,7 +268,8 @@ PHPAPI void php_debug_zval_dump(zval **struc, int level TSRMLS_DC) php_printf("%slong(%ld) refcount(%u)\n", COMMON, Z_LVAL_PP(struc), Z_REFCOUNT_PP(struc)); break; case IS_DOUBLE: - php_printf("%sdouble(%.*G) refcount(%u)\n", COMMON, (int) EG(precision), Z_DVAL_PP(struc), Z_REFCOUNT_PP(struc)); + php_printf("%sdouble(%.*G) refcount(%u)\n", COMMON, (int) EG(precision), Z_DVAL_PP(struc), +Z_REFCOUNT_PP(struc)); break; case IS_STRING: php_printf("%sstring(%d) \"", COMMON, Z_STRLEN_PP(struc)); @@ -500,7 +500,7 @@ static inline int php_add_var_hash(HashTable *var_hash, zval *var, void *var_old } if (var_old && zend_hash_find(var_hash, p, len, var_old) == SUCCESS) { - if (!var->is_ref) { + if (!Z_ISREF_P(var)) { /* we still need to bump up the counter, since non-refs will be counted separately by unserializer */ var_no = -1; @@ -648,7 +648,7 @@ static void php_var_serialize_intern(smart_str *buf, zval *struc, HashTable *var if (var_hash && php_add_var_hash(var_hash, struc, (void *) &var_already TSRMLS_CC) == FAILURE) { - if(struc->is_ref) { + if(Z_ISREF_P(struc)) { smart_str_appendl(buf, "R:", 2); smart_str_append_long(buf, *var_already); smart_str_appendc(buf, ';'); diff --git a/ext/standard/var_unserializer.c b/ext/standard/var_unserializer.c index 4802fd5a8e..11bf3a5004 100644 --- a/ext/standard/var_unserializer.c +++ b/ext/standard/var_unserializer.c @@ -76,7 +76,7 @@ static inline void var_push_dtor(php_unserialize_data_t *var_hashx, zval **rval) prev->next = var_hash; } - (*rval)->refcount++; + Z_ADDREF_PP(rval); var_hash->data[var_hash->used_slots++] = *rval; } @@ -1096,8 +1096,8 @@ yy91: zval_ptr_dtor(rval); } *rval = *rval_ref; - (*rval)->refcount++; - (*rval)->is_ref = 0; + Z_ADDREF_PP(rval); + Z_UNSET_ISREF_PP(rval); return 1; } @@ -1140,8 +1140,8 @@ yy97: zval_ptr_dtor(rval); } *rval = *rval_ref; - (*rval)->refcount++; - (*rval)->is_ref = 1; + Z_ADDREF_PP(rval); + Z_SET_ISREF_PP(rval); return 1; } diff --git a/ext/standard/var_unserializer.re b/ext/standard/var_unserializer.re index bb8eefea01..3800c67f2f 100644 --- a/ext/standard/var_unserializer.re +++ b/ext/standard/var_unserializer.re @@ -74,7 +74,7 @@ static inline void var_push_dtor(php_unserialize_data_t *var_hashx, zval **rval) prev->next = var_hash; } - (*rval)->refcount++; + Z_ADDREF_PP(rval); var_hash->data[var_hash->used_slots++] = *rval; } @@ -418,8 +418,8 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER) zval_ptr_dtor(rval); } *rval = *rval_ref; - (*rval)->refcount++; - (*rval)->is_ref = 1; + Z_ADDREF_PP(rval); + Z_SET_ISREF_PP(rval); return 1; } @@ -441,8 +441,8 @@ PHPAPI int php_var_unserialize(UNSERIALIZE_PARAMETER) zval_ptr_dtor(rval); } *rval = *rval_ref; - (*rval)->refcount++; - (*rval)->is_ref = 0; + Z_ADDREF_PP(rval); + Z_UNSET_ISREF_PP(rval); return 1; } |
