@@ -391,7 +391,7 @@ impl<'bs> VM<'bs> {
391
391
// make top level context with internal context
392
392
let top = TopCtx {
393
393
originator_stable_addr : from,
394
- _originator_call_seq : call_seq,
394
+ originator_call_seq : call_seq,
395
395
new_actor_addr_count : RefCell :: new ( 0 ) ,
396
396
circ_supply : TokenAmount :: from_whole ( 1_000_000_000 ) ,
397
397
} ;
@@ -490,7 +490,7 @@ impl<'bs> VM<'bs> {
490
490
#[ derive( Clone ) ]
491
491
pub struct TopCtx {
492
492
originator_stable_addr : Address ,
493
- _originator_call_seq : u64 ,
493
+ originator_call_seq : u64 ,
494
494
new_actor_addr_count : RefCell < u64 > ,
495
495
circ_supply : TokenAmount ,
496
496
}
@@ -877,15 +877,12 @@ impl<'invocation, 'bs> Runtime<&'bs MemoryBlockstore> for InvocationCtx<'invocat
877
877
}
878
878
879
879
fn new_actor_address ( & mut self ) -> Result < Address , ActorError > {
880
- let osa_bytes = self . top . originator_stable_addr . to_bytes ( ) ;
881
- let mut seq_num_bytes = self . top . originator_stable_addr . to_bytes ( ) ;
882
- let cnt = self . top . new_actor_addr_count . take ( ) ;
883
- self . top . new_actor_addr_count . replace ( cnt + 1 ) ;
884
- let mut cnt_bytes = serialize ( & cnt, "count failed" ) . unwrap ( ) . to_vec ( ) ;
885
- let mut out = osa_bytes;
886
- out. append ( & mut seq_num_bytes) ;
887
- out. append ( & mut cnt_bytes) ;
888
- Ok ( Address :: new_actor ( out. as_slice ( ) ) )
880
+ let mut b = self . top . originator_stable_addr . to_bytes ( ) ;
881
+ b. extend_from_slice ( & self . top . originator_call_seq . to_be_bytes ( ) ) ;
882
+ b. extend_from_slice (
883
+ & self . top . new_actor_addr_count . replace_with ( |old| * old + 1 ) . to_be_bytes ( ) ,
884
+ ) ;
885
+ Ok ( Address :: new_actor ( & b) )
889
886
}
890
887
891
888
fn delete_actor ( & mut self , _beneficiary : & Address ) -> Result < ( ) , ActorError > {
0 commit comments