From e9c85e6573248a6943c4fb3915662d9ba58bf6b2 Mon Sep 17 00:00:00 2001 From: Alex Goodman Date: Sat, 2 Jun 2018 22:01:49 -0400 Subject: [PATCH] dont allow invalid layer browsing --- filetree.go | 4 ++-- main.go | 7 +++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/filetree.go b/filetree.go index 1c7965c..f732977 100644 --- a/filetree.go +++ b/filetree.go @@ -215,8 +215,8 @@ func (tree *FileTree) MarkRemoved(path string) error { } func StackRange(trees []*FileTree, index uint) *FileTree { - tree := trees[0].Copy() - for idx := uint(1); idx < index; idx++ { + tree := trees[1].Copy() + for idx := uint(2); idx < index; idx++ { tree.Stack(trees[idx]) } return tree diff --git a/main.go b/main.go index 568f1f2..6e83b1b 100644 --- a/main.go +++ b/main.go @@ -149,7 +149,6 @@ func nextView(g *gocui.Gui, v *gocui.View) error { return err } - func showCurNodeInSideBar(g *gocui.Gui, v *gocui.View) error { g.Update(func(g *gocui.Gui) error { v, _ := g.View("side") @@ -197,7 +196,7 @@ func cursorUp(g *gocui.Gui, v *gocui.View) error { } func cursorDownLayers(g *gocui.Gui, v *gocui.View) error { - if v != nil { + if v != nil && int(data.layerIndex) < len(data.manifest.Layers) { cursorDown(g, v) data.layerIndex++ showCurNodeInSideBar(g, v) @@ -208,7 +207,7 @@ func cursorDownLayers(g *gocui.Gui, v *gocui.View) error { } func cursorUpLayers(g *gocui.Gui, v *gocui.View) error { - if v != nil { + if v != nil && int(data.layerIndex) > 0 { cursorUp(g, v) data.layerIndex-- showCurNodeInSideBar(g, v) @@ -317,7 +316,7 @@ func layout(g *gocui.Gui) error { } func main() { - //demo() + demo() initialize() g, err := gocui.NewGui(gocui.OutputNormal)