mirror of
https://github.com/taigrr/wtf
synced 2025-01-18 04:03:14 -08:00
Handle error handling better
Don't panic Add function due to reuse Catch all errors to appease CI
This commit is contained in:
parent
57bf5c7417
commit
34154620f6
@ -125,24 +125,28 @@ func runCommandLoop(widget *Widget) {
|
||||
cmd := exec.Command(widget.settings.cmd, widget.settings.args...)
|
||||
cmd.Env = widget.environment()
|
||||
f, err := pty.Start(cmd)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
io.Copy(widget.buffer, f)
|
||||
// The command has exited, print any error messages
|
||||
if err != nil {
|
||||
widget.m.Lock()
|
||||
_, writeErr := widget.buffer.WriteString(err.Error())
|
||||
if writeErr != nil {
|
||||
return
|
||||
}
|
||||
widget.m.Unlock()
|
||||
widget.handleError(err)
|
||||
}
|
||||
|
||||
_, err = io.Copy(widget.buffer, f)
|
||||
if err != nil {
|
||||
widget.handleError(err)
|
||||
}
|
||||
widget.redrawChan <- true
|
||||
}
|
||||
}
|
||||
|
||||
func (widget *Widget) handleError(err error) {
|
||||
widget.m.Lock()
|
||||
_, writeErr := widget.buffer.WriteString(err.Error())
|
||||
if writeErr != nil {
|
||||
return
|
||||
}
|
||||
widget.m.Unlock()
|
||||
}
|
||||
|
||||
func redrawLoop(widget *Widget) {
|
||||
for {
|
||||
widget.Redraw(widget.content)
|
||||
|
Loading…
x
Reference in New Issue
Block a user