github.com/likebike/go--@v0.0.0-20190911215757-0bd925d16e96/go/src/os/executable_darwin.go (about)

     1  // Copyright 2016 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  package os
     6  
     7  var executablePath string // set by ../runtime/os_darwin.go
     8  
     9  var initCwd, initCwdErr = Getwd()
    10  
    11  func executable() (string, error) {
    12  	ep := executablePath
    13  	if ep[0] != '/' {
    14  		if initCwdErr != nil {
    15  			return ep, initCwdErr
    16  		}
    17  		if len(ep) > 2 && ep[0:2] == "./" {
    18  			// skip "./"
    19  			ep = ep[2:]
    20  		}
    21  		ep = initCwd + "/" + ep
    22  	}
    23  	return ep, nil
    24  }