Fix: avoid panic on deleting from empty slice

This commit is contained in:
Grail Finder
2025-12-08 18:05:48 +03:00
parent 0911d6e640
commit 1e9e32ee95

12
tui.go
View File

@@ -718,6 +718,12 @@ func init() {
}
if event.Key() == tcell.KeyF2 {
// regen last msg
if len(chatBody.Messages) == 0 {
if err := notifyUser("info", "no messages to regenerate"); err != nil {
logger.Error("failed to send notification", "error", err)
}
return nil
}
chatBody.Messages = chatBody.Messages[:len(chatBody.Messages)-1]
// there is no case where user msg is regenerated
// lastRole := chatBody.Messages[len(chatBody.Messages)-1].Role
@@ -736,6 +742,12 @@ func init() {
colorText()
return nil
}
if len(chatBody.Messages) == 0 {
if err := notifyUser("info", "no messages to delete"); err != nil {
logger.Error("failed to send notification", "error", err)
}
return nil
}
chatBody.Messages = chatBody.Messages[:len(chatBody.Messages)-1]
textView.SetText(chatToText(cfg.ShowSys))
colorText()