Skip to content

Commit cb50199

Browse files
fix: improve error handling and clean up resource management in runner and tui components
1 parent 1fe953c commit cb50199

File tree

3 files changed

+17
-15
lines changed

3 files changed

+17
-15
lines changed

internal/runner/runner.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -536,7 +536,7 @@ func (r *Runner) startHTTPService(name string, state *ServiceState) {
536536
}
537537
return
538538
}
539-
defer resp.Body.Close()
539+
defer func() { _ = resp.Body.Close() }()
540540

541541
body, _ := io.ReadAll(resp.Body)
542542
bodyStr := strings.TrimSpace(string(body))

internal/tui/model.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -457,7 +457,8 @@ func copyToClipboard(text string) error {
457457
return err
458458
}
459459

460-
if err := cmd.Start(); err != nil {
460+
err = cmd.Start()
461+
if err != nil {
461462
return err
462463
}
463464

@@ -466,7 +467,8 @@ func copyToClipboard(text string) error {
466467
return err
467468
}
468469

469-
if err := pipe.Close(); err != nil {
470+
err = pipe.Close()
471+
if err != nil {
470472
return err
471473
}
472474

internal/types/types.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -39,16 +39,16 @@ type LogEntry struct {
3939

4040
// ServiceInfo provides service status for TUI
4141
type ServiceInfo struct {
42-
Name string
43-
Color string
44-
Icon string // custom icon/emoji
45-
Running bool
46-
Logs []LogLine
47-
Type string // service, oneshot, interval, http
48-
Status ServiceStatus // detailed status
49-
LastRun time.Time // last execution time
50-
NextRun time.Time // next scheduled run (for interval)
51-
ExitCode int // last exit code
52-
RunCount int // number of runs (for interval)
53-
Message string // dynamic status message from .devir-status
42+
Name string
43+
Color string
44+
Icon string // custom icon/emoji
45+
Running bool
46+
Logs []LogLine
47+
Type string // service, oneshot, interval, http
48+
Status ServiceStatus // detailed status
49+
LastRun time.Time // last execution time
50+
NextRun time.Time // next scheduled run (for interval)
51+
ExitCode int // last exit code
52+
RunCount int // number of runs (for interval)
53+
Message string // dynamic status message from .devir-status
5454
}

0 commit comments

Comments
 (0)