aboutsummaryrefslogtreecommitdiffstats
path: root/builtin.c
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2010-12-31 11:10:10 +0200
committerArnold D. Robbins <arnold@skeeve.com>2010-12-31 11:10:10 +0200
commit20b4f94a70bab9fa62e9628cd560cd81147a5218 (patch)
tree8a36f8f49613177f79e7a686796be83f3e53a5a7 /builtin.c
parent4ecc73507924d09085e0149492045d5cbe16f7a0 (diff)
downloadegawk-20b4f94a70bab9fa62e9628cd560cd81147a5218.tar.gz
egawk-20b4f94a70bab9fa62e9628cd560cd81147a5218.tar.bz2
egawk-20b4f94a70bab9fa62e9628cd560cd81147a5218.zip
strncasembscmp fix. Doc updates.
Diffstat (limited to 'builtin.c')
-rw-r--r--builtin.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/builtin.c b/builtin.c
index 48b4c49c..209ae5da 100644
--- a/builtin.c
+++ b/builtin.c
@@ -219,7 +219,7 @@ do_fflush(int nargs)
/* strncasecmpmbs --- like strncasecmp (multibyte string version) */
int
-strncasecmpmbs(const char *s1, const char *s2, size_t n)
+strncasecmpmbs(const unsigned char *s1, const unsigned char *s2, size_t n)
{
size_t i1, i2, mbclen1, mbclen2, gap;
wchar_t wc1, wc2;
@@ -233,7 +233,8 @@ strncasecmpmbs(const char *s1, const char *s2, size_t n)
mbclen1 = 1;
wc1 = btowc_cache[s1[i1]];
} else {
- mbclen1 = mbrtowc(& wc1, s1 + i1, n - i1, & mbs1);
+ mbclen1 = mbrtowc(& wc1, (const char *)s1 + i1,
+ n - i1, & mbs1);
if (mbclen1 == (size_t) -1 || mbclen1 == (size_t) -2 || mbclen1 == 0) {
/* We treat it as a singlebyte character. */
mbclen1 = 1;
@@ -244,7 +245,8 @@ strncasecmpmbs(const char *s1, const char *s2, size_t n)
mbclen2 = 1;
wc2 = btowc_cache[s2[i2]];
} else {
- mbclen2 = mbrtowc(& wc2, s2 + i2, n - i2, & mbs2);
+ mbclen2 = mbrtowc(& wc2, (const char *)s2 + i2,
+ n - i2, & mbs2);
if (mbclen2 == (size_t) -1 || mbclen2 == (size_t) -2 || mbclen2 == 0) {
/* We treat it as a singlebyte character. */
mbclen2 = 1;