@@ -156,7 +156,9 @@ def __init__(self, alloc=base_alloc, env=None, genesis=None):
156156        self .last_tx  =  None 
157157
158158    def  direct_tx (self , transaction ):
159-         self .last_tx , self .last_sender  =  transaction , None 
159+         self .last_tx  =  transaction 
160+         if  privtoaddr (self .last_sender ) !=  transaction .sender :
161+             self .last_sender  =  None 
160162        success , output  =  apply_transaction (self .head_state , transaction )
161163        self .block .transactions .append (transaction )
162164        if  not  success :
@@ -165,10 +167,10 @@ def direct_tx(self, transaction):
165167
166168    def  tx (self , sender = k0 , to = b'\x00 '  *  20 , value = 0 , data = b'' , startgas = STARTGAS , gasprice = GASPRICE ):
167169        sender_addr  =  privtoaddr (sender )
170+         self .last_sender  =  sender 
168171        transaction  =  Transaction (self .head_state .get_nonce (sender_addr ), gasprice , startgas ,
169172                                  to , value , data ).sign (sender )
170173        output  =  self .direct_tx (transaction )
171-         self .last_sender  =  sender 
172174        return  output 
173175
174176    def  call (self , sender = k0 , to = b'\x00 '  *  20 , value = 0 , data = b'' , startgas = STARTGAS , gasprice = GASPRICE ):
0 commit comments