From 32ac49ed95f5959d2206bf4e710350d435a04d05 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 6 Oct 2008 14:56:13 +0200 Subject: [PATCH 1/1] wreadln: return early from cursor movement functions Unclutter these functions by removing one indent level. --- src/wreadln.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/wreadln.c b/src/wreadln.c index 6c66895..59026ed 100644 --- a/src/wreadln.c +++ b/src/wreadln.c @@ -74,22 +74,24 @@ wrln_gcmp_post_cb_t wrln_post_completion_callback = NULL; /* move the cursor one step to the right */ static inline void cursor_move_right(struct wreadln *wr) { - if (wr->cursor < strlen(wr->line)) { - ++wr->cursor; - if (wr->cursor >= (size_t)wr->width && - wr->start < wr->cursor - wr->width + 1) - ++wr->start; - } + if (wr->line[wr->cursor] == 0) + return; + + ++wr->cursor; + if (wr->cursor >= (size_t)wr->width && + wr->start < wr->cursor - wr->width + 1) + ++wr->start; } /* move the cursor one step to the left */ static inline void cursor_move_left(struct wreadln *wr) { - if (wr->cursor > 0) { - if (wr->cursor == wr->start && wr->start > 0) - --wr->start; - --wr->cursor; - } + if (wr->cursor == 0) + return; + + if (wr->cursor == wr->start && wr->start > 0) + --wr->start; + --wr->cursor; } /* move the cursor to the end of the line */ -- 2.30.2