Index: src/pkg/os/exec_posix.go |
=================================================================== |
copy from src/pkg/os/exec.go |
copy to src/pkg/os/exec_posix.go |
--- a/src/pkg/os/exec.go |
+++ b/src/pkg/os/exec_posix.go |
@@ -4,40 +4,7 @@ |
package os |
-import ( |
- "runtime" |
- "syscall" |
-) |
- |
-// Process stores the information about a process created by StartProcess. |
-type Process struct { |
- Pid int |
- handle int |
-} |
- |
-func newProcess(pid, handle int) *Process { |
- p := &Process{pid, handle} |
- runtime.SetFinalizer(p, (*Process).Release) |
- return p |
-} |
- |
-// ProcAttr holds the attributes that will be applied to a new process |
-// started by StartProcess. |
-type ProcAttr struct { |
- // If Dir is non-empty, the child changes into the directory before |
- // creating the process. |
- Dir string |
- // If Env is non-nil, it gives the environment variables for the |
- // new process in the form returned by Environ. |
- // If it is nil, the result of Environ will be used. |
- Env []string |
- // Files specifies the open files inherited by the new process. The |
- // first three entries correspond to standard input, standard output, and |
- // standard error. An implementation may support additional entries, |
- // depending on the underlying operating system. A nil entry corresponds |
- // to that file being closed when the process starts. |
- Files []*File |
-} |
+import "syscall" |
// StartProcess starts a new process with the program, arguments and attributes |
// specified by name, argv and attr. |
@@ -61,7 +28,7 @@ |
sysattr.Files = intfd |
pid, h, e := syscall.StartProcess(name, argv, sysattr) |
- if e != 0 { |
+ if iserror(e) { |
return nil, &PathError{"fork/exec", name, Errno(e)} |
} |
return newProcess(pid, h), nil |
@@ -76,7 +43,7 @@ |
envv = Environ() |
} |
e := syscall.Exec(name, argv, envv) |
- if e != 0 { |
+ if iserror(e) { |
return &PathError{"exec", name, Errno(e)} |
} |
return nil |
@@ -158,9 +125,3 @@ |
} |
return res |
} |
- |
-// Getpid returns the process id of the caller. |
-func Getpid() int { return syscall.Getpid() } |
- |
-// Getppid returns the process id of the caller's parent. |
-func Getppid() int { return syscall.Getppid() } |