utf8.c: move display_mode_esc_sequence_len() for use by other functions

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Nguyễn Thái Ngọc Duy 2013-04-19 09:08:44 +10:00 committed by Junio C Hamano
parent 9d3f002f21
commit 4247fe7956

28
utf8.c
View File

@ -9,6 +9,20 @@ struct interval {
int last; int last;
}; };
static size_t display_mode_esc_sequence_len(const char *s)
{
const char *p = s;
if (*p++ != '\033')
return 0;
if (*p++ != '[')
return 0;
while (isdigit(*p) || *p == ';')
p++;
if (*p++ != 'm')
return 0;
return p - s;
}
/* auxiliary function for binary search in interval table */ /* auxiliary function for binary search in interval table */
static int bisearch(ucs_char_t ucs, const struct interval *table, int max) static int bisearch(ucs_char_t ucs, const struct interval *table, int max)
{ {
@ -303,20 +317,6 @@ static void strbuf_add_indented_text(struct strbuf *buf, const char *text,
} }
} }
static size_t display_mode_esc_sequence_len(const char *s)
{
const char *p = s;
if (*p++ != '\033')
return 0;
if (*p++ != '[')
return 0;
while (isdigit(*p) || *p == ';')
p++;
if (*p++ != 'm')
return 0;
return p - s;
}
/* /*
* Wrap the text, if necessary. The variable indent is the indent for the * Wrap the text, if necessary. The variable indent is the indent for the
* first line, indent2 is the indent for all other lines. * first line, indent2 is the indent for all other lines.