fix raw mode

pressing enter in raw mode did still execute history entry from normal mode
very dangerous, very embarassing
pull/143/head v2.7.6
Simon Let 6 years ago
parent fe878c57e8
commit ec302f55f6
  1. 32
      cmd/cli/main.go

@ -200,10 +200,18 @@ type manager struct {
func (m manager) SelectExecute(g *gocui.Gui, v *gocui.View) error {
m.s.lock.Lock()
defer m.s.lock.Unlock()
if m.s.highlightedItem < len(m.s.data) {
m.s.output = m.s.data[m.s.highlightedItem].CmdLine
m.s.exitCode = exitCodeExecute
return gocui.ErrQuit
if m.s.rawMode {
if m.s.highlightedItem < len(m.s.rawData) {
m.s.output = m.s.rawData[m.s.highlightedItem].CmdLine
m.s.exitCode = exitCodeExecute
return gocui.ErrQuit
}
} else {
if m.s.highlightedItem < len(m.s.data) {
m.s.output = m.s.data[m.s.highlightedItem].CmdLine
m.s.exitCode = exitCodeExecute
return gocui.ErrQuit
}
}
return nil
}
@ -211,10 +219,18 @@ func (m manager) SelectExecute(g *gocui.Gui, v *gocui.View) error {
func (m manager) SelectPaste(g *gocui.Gui, v *gocui.View) error {
m.s.lock.Lock()
defer m.s.lock.Unlock()
if m.s.highlightedItem < len(m.s.data) {
m.s.output = m.s.data[m.s.highlightedItem].CmdLine
m.s.exitCode = 0 // success
return gocui.ErrQuit
if m.s.rawMode {
if m.s.highlightedItem < len(m.s.rawData) {
m.s.output = m.s.rawData[m.s.highlightedItem].CmdLine
m.s.exitCode = 0 // success
return gocui.ErrQuit
}
} else {
if m.s.highlightedItem < len(m.s.data) {
m.s.output = m.s.data[m.s.highlightedItem].CmdLine
m.s.exitCode = 0 // success
return gocui.ErrQuit
}
}
return nil
}

Loading…
Cancel
Save