aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Schneider <larsxschneider@gmail.com>2018-02-15 16:27:06 +0100
committerJunio C Hamano <gitster@pobox.com>2018-02-15 11:36:15 -0800
commit13ecb4638ed92a56e855d2e6d3a9b71c4125eb51 (patch)
treee41558dc45dea5b4dd1a61c9440edada8f351b37
parenta8270b0980f88a918f9135e02e86ac6143848d95 (diff)
downloadgit-13ecb4638ed92a56e855d2e6d3a9b71c4125eb51.tar.gz
strbuf: add xstrdup_toupper()
Create a copy of an existing string and make all characters upper case. Similar xstrdup_tolower(). This function is used in a subsequent commit. Signed-off-by: Lars Schneider <larsxschneider@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--strbuf.c12
-rw-r--r--strbuf.h1
2 files changed, 13 insertions, 0 deletions
diff --git a/strbuf.c b/strbuf.c
index 490f7850e9..a20af696bc 100644
--- a/strbuf.c
+++ b/strbuf.c
@@ -784,6 +784,18 @@ char *xstrdup_tolower(const char *string)
return result;
}
+char *xstrdup_toupper(const char *string)
+{
+ char *result;
+ size_t len, i;
+
+ len = strlen(string);
+ result = xmallocz(len);
+ for (i = 0; i < len; i++)
+ result[i] = toupper(string[i]);
+ return result;
+}
+
char *xstrvfmt(const char *fmt, va_list ap)
{
struct strbuf buf = STRBUF_INIT;
diff --git a/strbuf.h b/strbuf.h
index 14c8c10d66..df7ced53ed 100644
--- a/strbuf.h
+++ b/strbuf.h
@@ -607,6 +607,7 @@ __attribute__((format (printf,2,3)))
extern int fprintf_ln(FILE *fp, const char *fmt, ...);
char *xstrdup_tolower(const char *);
+char *xstrdup_toupper(const char *);
/**
* Create a newly allocated string using printf format. You can do this easily