Commit:    e65b966aac8af19cc7b7dd3bf68639b869a66f99
Author:    Dmitry Stogov <dmi...@zend.com>         Fri, 14 Dec 2012 12:10:29 
+0400
Parents:   5aabf243bfabc6f381523f2eb7f1f3bd035b24cd
Branches:  PHP-5.5 master

Link:       
http://git.php.net/?p=php-src.git;a=commitdiff;h=e65b966aac8af19cc7b7dd3bf68639b869a66f99

Log:
Fixed uninitialized EX(call)->called_scope

Changed paths:
  M  Zend/zend_vm_def.h
  M  Zend/zend_vm_execute.h


Diff:
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index fedd720..a9ed07e 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -2636,6 +2636,7 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, 
CONST|TMP|VAR|CV)
                        CACHE_PTR(opline->op2.literal->cache_slot, call->fbc);
                }
                call->object = NULL;
+               call->called_scope = NULL;
                call->is_ctor_call = 0;
                EX(call) = call;
                /*CHECK_EXCEPTION();*/
@@ -2663,6 +2664,7 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, 
CONST|TMP|VAR|CV)
                        efree(lcname);
                        FREE_OP2();
                        call->object = NULL;
+                       call->called_scope = NULL;
                        call->is_ctor_call = 0;
                        EX(call) = call;
                        CHECK_EXCEPTION();
@@ -2782,6 +2784,7 @@ ZEND_VM_HANDLER(69, ZEND_INIT_NS_FCALL_BY_NAME, ANY, 
CONST)
        }
 
        call->object = NULL;
+       call->called_scope = NULL;
        call->is_ctor_call = 0;
        EX(call) = call;
        ZEND_VM_NEXT_OPCODE();
@@ -2810,6 +2813,7 @@ ZEND_VM_HANDLER(60, ZEND_DO_FCALL, CONST, ANY)
        }
        call->fbc = EX(function_state).function;
        call->object = NULL;
+       call->called_scope = NULL;
        call->is_ctor_call = 0;
        EX(call) = call;
 
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 50a3ab5..6890f58 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -1218,6 +1218,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE
                        CACHE_PTR(opline->op2.literal->cache_slot, call->fbc);
                }
                call->object = NULL;
+               call->called_scope = NULL;
                call->is_ctor_call = 0;
                EX(call) = call;
                /*CHECK_EXCEPTION();*/
@@ -1245,6 +1246,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE
                        efree(lcname);
 
                        call->object = NULL;
+                       call->called_scope = NULL;
                        call->is_ctor_call = 0;
                        EX(call) = call;
                        CHECK_EXCEPTION();
@@ -1364,6 +1366,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPC
        }
 
        call->object = NULL;
+       call->called_scope = NULL;
        call->is_ctor_call = 0;
        EX(call) = call;
        ZEND_VM_NEXT_OPCODE();
@@ -1535,6 +1538,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_H
                        CACHE_PTR(opline->op2.literal->cache_slot, call->fbc);
                }
                call->object = NULL;
+               call->called_scope = NULL;
                call->is_ctor_call = 0;
                EX(call) = call;
                /*CHECK_EXCEPTION();*/
@@ -1562,6 +1566,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_H
                        efree(lcname);
                        zval_dtor(free_op2.var);
                        call->object = NULL;
+                       call->called_scope = NULL;
                        call->is_ctor_call = 0;
                        EX(call) = call;
                        CHECK_EXCEPTION();
@@ -1713,6 +1718,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_H
                        CACHE_PTR(opline->op2.literal->cache_slot, call->fbc);
                }
                call->object = NULL;
+               call->called_scope = NULL;
                call->is_ctor_call = 0;
                EX(call) = call;
                /*CHECK_EXCEPTION();*/
@@ -1740,6 +1746,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_H
                        efree(lcname);
                        if (free_op2.var) {zval_ptr_dtor(&free_op2.var);};
                        call->object = NULL;
+                       call->called_scope = NULL;
                        call->is_ctor_call = 0;
                        EX(call) = call;
                        CHECK_EXCEPTION();
@@ -1926,6 +1933,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HA
                        CACHE_PTR(opline->op2.literal->cache_slot, call->fbc);
                }
                call->object = NULL;
+               call->called_scope = NULL;
                call->is_ctor_call = 0;
                EX(call) = call;
                /*CHECK_EXCEPTION();*/
@@ -1953,6 +1961,7 @@ static int ZEND_FASTCALL  
ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HA
                        efree(lcname);
 
                        call->object = NULL;
+                       call->called_scope = NULL;
                        call->is_ctor_call = 0;
                        EX(call) = call;
                        CHECK_EXCEPTION();
@@ -2287,6 +2296,7 @@ static int ZEND_FASTCALL  
ZEND_DO_FCALL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_A
        }
        call->fbc = EX(function_state).function;
        call->object = NULL;
+       call->called_scope = NULL;
        call->is_ctor_call = 0;
        EX(call) = call;


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to