xref: /aosp_15_r20/external/bazelbuild-rules_go/go/tools/go_bin_runner/process.go (revision 9bb1b549b6a84214c53be0924760be030e66b93a)
1package main
2
3import (
4	"os"
5	"os/exec"
6)
7
8func ReplaceWithProcess(args, env []string) error {
9	cmd := exec.Command(args[0], args[1:]...)
10	cmd.Stdout = os.Stdout
11	cmd.Stderr = os.Stderr
12	cmd.Env = env
13	err := cmd.Run()
14	if exitErr, ok := err.(*exec.ExitError); ok {
15		os.Exit(exitErr.ExitCode())
16	} else if err == nil {
17		os.Exit(0)
18	}
19	return err
20}
21