Fix windows file suffix in updater and pmctl

This commit is contained in:
Daniel 2019-05-22 22:19:11 +02:00
parent 7bbfdf288f
commit 81eee568f2
2 changed files with 18 additions and 3 deletions

View file

@ -93,6 +93,11 @@ func run(identifier string, cmd *cobra.Command, filterDatabaseFlag bool) error {
args = os.Args[3:]
}
// adapt identifier
if windows() {
identifier += ".exe"
}
// run
for {
file, err := getFile(identifier)
@ -101,7 +106,7 @@ func run(identifier string, cmd *cobra.Command, filterDatabaseFlag bool) error {
}
// check permission
if runtime.GOOS != "windows" {
if !windows() {
info, err := os.Stat(file.Path())
if err != nil {
return fmt.Errorf("%s failed to get file info on %s: %s", logPrefix, file.Path(), err)
@ -179,3 +184,7 @@ func run(identifier string, cmd *cobra.Command, filterDatabaseFlag bool) error {
fmt.Printf("%s %s completed successfully\n", logPrefix, identifier)
return nil
}
func windows() bool {
return runtime.GOOS == "windows"
}

View file

@ -5,6 +5,7 @@ import (
"errors"
"io/ioutil"
"path/filepath"
"runtime"
"time"
"github.com/Safing/portbase/log"
@ -23,8 +24,13 @@ func updater() {
func CheckForUpdates() error {
// be sure that pmctl is part of the "used" updates
_, err := GetLocalFile("pmctl/pmctl")
// ensure core components are updated
var err error
if runtime.GOOS == "windows" {
_, err = GetPlatformFile("pmctl/pmctl.exe")
} else {
_, err = GetPlatformFile("pmctl/pmctl")
}
if err != nil {
log.Errorf("updates: failed to mark pmctl/pmctl as used to ensure updates: %s", err)
}