return;
}
- if (op_array->static_variables) {
- HashTable *ht;
-
- SERIALIZE_PTR(op_array->static_variables);
- ht = op_array->static_variables;
- UNSERIALIZE_PTR(ht);
- zend_file_cache_serialize_hash(ht, script, info, buf, zend_file_cache_serialize_zval);
- }
-
if (op_array->scope) {
if (UNEXPECTED(zend_shared_alloc_get_xlat_entry(op_array->opcodes))) {
op_array->refcount = (uint32_t*)(intptr_t)-1;
+ SERIALIZE_PTR(op_array->static_variables);
SERIALIZE_PTR(op_array->literals);
SERIALIZE_PTR(op_array->opcodes);
SERIALIZE_PTR(op_array->arg_info);
zend_shared_alloc_register_xlat_entry(op_array->opcodes, op_array->opcodes);
}
+ if (op_array->static_variables) {
+ HashTable *ht;
+
+ SERIALIZE_PTR(op_array->static_variables);
+ ht = op_array->static_variables;
+ UNSERIALIZE_PTR(ht);
+ zend_file_cache_serialize_hash(ht, script, info, buf, zend_file_cache_serialize_zval);
+ }
+
if (op_array->literals) {
zval *p, *end;
return;
}
- if (op_array->static_variables) {
- HashTable *ht;
-
- UNSERIALIZE_PTR(op_array->static_variables);
- ht = op_array->static_variables;
- zend_file_cache_unserialize_hash(ht,
- script, buf, zend_file_cache_unserialize_zval, ZVAL_PTR_DTOR);
- }
-
if (op_array->refcount) {
op_array->refcount = NULL;
+ UNSERIALIZE_PTR(op_array->static_variables);
UNSERIALIZE_PTR(op_array->literals);
UNSERIALIZE_PTR(op_array->opcodes);
UNSERIALIZE_PTR(op_array->arg_info);
return;
}
+ if (op_array->static_variables) {
+ HashTable *ht;
+
+ UNSERIALIZE_PTR(op_array->static_variables);
+ ht = op_array->static_variables;
+ zend_file_cache_unserialize_hash(ht,
+ script, buf, zend_file_cache_unserialize_zval, ZVAL_PTR_DTOR);
+ }
+
if (op_array->literals) {
zval *p, *end;
op_array->prototype = NULL;
}
+ if (op_array->scope
+ && !(op_array->fn_flags & ZEND_ACC_CLOSURE)
+ && (op_array->scope->ce_flags & ZEND_ACC_CACHED)) {
+ return;
+ }
+
if (op_array->static_variables && !zend_accel_in_shm(op_array->static_variables)) {
Bucket *p;
GC_TYPE_INFO(op_array->static_variables) = GC_ARRAY | ((IS_ARRAY_IMMUTABLE|GC_NOT_COLLECTABLE) << GC_FLAGS_SHIFT);
}
- if (op_array->scope
- && !(op_array->fn_flags & ZEND_ACC_CLOSURE)
- && (op_array->scope->ce_flags & ZEND_ACC_CACHED)) {
- return;
- }
-
if (op_array->literals) {
zval *p, *end;
}
}
+ if (op_array->scope
+ && !(op_array->fn_flags & ZEND_ACC_CLOSURE)
+ && (op_array->scope->ce_flags & ZEND_ACC_CACHED)) {
+ return;
+ }
+
if (op_array->static_variables && !zend_accel_in_shm(op_array->static_variables)) {
if (!zend_shared_alloc_get_xlat_entry(op_array->static_variables)) {
Bucket *p;
}
}
- if (op_array->scope
- && !(op_array->fn_flags & ZEND_ACC_CLOSURE)
- && (op_array->scope->ce_flags & ZEND_ACC_CACHED)) {
- return;
- }
-
if (op_array->literals) {
zval *p = op_array->literals;
zval *end = p + op_array->last_literal;