comparison src/lib-charset/charset-utf8.c @ 792:d573c53946ac HEAD

Full not-too-well-tested support for SORT extension. Required a few library interface changes.
author Timo Sirainen <tss@iki.fi>
date Tue, 17 Dec 2002 06:28:40 +0200
parents d96cbba73a8b
children 0d5be52d7131
comparison
equal deleted inserted replaced
791:6efced4f80de 792:d573c53946ac
84 _charset_utf8_ucase(src, *src_size, dest, destpos); 84 _charset_utf8_ucase(src, *src_size, dest, destpos);
85 return CHARSET_RET_OK; 85 return CHARSET_RET_OK;
86 } 86 }
87 87
88 const char * 88 const char *
89 charset_to_utf8_string(const char *charset, int *unknown_charset,
90 const unsigned char *data, size_t size,
91 size_t *utf8_size_r)
92 {
93 if (charset == NULL || strcasecmp(charset, "us-ascii") == 0 ||
94 strcasecmp(charset, "ascii") == 0 ||
95 strcasecmp(charset, "UTF-8") == 0 ||
96 strcasecmp(charset, "UTF8") == 0) {
97 if (unknown_charset != NULL)
98 *unknown_charset = FALSE;
99 if (utf8_size_r != NULL)
100 *utf8_size_r = size;
101 return t_strndup((const char *) data, size);
102 } else {
103 if (unknown_charset != NULL)
104 *unknown_charset = TRUE;
105 return NULL;
106 }
107 }
108
109 const char *
89 charset_to_ucase_utf8_string(const char *charset, int *unknown_charset, 110 charset_to_ucase_utf8_string(const char *charset, int *unknown_charset,
90 const unsigned char *data, size_t size, 111 const unsigned char *data, size_t size,
91 size_t *utf8_size_r) 112 size_t *utf8_size_r)
92 { 113 {
93 if (charset == NULL || strcasecmp(charset, "us-ascii") == 0 || 114 if (charset == NULL || strcasecmp(charset, "us-ascii") == 0 ||