diff --git a/proc/proc_darwin.go b/proc/proc_darwin.go
index <HASH>..<HASH> 100644
--- a/proc/proc_darwin.go
+++ b/proc/proc_darwin.go
@@ -39,18 +39,18 @@ func Launch(cmd []string) (*Process, error) {
 	if err != nil {
 		return nil, err
 	}
+	// Make sure the binary exists.
 	if filepath.Base(cmd[0]) == cmd[0] {
 		if _, err := exec.LookPath(cmd[0]); err != nil {
 			return nil, err
 		}
 	}
-	argv0 := C.CString(argv0Go)
-
-	// Make sure the binary exists.
 	if _, err := os.Stat(argv0Go); err != nil {
 		return nil, err
 	}
 
+	argv0 := C.CString(argv0Go)
+
 	argvSlice := make([]*C.char, 0, len(cmd))
 	for _, arg := range cmd {
 		argvSlice = append(argvSlice, C.CString(arg))
Refactor: Reorganize guard clauses