Browse Source

Fix build on Solaris

Audrius Butkevicius 11 years ago
parent
commit
e212b64823

+ 1 - 8
internal/upgrade/upgrade_common.go

@@ -9,8 +9,6 @@ import (
 	"errors"
 	"strconv"
 	"strings"
-
-	"bitbucket.org/kardianos/osext"
 )
 
 type Release struct {
@@ -40,12 +38,7 @@ func init() {
 func UpgradeTo(rel Release, archExtra string) error {
 	select {
 	case <-upgradeUnlocked:
-		path, err := osext.Executable()
-		if err != nil {
-			upgradeUnlocked <- true
-			return err
-		}
-		err = upgradeTo(path, rel, archExtra)
+		err := upgradeTo(rel, archExtra)
 		// If we've failed to upgrade, unlock so that another attempt could be made
 		if err != nil {
 			upgradeUnlocked <- true

+ 7 - 1
internal/upgrade/upgrade_supported.go

@@ -19,10 +19,16 @@ import (
 	"path/filepath"
 	"runtime"
 	"strings"
+
+	"bitbucket.org/kardianos/osext"
 )
 
 // Upgrade to the given release, saving the previous binary with a ".old" extension.
-func upgradeTo(path string, rel Release, archExtra string) error {
+func upgradeTo(rel Release, archExtra string) error {
+	path, err := osext.Executable()
+	if err != nil {
+		return err
+	}
 	osName := runtime.GOOS
 	if osName == "darwin" {
 		// We call the darwin release bundles macosx because that makes more

+ 1 - 1
internal/upgrade/upgrade_unsupp.go

@@ -6,7 +6,7 @@
 
 package upgrade
 
-func upgradeTo(path string, rel Release, extra string) error {
+func upgradeTo(rel Release, extra string) error {
 	return ErrUpgradeUnsupported
 }
 

+ 7 - 1
internal/upgrade/upgrade_windows.go

@@ -19,10 +19,16 @@ import (
 	"path/filepath"
 	"runtime"
 	"strings"
+
+	"bitbucket.org/kardianos/osext"
 )
 
 // Upgrade to the given release, saving the previous binary with a ".old" extension.
-func upgradeTo(path string, rel Release, archExtra string) error {
+func upgradeTo(rel Release, archExtra string) error {
+	path, err := osext.Executable()
+	if err != nil {
+		return err
+	}
 	expectedRelease := fmt.Sprintf("syncthing-%s-%s%s-%s.", runtime.GOOS, runtime.GOARCH, archExtra, rel.Tag)
 	if debug {
 		l.Debugf("expected release asset %q", expectedRelease)