fvm: fail if implicit message fails

This commit is contained in:
Aayush 2022-05-26 18:33:04 -04:00
parent c5b5a99603
commit 7ea661bf87

View File

@ -3,6 +3,7 @@ package vm
import ( import (
"bytes" "bytes"
"context" "context"
"fmt"
"os" "os"
"time" "time"
@ -413,12 +414,18 @@ func (vm *FVM) ApplyImplicitMessage(ctx context.Context, cmsg *types.Message) (*
} }
} }
return &ApplyRet{ applyRet := &ApplyRet{
MessageReceipt: receipt, MessageReceipt: receipt,
ActorErr: aerr, ActorErr: aerr,
ExecutionTrace: et, ExecutionTrace: et,
Duration: duration, Duration: duration,
}, nil }
if ret.ExitCode != 0 {
return applyRet, fmt.Errorf("implicit message failed with exit code: %d and error: %w", ret.ExitCode, applyRet.ActorErr)
}
return applyRet, nil
} }
func (vm *FVM) Flush(ctx context.Context) (cid.Cid, error) { func (vm *FVM) Flush(ctx context.Context) (cid.Cid, error) {