From 1326197d1ba4622cfa780c03487629b1a8262d5d Mon Sep 17 00:00:00 2001 From: Ilia Maslakov Date: Mon, 13 Aug 2012 14:57:14 +0400 Subject: [PATCH] (is_aligned_on_a_tab): return gboolean instead of int. Minor optimization. (right_of_four_spaces): likewise. (left_of_four_spaces): likewise. Simplifying expression for easy code support. Signed-off-by: Ilia Maslakov Signed-off-by: Andrew Borodin Signed-off-by: Slava Zanko --- src/editor/edit.c | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/src/editor/edit.c b/src/editor/edit.c index 0807972f3..8915aa781 100644 --- a/src/editor/edit.c +++ b/src/editor/edit.c @@ -170,10 +170,6 @@ static off_t last_bracket = -1; */ /* --------------------------------------------------------------------------------------------- */ - -static int left_of_four_spaces (WEdit * edit); - -/* --------------------------------------------------------------------------------------------- */ /** * Initialize the buffers for an empty files. */ @@ -1440,38 +1436,40 @@ edit_delete_to_line_begin (WEdit * edit) /* --------------------------------------------------------------------------------------------- */ -static int +static gboolean is_aligned_on_a_tab (WEdit * edit) { + long curs_col; + edit_update_curs_col (edit); - return !((edit->curs_col % (TAB_SIZE * space_width)) - && edit->curs_col % (TAB_SIZE * space_width) != (HALF_TAB_SIZE * space_width)); + curs_col = edit->curs_col % (TAB_SIZE * space_width); + return (curs_col == 0 || curs_col == (HALF_TAB_SIZE * space_width)); } /* --------------------------------------------------------------------------------------------- */ -static int +static gboolean right_of_four_spaces (WEdit * edit) { int i, ch = 0; + for (i = 1; i <= HALF_TAB_SIZE; i++) ch |= edit_get_byte (edit, edit->curs1 - i); - if (ch == ' ') - return is_aligned_on_a_tab (edit); - return 0; + + return (ch == ' ' && is_aligned_on_a_tab (edit)); } /* --------------------------------------------------------------------------------------------- */ -static int +static gboolean left_of_four_spaces (WEdit * edit) { int i, ch = 0; + for (i = 0; i < HALF_TAB_SIZE; i++) ch |= edit_get_byte (edit, edit->curs1 + i); - if (ch == ' ') - return is_aligned_on_a_tab (edit); - return 0; + + return (ch == ' ' && is_aligned_on_a_tab (edit)); } /* --------------------------------------------------------------------------------------------- */ -- 2.11.4.GIT