summaryrefslogtreecommitdiffstats
path: root/src/lib/krb5/unicode
diff options
context:
space:
mode:
authorGreg Hudson <ghudson@mit.edu>2009-05-14 16:16:32 +0000
committerGreg Hudson <ghudson@mit.edu>2009-05-14 16:16:32 +0000
commitee699ef91ba36719e50ce9dc5d54dd3896740917 (patch)
tree07979e330dc4412208e29eef89a02e6d7f515306 /src/lib/krb5/unicode
parentd8c1fcc9fc7690629d10536750e6a4f873c2cbc1 (diff)
downloadkrb5-ee699ef91ba36719e50ce9dc5d54dd3896740917.tar.gz
krb5-ee699ef91ba36719e50ce9dc5d54dd3896740917.tar.xz
krb5-ee699ef91ba36719e50ce9dc5d54dd3896740917.zip
UCS2 support doesn't handle upper half of BMP
Make krb5_ucs2 an unsigned type. Eliminate the need for distinguished values for ucs2 and ucs4 characters by changing the API of the single- character conversion routines. ticket: 6489 tags: pullup target_version: 1.7 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@22350 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/krb5/unicode')
-rw-r--r--src/lib/krb5/unicode/ucstr.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/lib/krb5/unicode/ucstr.c b/src/lib/krb5/unicode/ucstr.c
index e3c3c800e1..ec23688201 100644
--- a/src/lib/krb5/unicode/ucstr.c
+++ b/src/lib/krb5/unicode/ucstr.c
@@ -397,8 +397,7 @@ krb5int_utf8_normcmp(
/* convert and normalize 1st string */
for (i = 0, ulen = 0; i < l1; i += len, ulen++) {
- ucs[ulen] = krb5int_utf8_to_ucs4(s1 + i);
- if (ucs[ulen] == KRB5_UCS4_INVALID) {
+ if (krb5int_utf8_to_ucs4(s1 + i, &ucs[ulen]) == -1) {
free(ucs);
return -1; /* what to do??? */
}
@@ -420,8 +419,7 @@ krb5int_utf8_normcmp(
/* convert and normalize 2nd string */
for (i = 0, ulen = 0; i < l2; i += len, ulen++) {
- ucs[ulen] = krb5int_utf8_to_ucs4(s2 + i);
- if (ucs[ulen] == KRB5_UCS4_INVALID) {
+ if (krb5int_utf8_to_ucs4(s2 + i, &ucs[ulen]) == -1) {
free(ucsout1);
free(ucs);
return 1; /* what to do??? */