@@ -763,9 +763,10 @@ impl<'ctx, 'engine, 'func> Executor<'ctx, 'engine, 'func> {
763
763
. and_then ( |memory| memory. get_mut ( ..n) )
764
764
. ok_or ( TrapCode :: MemoryOutOfBounds ) ?;
765
765
memory. fill ( byte) ;
766
- this . try_next_instr ( )
766
+ Ok ( ( ) )
767
767
} ,
768
- )
768
+ ) ?;
769
+ self . try_next_instr ( )
769
770
}
770
771
771
772
fn visit_memory_copy ( & mut self ) -> Result < ( ) , TrapCode > {
@@ -786,9 +787,10 @@ impl<'ctx, 'engine, 'func> Executor<'ctx, 'engine, 'func> {
786
787
. and_then ( |memory| memory. get ( ..n) )
787
788
. ok_or ( TrapCode :: MemoryOutOfBounds ) ?;
788
789
data. copy_within ( src_offset..src_offset. wrapping_add ( n) , dst_offset) ;
789
- this . try_next_instr ( )
790
+ Ok ( ( ) )
790
791
} ,
791
- )
792
+ ) ?;
793
+ self . try_next_instr ( )
792
794
}
793
795
794
796
fn visit_memory_init ( & mut self , segment : DataSegmentIdx ) -> Result < ( ) , TrapCode > {
@@ -812,9 +814,10 @@ impl<'ctx, 'engine, 'func> Executor<'ctx, 'engine, 'func> {
812
814
. and_then ( |data| data. get ( ..n) )
813
815
. ok_or ( TrapCode :: MemoryOutOfBounds ) ?;
814
816
memory. copy_from_slice ( data) ;
815
- this . try_next_instr ( )
817
+ Ok ( ( ) )
816
818
} ,
817
- )
819
+ ) ?;
820
+ self . try_next_instr ( )
818
821
}
819
822
820
823
fn visit_data_drop ( & mut self , segment_index : DataSegmentIdx ) {
@@ -866,9 +869,10 @@ impl<'ctx, 'engine, 'func> Executor<'ctx, 'engine, 'func> {
866
869
this. ctx
867
870
. resolve_table_mut ( & table)
868
871
. fill_untyped ( dst, val, len) ?;
869
- this . try_next_instr ( )
872
+ Ok ( ( ) )
870
873
} ,
871
- )
874
+ ) ?;
875
+ self . try_next_instr ( )
872
876
}
873
877
874
878
fn visit_table_get ( & mut self , table_index : TableIdx ) -> Result < ( ) , TrapCode > {
@@ -915,9 +919,10 @@ impl<'ctx, 'engine, 'func> Executor<'ctx, 'engine, 'func> {
915
919
let ( dst, src) = this. ctx . resolve_table_pair_mut ( & dst, & src) ;
916
920
TableEntity :: copy ( dst, dst_index, src, src_index, len) ?;
917
921
}
918
- this . try_next_instr ( )
922
+ Ok ( ( ) )
919
923
} ,
920
- )
924
+ ) ?;
925
+ self . try_next_instr ( )
921
926
}
922
927
923
928
fn visit_table_init (
@@ -941,9 +946,10 @@ impl<'ctx, 'engine, 'func> Executor<'ctx, 'engine, 'func> {
941
946
. get_func ( func_index)
942
947
. unwrap_or_else ( || panic ! ( "missing function at index {func_index}" ) )
943
948
} ) ?;
944
- this . try_next_instr ( )
949
+ Ok ( ( ) )
945
950
} ,
946
- )
951
+ ) ?;
952
+ self . try_next_instr ( )
947
953
}
948
954
949
955
fn visit_element_drop ( & mut self , segment_index : ElementSegmentIdx ) {
0 commit comments