diff options
| author | Anatol Belski <ab@php.net> | 2014-12-05 03:50:02 +0100 | 
|---|---|---|
| committer | Anatol Belski <ab@php.net> | 2014-12-05 03:50:02 +0100 | 
| commit | 88bb9fedc4b5fc750524a7b00be1d46fde2f5929 (patch) | |
| tree | e799ee0cdf4a5d8a8236f599ab8c85a9a05d8673 /Zend/zend_execute_API.c | |
| parent | 864cd82acef03b75b994f3fd98d9b4a51a99204a (diff) | |
| parent | f0a17c293b5b240a4da27e6b5f89dbd9c9183488 (diff) | |
| download | php-git-88bb9fedc4b5fc750524a7b00be1d46fde2f5929.tar.gz | |
Merge remote-tracking branch 'origin/master' into native-tls
* origin/master: (111 commits)
  Fix zend_fcall_info_arg*() to use ZVAL_COPY
  Fixed #65213 - cannot cast SplFileInfo to boolean
  add initial install
  switch to C travis project instead of PHP
  use the generic TRAVIS environment var to check for travis (see http://docs.travis-ci.com/user/ci-environment/)
  fix TS build
  add config option to target codegen architectures
  updated NEWS
  updated NEWS
  Fixed bug #55541 errors spawn MessageBox, which blocks test automation
  Get rid of duplicate handlers (ZEND_ADD_SPEC_TMP_TMP and ZEND_ADD_SPEC_VAR_VAR are absolutely the same).
  Use zend_string* for op_array->arg_info[]->name and op_array->arg_info[]->class_name. For internal functions we still use char*.
  Fixed __debugInfo() support
  Update UPGRADING for the new variadic functions, and re-sort.
  Improved POST INC/DEC
  make sure that we don't truncate the stack trace and cause false test failures when the test is executed in a directory with long path
  Missed closed folder mark
  Revert "Unecessary assignment"
  Fixed improper memory release
  Unecessary assignment
  ...
Diffstat (limited to 'Zend/zend_execute_API.c')
| -rw-r--r-- | Zend/zend_execute_API.c | 11 | 
1 files changed, 5 insertions, 6 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 480fb28f62..60ffb93ddc 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -736,7 +736,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS  	}  	func = fci_cache->function_handler; -	call = zend_vm_stack_push_call_frame(VM_FRAME_TOP_FUNCTION, +	call = zend_vm_stack_push_call_frame(ZEND_CALL_TOP_FUNCTION,  		func, fci->param_count, fci_cache->called_scope, fci_cache->object, NULL TSRMLS_CC);  	calling_scope = fci_cache->calling_scope;  	fci->object = fci_cache->object; @@ -787,7 +787,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS  					!ARG_MAY_BE_SENT_BY_REF(func, i + 1)) {  					if (i) {  						/* hack to clean up the stack */ -						call->num_args = i; +						ZEND_CALL_NUM_ARGS(call) = i;  						zend_vm_stack_free_args(call TSRMLS_CC);  					}  					zend_vm_stack_free_call_frame(call TSRMLS_CC); @@ -827,7 +827,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS  			ZVAL_COPY(param, &fci->params[i]);  		}  	} -	call->num_args = fci->param_count; +	ZEND_CALL_NUM_ARGS(call) = fci->param_count;  	EG(scope) = calling_scope;  	if (func->common.fn_flags & ZEND_ACC_STATIC) { @@ -835,9 +835,8 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS  	}  	if (!fci->object) {  		Z_OBJ(call->This) = NULL; -		Z_TYPE_INFO(call->This) = IS_UNDEF;  	} else { -		ZVAL_OBJ(&call->This, fci->object); +		Z_OBJ(call->This) = fci->object;  		GC_REFCOUNT(fci->object)++;  	} @@ -1538,7 +1537,7 @@ ZEND_API zend_array *zend_rebuild_symbol_table(TSRMLS_D) /* {{{ */  	for (i = 0; i < ex->func->op_array.last_var; i++) {  		zval zv; -		ZVAL_INDIRECT(&zv, EX_VAR_NUM_2(ex, i)); +		ZVAL_INDIRECT(&zv, ZEND_CALL_VAR_NUM(ex, i));  		zend_hash_add_new(&symbol_table->ht,  			ex->func->op_array.vars[i], &zv);  	}  | 
