aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2014-06-16 10:07:16 -0700
committerJunio C Hamano <gitster@pobox.com>2014-06-16 10:07:17 -0700
commitb4bba8de115b6aa48103443cc81a3be7111095a9 (patch)
treed29b8b7ecafbf2d319697f2315b5c5ea8f4ff0ea
parentb4516df9b88989a175f88aa514a187831631f9f8 (diff)
parentffb20ce125f0ffe59002b1258b06c26747b69b7b (diff)
downloadgit-b4bba8de115b6aa48103443cc81a3be7111095a9.tar.gz
git-b4bba8de115b6aa48103443cc81a3be7111095a9.tar.xz
Merge branch 'jk/strbuf-tolower'
* jk/strbuf-tolower: strbuf: add strbuf_tolower function
-rw-r--r--Documentation/technical/api-strbuf.txt4
-rw-r--r--config.c8
-rw-r--r--strbuf.c7
-rw-r--r--strbuf.h1
4 files changed, 13 insertions, 7 deletions
diff --git a/Documentation/technical/api-strbuf.txt b/Documentation/technical/api-strbuf.txt
index 4396be9dd..50690186d 100644
--- a/Documentation/technical/api-strbuf.txt
+++ b/Documentation/technical/api-strbuf.txt
@@ -134,6 +134,10 @@ Functions
Strip whitespace from the beginning of a string.
+`strbuf_tolower`::
+
+ Lowercase each character in the buffer using `tolower`.
+
`strbuf_cmp`::
Compare two buffers. Returns an integer less than, equal to, or greater
diff --git a/config.c b/config.c
index 3c3e31448..9319aa12f 100644
--- a/config.c
+++ b/config.c
@@ -147,12 +147,6 @@ int git_config_include(const char *var, const char *value, void *data)
return ret;
}
-static void lowercase(char *p)
-{
- for (; *p; p++)
- *p = tolower(*p);
-}
-
void git_config_push_parameter(const char *text)
{
struct strbuf env = STRBUF_INIT;
@@ -180,7 +174,7 @@ int git_config_parse_parameter(const char *text,
strbuf_list_free(pair);
return error("bogus config parameter: %s", text);
}
- lowercase(pair[0]->buf);
+ strbuf_tolower(pair[0]);
if (fn(pair[0]->buf, pair[1] ? pair[1]->buf : NULL, data) < 0) {
strbuf_list_free(pair);
return -1;
diff --git a/strbuf.c b/strbuf.c
index f5d609a51..c8217755e 100644
--- a/strbuf.c
+++ b/strbuf.c
@@ -99,6 +99,13 @@ void strbuf_ltrim(struct strbuf *sb)
sb->buf[sb->len] = '\0';
}
+void strbuf_tolower(struct strbuf *sb)
+{
+ char *p = sb->buf, *end = sb->buf + sb->len;
+ for (; p < end; p++)
+ *p = tolower(*p);
+}
+
struct strbuf **strbuf_split_buf(const char *str, size_t slen,
int terminator, int max)
{
diff --git a/strbuf.h b/strbuf.h
index 4de7531c4..25328b9e8 100644
--- a/strbuf.h
+++ b/strbuf.h
@@ -45,6 +45,7 @@ static inline void strbuf_setlen(struct strbuf *sb, size_t len)
extern void strbuf_trim(struct strbuf *);
extern void strbuf_rtrim(struct strbuf *);
extern void strbuf_ltrim(struct strbuf *);
+extern void strbuf_tolower(struct strbuf *sb);
extern int strbuf_cmp(const struct strbuf *, const struct strbuf *);
/*