Skip to content

Commit 5d8a501

Browse files
committed
Validate lineIndex in RenderHelpBar for the diff view
Fixes #29
1 parent a30318d commit 5d8a501

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

cmd/grv/diff_view.go

+9-6
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ func (diffView *DiffView) renderEmptyView(win RenderWindow) (err error) {
259259
return
260260
}
261261

262-
// RenderHelpBar does nothing
262+
// RenderHelpBar renders help information for the diff view
263263
func (diffView *DiffView) RenderHelpBar(lineBuilder *LineBuilder) (err error) {
264264
diffView.lock.Lock()
265265
defer diffView.lock.Unlock()
@@ -274,12 +274,15 @@ func (diffView *DiffView) RenderHelpBar(lineBuilder *LineBuilder) (err error) {
274274
}
275275

276276
lineIndex := diffView.viewPos.ActiveRowIndex()
277-
line := diffLines.lines[lineIndex]
278277

279-
if line.lineType == dltDiffStatsFile {
280-
RenderKeyBindingHelp(diffView.ViewID(), lineBuilder, []ActionMessage{
281-
{action: ActionSelect, message: "Jump to file diff"},
282-
})
278+
if lineIndex < uint(len(diffLines.lines)) {
279+
line := diffLines.lines[lineIndex]
280+
281+
if line.lineType == dltDiffStatsFile {
282+
RenderKeyBindingHelp(diffView.ViewID(), lineBuilder, []ActionMessage{
283+
{action: ActionSelect, message: "Jump to file diff"},
284+
})
285+
}
283286
}
284287

285288
return

0 commit comments

Comments
 (0)