commit - fb59748f6b2d9108022ebf444586386f085fd134
commit + 5a8b5076742038c09dece0c1e59ecddf8cd7a41a
blob - 1497322b4643af8cb574d4b4e0364308dad35b2f
blob + b61cdb3e9c3038dd263ff6b27e3d4dfbe918578f
--- tog/tog.c
+++ tog/tog.c
const struct got_error *err = NULL;
struct tog_diff_view_state *s = &view->state.diff;
struct tog_log_view_state *ls;
+ struct commit_queue_entry *old_selected_entry;
int i;
switch (ch) {
if (s->log_view == NULL)
break;
ls = &s->log_view->state.log;
+ old_selected_entry = ls->selected_entry;
err = input_log_view(NULL, s->log_view, KEY_UP);
if (err)
break;
+ if (old_selected_entry == ls->selected_entry)
+ break;
+
err = set_selected_commit(s, ls->selected_entry);
if (err)
break;
if (s->log_view == NULL)
break;
ls = &s->log_view->state.log;
+ old_selected_entry = ls->selected_entry;
err = input_log_view(NULL, s->log_view, KEY_DOWN);
if (err)
+ break;
+
+ if (old_selected_entry == ls->selected_entry)
break;
err = set_selected_commit(s, ls->selected_entry);