php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Return to Bug #60169
Patch bug60169.diff revision 2011-10-31 06:48 UTC by laruence@php.net
revision 2011-10-30 02:03 UTC by laruence@php.net
Patch invalid.patch revision 2011-10-31 03:24 UTC by laruence@php.net
Patch bug60169.phpt revision 2011-10-30 02:08 UTC by laruence@php.net

Patch bug60169.diff for Scripting Engine problem Bug #60169

Patch version 2011-10-30 02:03 UTC

Return to Bug #60169 | Download this patch
This patch is obsolete

Obsoleted by patches:

Patch Revisions: 2011-10-31 06:48 UTC | 2011-10-30 02:03 UTC

Developer: laruence@php.net

Line 1 (now 1), was 158 lines, now 19 lines
 Index: Zend/zend_vm_def.h
 Index: trunk/Zend/zend_vm_execute.h
  ===================================================================
 --- Zend/zend_vm_def.h	(revision 318598)
 +++ Zend/zend_vm_def.h	(working copy)
 @@ -4689,12 +4689,12 @@
  		if (OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) {
  			Z_ADDREF_P(value);
  			EX_T(opline->result.var).var.ptr = value;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		} else {
  			ALLOC_ZVAL(ret);
  			INIT_PZVAL_COPY(ret, value);
  			EX_T(opline->result.var).var.ptr = ret;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  			if (!IS_OP1_TMP_FREE()) {
  				zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  			}
 @@ -4741,12 +4741,12 @@
  	if (OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) {
  		Z_ADDREF_P(value);
  		EX_T(opline->result.var).var.ptr = value;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  	} else {
  		ALLOC_ZVAL(ret);
  		INIT_PZVAL_COPY(ret, value);
  		EX_T(opline->result.var).var.ptr = ret;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		if (!IS_OP1_TMP_FREE()) {
  			zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  		}
 Index: Zend/zend_vm_execute.h
 ===================================================================
 --- Zend/zend_vm_execute.h	(revision 318598)
 +++ Zend/zend_vm_execute.h	(working copy)
 @@ -2863,12 +2863,12 @@
  		if (IS_CONST == IS_VAR || IS_CONST == IS_CV) {
  			Z_ADDREF_P(value);
  			EX_T(opline->result.var).var.ptr = value;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		} else {
  			ALLOC_ZVAL(ret);
  			INIT_PZVAL_COPY(ret, value);
  			EX_T(opline->result.var).var.ptr = ret;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  			if (!0) {
  				zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  			}
 @@ -2914,12 +2914,12 @@
  	if (IS_CONST == IS_VAR || IS_CONST == IS_CV) {
  		Z_ADDREF_P(value);
  		EX_T(opline->result.var).var.ptr = value;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  	} else {
  		ALLOC_ZVAL(ret);
  		INIT_PZVAL_COPY(ret, value);
  		EX_T(opline->result.var).var.ptr = ret;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		if (!0) {
  			zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  		}
 @@ -7223,12 +7223,12 @@
  		if (IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) {
  			Z_ADDREF_P(value);
  			EX_T(opline->result.var).var.ptr = value;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		} else {
  			ALLOC_ZVAL(ret);
  			INIT_PZVAL_COPY(ret, value);
  			EX_T(opline->result.var).var.ptr = ret;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  			if (!1) {
  				zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  			}
 @@ -7275,12 +7275,12 @@
  	if (IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) {
  		Z_ADDREF_P(value);
  		EX_T(opline->result.var).var.ptr = value;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  	} else {
  		ALLOC_ZVAL(ret);
  		INIT_PZVAL_COPY(ret, value);
  		EX_T(opline->result.var).var.ptr = ret;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		if (!1) {
  			zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  		}
 @@ -11694,12 +11694,12 @@
  		if (IS_VAR == IS_VAR || IS_VAR == IS_CV) {
  			Z_ADDREF_P(value);
  			EX_T(opline->result.var).var.ptr = value;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		} else {
  			ALLOC_ZVAL(ret);
  			INIT_PZVAL_COPY(ret, value);
  			EX_T(opline->result.var).var.ptr = ret;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  			if (!0) {
  				zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  			}
 @@ -11746,12 +11746,12 @@
  	if (IS_VAR == IS_VAR || IS_VAR == IS_CV) {
  		Z_ADDREF_P(value);
  		EX_T(opline->result.var).var.ptr = value;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  	} else {
  		ALLOC_ZVAL(ret);
  		INIT_PZVAL_COPY(ret, value);
  		EX_T(opline->result.var).var.ptr = ret;
 -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		if (!0) {
  			zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  		}
 @@ -27346,12 +27346,12 @@
  		if (IS_CV == IS_VAR || IS_CV == IS_CV) {
  			Z_ADDREF_P(value);
  			EX_T(opline->result.var).var.ptr = value;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  		} else {
  			ALLOC_ZVAL(ret);
  			INIT_PZVAL_COPY(ret, value);
  			EX_T(opline->result.var).var.ptr = ret;
 -			EX_T(opline->result.var).var.ptr_ptr = NULL;
 +			EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
  			if (!0) {
  				zval_copy_ctor(EX_T(opline->result.var).var.ptr);
  			}
 --- trunk/Zend/zend_vm_execute.h	(revision 318478)
 +++ trunk/Zend/zend_vm_execute.h	(working copy)
  @@ -27397,12 +27397,12 @@
   	if (IS_CV == IS_VAR || IS_CV == IS_CV) {
   		Z_ADDREF_P(value);
   		EX_T(opline->result.var).var.ptr = value;
  -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
 +		EX_T(opline->result.var).var.ptr_ptr = &value;
   	} else {
   		ALLOC_ZVAL(ret);
   		INIT_PZVAL_COPY(ret, value);
   		EX_T(opline->result.var).var.ptr = ret;
  -		EX_T(opline->result.var).var.ptr_ptr = NULL;
 +		EX_T(opline->result.var).var.ptr_ptr = &EX_T(opline->result.var).var.ptr;
 +		EX_T(opline->result.var).var.ptr_ptr = &ret;
   		if (!0) {
   			zval_copy_ctor(EX_T(opline->result.var).var.ptr);
   		}
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Mar 19 10:01:30 2024 UTC