summaryrefslogtreecommitdiffstats
path: root/pkg/gui/reflog_panel.go
diff options
context:
space:
mode:
authorJesse Duffield <jessedduffield@gmail.com>2020-03-28 10:45:44 +1100
committerJesse Duffield <jessedduffield@gmail.com>2020-03-28 11:59:45 +1100
commit19604214d7da76a685085961095c1d7b2ad5f5cb (patch)
treee2301265e05b5b3938c9774eae3f78e71914a25d /pkg/gui/reflog_panel.go
parentf7add8d788604743b334c72b784c487968b99867 (diff)
discard old reflog commits when in new context
Diffstat (limited to 'pkg/gui/reflog_panel.go')
-rw-r--r--pkg/gui/reflog_panel.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/pkg/gui/reflog_panel.go b/pkg/gui/reflog_panel.go
index 199d9337f..d40467b28 100644
--- a/pkg/gui/reflog_panel.go
+++ b/pkg/gui/reflog_panel.go
@@ -52,12 +52,18 @@ func (gui *Gui) refreshReflogCommits() error {
lastReflogCommit = gui.State.ReflogCommits[0]
}
- commits, err := gui.GitCommand.GetNewReflogCommits(lastReflogCommit)
+ commits, foundLastReflogCommit, err := gui.GitCommand.GetNewReflogCommits(lastReflogCommit)
if err != nil {
return gui.createErrorPanel(gui.g, err.Error())
}
- gui.State.ReflogCommits = append(commits, gui.State.ReflogCommits...)
+ if foundLastReflogCommit {
+ gui.State.ReflogCommits = append(commits, gui.State.ReflogCommits...)
+ } else {
+ // if we haven't found it we're probably in a new repo so we don't want to
+ // retain the old reflog commits
+ gui.State.ReflogCommits = commits
+ }
if gui.getCommitsView().Context == "reflog-commits" {
return gui.renderReflogCommitsWithSelection()