ifixed indices - iomenu - interactive terminal-based selection menu Err bitreich.org 70 hgit clone git://bitreich.org/iomenu git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/iomenu URL:git://bitreich.org/iomenu git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/iomenu bitreich.org 70 1Log /scm/iomenu/log.gph bitreich.org 70 1Files /scm/iomenu/files.gph bitreich.org 70 1Refs /scm/iomenu/refs.gph bitreich.org 70 1Tags /scm/iomenu/tag bitreich.org 70 1README /scm/iomenu/file/README.gph bitreich.org 70 1LICENSE /scm/iomenu/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 63ce568f63eef334f256370d444e557d2ecceb68 /scm/iomenu/commit/63ce568f63eef334f256370d444e557d2ecceb68.gph bitreich.org 70 1parent 179c4bde0a49ad89278b73ebbea5d4bfa2559605 /scm/iomenu/commit/179c4bde0a49ad89278b73ebbea5d4bfa2559605.gph bitreich.org 70 hAuthor: Josuah Demangeonā  ā µ URL:mailto:mail@josuah.net bitreich.org 70 iDate: Sat, 18 Mar 2017 18:52:10 +0100 Err bitreich.org 70 i Err bitreich.org 70 ifixed indices Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M iomenu.c | 12 +++++------- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 5 insertions(+), 7 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/iomenu.c b/iomenu.c /scm/iomenu/file/iomenu.c.gph bitreich.org 70 i@@ -166,16 +166,14 @@ print_string(char *str, size_t limit, int current) Err bitreich.org 70 i void Err bitreich.org 70 i print_lines(size_t count, size_t cols) Err bitreich.org 70 i { Err bitreich.org 70 i- size_t printed = 0; Err bitreich.org 70 i+ size_t printed = 0, i = current / count * count; Err bitreich.org 70 i Err bitreich.org 70 i- offset = current / count * count; Err bitreich.org 70 i- Err bitreich.org 70 i- for (size_t i = offset; i < count && i < matchc; i++) { Err bitreich.org 70 i+ for (; printed < count && i < matchc; printed++, i++) { Err bitreich.org 70 i fputc('\n', stderr); Err bitreich.org 70 i print_string(matchv[i], cols, i == current); Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 i- while (printed++ < count) Err bitreich.org 70 i+ while (printed++ <= count) Err bitreich.org 70 i fputs("\n\033[K", stderr); Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 i@@ -218,7 +216,7 @@ print_screen(int tty_fd) Err bitreich.org 70 i Err bitreich.org 70 i if (opt_lines) { Err bitreich.org 70 i print_lines(count, w.ws_col); Err bitreich.org 70 i- fprintf(stderr, "\033[%ldA", count); Err bitreich.org 70 i+ fprintf(stderr, "\033[%ldA", count + 1); Err bitreich.org 70 i } else { Err bitreich.org 70 i fputs("\033[30C", stderr); Err bitreich.org 70 i print_columns(w.ws_col); Err bitreich.org 70 i@@ -316,7 +314,7 @@ input_key(FILE *tty_fp) Err bitreich.org 70 i break; Err bitreich.org 70 i Err bitreich.org 70 i case CONTROL('N'): Err bitreich.org 70 i- current += current <= matchc - 1 ? 1 : 0; Err bitreich.org 70 i+ current += current < matchc - 1 ? 1 : 0; Err bitreich.org 70 i break; Err bitreich.org 70 i Err bitreich.org 70 i case CONTROL('P'): Err bitreich.org 70 .