Check source directroy for assets as last resort

This commit is contained in:
Taylor Gerring 2015-02-26 21:01:40 +01:00
parent e235b57234
commit d90b71bc55
1 changed files with 10 additions and 2 deletions

View File

@ -15,11 +15,13 @@ import (
func DefaultAssetPath() string {
var assetPath string
pwd, _ := os.Getwd()
srcdir := path.Join(os.Getenv("GOPATH"), "src", "github.com", "ethereum", "go-ethereum", "cmd", "mist")
// If the current working directory is the go-ethereum dir
// assume a debug build and use the source directory as
// asset directory.
pwd, _ := os.Getwd()
if pwd == path.Join(os.Getenv("GOPATH"), "src", "github.com", "ethereum", "go-ethereum", "cmd", "mist") {
if pwd == srcdir {
assetPath = path.Join(pwd, "assets")
} else {
switch runtime.GOOS {
@ -34,6 +36,12 @@ func DefaultAssetPath() string {
default:
assetPath = "."
}
// Check if the assetPath exists. If not, try the source directory
// This happens when binary is run from outside cmd/mist directory
if _, err := os.Stat(assetPath); os.IsNotExist(err) {
assetPath = path.Join(srcdir, "assets")
}
}
return assetPath
}