aboutsummaryrefslogtreecommitdiffhomepage
path: root/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'main.go')
-rw-r--r--main.go54
1 files changed, 3 insertions, 51 deletions
diff --git a/main.go b/main.go
index c2c042da..662b1a46 100644
--- a/main.go
+++ b/main.go
@@ -1,7 +1,6 @@
package main
import (
- "errors"
"flag"
"fmt"
"os"
@@ -48,60 +47,13 @@ func main() {
} else if err = a.Start(); err != nil {
logBaseError(err, "fortify: cannot start app:")
} else if r, err = a.Wait(); err != nil {
- r = 1
-
- var e *app.BaseError
- if !app.AsBaseError(err, &e) {
- fmt.Println("fortify: wait failed:", err)
- } else {
- // Wait only returns either *app.ProcessError or *app.StateStoreError wrapped in a *app.BaseError
- var se *app.StateStoreError
- if !errors.As(err, &se) {
- // does not need special handling
- fmt.Print("fortify: " + e.Message())
- } else {
- // inner error are either unwrapped store errors
- // or joined errors returned by *appSealTx revert
- // wrapped in *app.BaseError
- var ej app.RevertCompoundError
- if !errors.As(se.InnerErr, &ej) {
- // does not require special handling
- fmt.Print("fortify: " + e.Message())
- } else {
- errs := ej.Unwrap()
-
- // every error here is wrapped in *app.BaseError
- for _, ei := range errs {
- var eb *app.BaseError
- if !errors.As(ei, &eb) {
- // unreachable
- fmt.Println("fortify: invalid error type returned by revert:", ei)
- } else {
- // print inner *app.BaseError message
- fmt.Print("fortify: " + eb.Message())
- }
- }
- }
- }
+ if r < 1 {
+ r = 1
}
+ logWaitError(err)
}
if err := a.WaitErr(); err != nil {
fmt.Println("fortify: inner wait failed:", err)
}
os.Exit(r)
}
-
-func logBaseError(err error, message string) {
- var e *app.BaseError
-
- if app.AsBaseError(err, &e) {
- fmt.Print("fortify: " + e.Message())
- } else {
- fmt.Println(message, err)
- }
-}
-
-func fatalf(format string, a ...any) {
- fmt.Printf("fortify: "+format, a...)
- os.Exit(1)
-}