From 5121438ffca93a2b6ba31704686b060178f8bf4c Mon Sep 17 00:00:00 2001 From: Justin Hawkins Date: Sun, 26 Nov 2023 18:50:30 +1030 Subject: [PATCH] Attempted fix for portable mode --- download/download.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/download/download.go b/download/download.go index 1b44ec0..d567da9 100644 --- a/download/download.go +++ b/download/download.go @@ -282,8 +282,15 @@ func (dl *Download) Begin() { } dl.Log = append(dl.Log, fmt.Sprintf("executing: %s with args: %s", dl.DownloadProfile.Command, strings.Join(cmdSlice, " "))) - cmd := exec.Command(dl.DownloadProfile.Command, cmdSlice...) + + execAbsolutePath, err := filepath.Abs(dl.DownloadProfile.Command) + if err != nil { + panic(err) + } + + cmd := exec.Command(execAbsolutePath, cmdSlice...) cmd.Dir = dl.Config.Server.DownloadPath + log.Printf("Executing command: %v (executable: %s) in %s", cmd, execAbsolutePath, dl.Config.Server.DownloadPath) stdout, err := cmd.StdoutPipe() if err != nil { @@ -307,9 +314,10 @@ func (dl *Download) Begin() { return } - log.Printf("Executing command: %v", cmd) err = cmd.Start() if err != nil { + log.Printf("Executing command failed: %s", err.Error()) + dl.State = STATE_FAILED dl.Finished = true dl.FinishedTS = time.Now()