NLS: raname "maxlen" to "maxout" in UTF conversion routines
As requested by NamJae Jeon, this patch (as1503) changes the name of the "maxlen" parameters to "maxout" in the various UTF conversion routines. This should make the role of that parameter more clear. The patch also renames the "len" parameters to "inlen", for the same reason. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Reviewed-by: NamJae Jeon <linkinjeon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
568987116e
commit
045ddc8991
1 changed files with 23 additions and 23 deletions
|
@ -52,7 +52,7 @@ static const struct utf8_table utf8_table[] =
|
|||
#define SURROGATE_LOW 0x00000400
|
||||
#define SURROGATE_BITS 0x000003ff
|
||||
|
||||
int utf8_to_utf32(const u8 *s, int len, unicode_t *pu)
|
||||
int utf8_to_utf32(const u8 *s, int inlen, unicode_t *pu)
|
||||
{
|
||||
unsigned long l;
|
||||
int c0, c, nc;
|
||||
|
@ -71,7 +71,7 @@ int utf8_to_utf32(const u8 *s, int len, unicode_t *pu)
|
|||
*pu = (unicode_t) l;
|
||||
return nc;
|
||||
}
|
||||
if (len <= nc)
|
||||
if (inlen <= nc)
|
||||
return -1;
|
||||
s++;
|
||||
c = (*s ^ 0x80) & 0xFF;
|
||||
|
@ -83,7 +83,7 @@ int utf8_to_utf32(const u8 *s, int len, unicode_t *pu)
|
|||
}
|
||||
EXPORT_SYMBOL(utf8_to_utf32);
|
||||
|
||||
int utf32_to_utf8(unicode_t u, u8 *s, int maxlen)
|
||||
int utf32_to_utf8(unicode_t u, u8 *s, int maxout)
|
||||
{
|
||||
unsigned long l;
|
||||
int c, nc;
|
||||
|
@ -97,7 +97,7 @@ int utf32_to_utf8(unicode_t u, u8 *s, int maxlen)
|
|||
return -1;
|
||||
|
||||
nc = 0;
|
||||
for (t = utf8_table; t->cmask && maxlen; t++, maxlen--) {
|
||||
for (t = utf8_table; t->cmask && maxout; t++, maxout--) {
|
||||
nc++;
|
||||
if (l <= t->lmask) {
|
||||
c = t->shift;
|
||||
|
@ -129,24 +129,24 @@ static inline void put_utf16(wchar_t *s, unsigned c, enum utf16_endian endian)
|
|||
}
|
||||
}
|
||||
|
||||
int utf8s_to_utf16s(const u8 *s, int len, enum utf16_endian endian,
|
||||
wchar_t *pwcs, int maxlen)
|
||||
int utf8s_to_utf16s(const u8 *s, int inlen, enum utf16_endian endian,
|
||||
wchar_t *pwcs, int maxout)
|
||||
{
|
||||
u16 *op;
|
||||
int size;
|
||||
unicode_t u;
|
||||
|
||||
op = pwcs;
|
||||
while (len > 0 && maxlen > 0 && *s) {
|
||||
while (inlen > 0 && maxout > 0 && *s) {
|
||||
if (*s & 0x80) {
|
||||
size = utf8_to_utf32(s, len, &u);
|
||||
size = utf8_to_utf32(s, inlen, &u);
|
||||
if (size < 0)
|
||||
return -EINVAL;
|
||||
s += size;
|
||||
len -= size;
|
||||
inlen -= size;
|
||||
|
||||
if (u >= PLANE_SIZE) {
|
||||
if (maxlen < 2)
|
||||
if (maxout < 2)
|
||||
break;
|
||||
u -= PLANE_SIZE;
|
||||
put_utf16(op++, SURROGATE_PAIR |
|
||||
|
@ -156,15 +156,15 @@ int utf8s_to_utf16s(const u8 *s, int len, enum utf16_endian endian,
|
|||
SURROGATE_LOW |
|
||||
(u & SURROGATE_BITS),
|
||||
endian);
|
||||
maxlen -= 2;
|
||||
maxout -= 2;
|
||||
} else {
|
||||
put_utf16(op++, u, endian);
|
||||
maxlen--;
|
||||
maxout--;
|
||||
}
|
||||
} else {
|
||||
put_utf16(op++, *s++, endian);
|
||||
len--;
|
||||
maxlen--;
|
||||
inlen--;
|
||||
maxout--;
|
||||
}
|
||||
}
|
||||
return op - pwcs;
|
||||
|
@ -183,27 +183,27 @@ static inline unsigned long get_utf16(unsigned c, enum utf16_endian endian)
|
|||
}
|
||||
}
|
||||
|
||||
int utf16s_to_utf8s(const wchar_t *pwcs, int len, enum utf16_endian endian,
|
||||
u8 *s, int maxlen)
|
||||
int utf16s_to_utf8s(const wchar_t *pwcs, int inlen, enum utf16_endian endian,
|
||||
u8 *s, int maxout)
|
||||
{
|
||||
u8 *op;
|
||||
int size;
|
||||
unsigned long u, v;
|
||||
|
||||
op = s;
|
||||
while (len > 0 && maxlen > 0) {
|
||||
while (inlen > 0 && maxout > 0) {
|
||||
u = get_utf16(*pwcs, endian);
|
||||
if (!u)
|
||||
break;
|
||||
pwcs++;
|
||||
len--;
|
||||
inlen--;
|
||||
if (u > 0x7f) {
|
||||
if ((u & SURROGATE_MASK) == SURROGATE_PAIR) {
|
||||
if (u & SURROGATE_LOW) {
|
||||
/* Ignore character and move on */
|
||||
continue;
|
||||
}
|
||||
if (len <= 0)
|
||||
if (inlen <= 0)
|
||||
break;
|
||||
v = get_utf16(*pwcs, endian);
|
||||
if ((v & SURROGATE_MASK) != SURROGATE_PAIR ||
|
||||
|
@ -214,18 +214,18 @@ int utf16s_to_utf8s(const wchar_t *pwcs, int len, enum utf16_endian endian,
|
|||
u = PLANE_SIZE + ((u & SURROGATE_BITS) << 10)
|
||||
+ (v & SURROGATE_BITS);
|
||||
pwcs++;
|
||||
len--;
|
||||
inlen--;
|
||||
}
|
||||
size = utf32_to_utf8(u, op, maxlen);
|
||||
size = utf32_to_utf8(u, op, maxout);
|
||||
if (size == -1) {
|
||||
/* Ignore character and move on */
|
||||
} else {
|
||||
op += size;
|
||||
maxlen -= size;
|
||||
maxout -= size;
|
||||
}
|
||||
} else {
|
||||
*op++ = (u8) u;
|
||||
maxlen--;
|
||||
maxout--;
|
||||
}
|
||||
}
|
||||
return op - s;
|
||||
|
|
Loading…
Reference in a new issue