]> Cypherpunks repositories - gostls13.git/commitdiff
os: add check for empty executable path on darwin
authorRoberto Clapis <robclap8@gmail.com>
Thu, 2 Aug 2018 13:27:14 +0000 (15:27 +0200)
committerBrad Fitzpatrick <bradfitz@golang.org>
Thu, 2 Aug 2018 20:31:25 +0000 (20:31 +0000)
os used to panic (access out of bounds) if executablePath was left empty

Fixes #22529

Change-Id: Iead5e60a3b000dbde421a8e8612c3690340879ce
Reviewed-on: https://go-review.googlesource.com/127546
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
src/os/executable_darwin.go

index ce5b8140a4cba651e68e3091d2d85873f308c848..dae9f4ee18ecb96aa32712d1375a8dd2cc8fb6d0 100644 (file)
@@ -4,12 +4,17 @@
 
 package os
 
+import "errors"
+
 var executablePath string // set by ../runtime/os_darwin.go
 
 var initCwd, initCwdErr = Getwd()
 
 func executable() (string, error) {
        ep := executablePath
+       if len(ep) == 0 {
+               return ep, errors.New("cannot find executable path")
+       }
        if ep[0] != '/' {
                if initCwdErr != nil {
                        return ep, initCwdErr