summaryrefslogtreecommitdiff
path: root/internal/server
diff options
context:
space:
mode:
Diffstat (limited to 'internal/server')
-rw-r--r--internal/server/continuous.go2
-rw-r--r--internal/server/handlers/serverhandler.go5
-rw-r--r--internal/server/scheduler.go2
3 files changed, 6 insertions, 3 deletions
diff --git a/internal/server/continuous.go b/internal/server/continuous.go
index f3993a1..583d136 100644
--- a/internal/server/continuous.go
+++ b/internal/server/continuous.go
@@ -92,7 +92,7 @@ func (c *continuous) runJob(ctx context.Context, job config.Continuous) {
}
logger.Info(fmt.Sprintf("Starting job %s", job.Name))
- status := client.Start(jobCtx)
+ status := client.Start(jobCtx, make(chan struct{}))
logMessage := fmt.Sprintf("Job exited with status %d", status)
if status != 0 {
diff --git a/internal/server/handlers/serverhandler.go b/internal/server/handlers/serverhandler.go
index 34d2e30..7017f3e 100644
--- a/internal/server/handlers/serverhandler.go
+++ b/internal/server/handlers/serverhandler.go
@@ -85,8 +85,11 @@ func NewServerHandler(handlerCtx, serverCtx context.Context, user *user.User, ca
func (h *ServerHandler) Read(p []byte) (n int, err error) {
for {
select {
-
case message := <-h.serverMessages:
+ if len(message) == 0 {
+ logger.Warn(h.user, "Empty message recieved")
+ return
+ }
if message[0] == '.' {
// Handle hidden message (don't display to the user, interpreted by dtail client)
wholePayload := []byte(fmt.Sprintf("%s\n", message))
diff --git a/internal/server/scheduler.go b/internal/server/scheduler.go
index 3345d69..9d76a3b 100644
--- a/internal/server/scheduler.go
+++ b/internal/server/scheduler.go
@@ -93,7 +93,7 @@ func (s *scheduler) runJobs(ctx context.Context) {
defer cancel()
logger.Info(fmt.Sprintf("Starting job %s", job.Name))
- status := client.Start(jobCtx)
+ status := client.Start(jobCtx, make(chan struct{}))
logMessage := fmt.Sprintf("Job exited with status %d", status)
if status != 0 {