diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2005-06-07 21:29:26 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2005-06-07 21:29:26 +0000 |
commit | 0bcfdbeb50b2435b848ea1fd50ccc79ba64fd129 (patch) | |
tree | b24749b82e3e4f840f7ecfd7f2fcdfc5bd26a291 /utils/utf8.h | |
parent | be6a75509d4abdd1ddc9742780e1a80e33f53917 (diff) | |
download | netsurf-0bcfdbeb50b2435b848ea1fd50ccc79ba64fd129.tar.gz netsurf-0bcfdbeb50b2435b848ea1fd50ccc79ba64fd129.tar.bz2 |
[project @ 2005-06-07 21:29:26 by jmb]
Lose cnv_str_local_enc and friends.
UTF-8 conversion functions now return an enumerated type allowing for fallbacks, if appropriate.
svn path=/import/netsurf/; revision=1744
Diffstat (limited to 'utils/utf8.h')
-rw-r--r-- | utils/utf8.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/utils/utf8.h b/utils/utf8.h index 02ff0322d..56d2534a5 100644 --- a/utils/utf8.h +++ b/utils/utf8.h @@ -12,6 +12,12 @@ #ifndef _NETSURF_UTILS_UTF8_H_ #define _NETSURF_UTILS_UTF8_H_ +typedef enum { + UTF8_CONVERT_OK, + UTF8_CONVERT_NOMEM, + UTF8_CONVERT_BADENC +} utf8_convert_ret; + size_t utf8_to_ucs4(const char *s, size_t l); size_t utf8_from_ucs4(size_t c, char *s); @@ -20,7 +26,9 @@ size_t utf8_length(const char *s); size_t utf8_prev(const char *s, size_t o); size_t utf8_next(const char *s, size_t l, size_t o); -char *utf8_to_enc(const char *string, const char *encname, size_t len); -char *utf8_from_enc(const char *string, const char *encname, size_t len); +utf8_convert_ret utf8_to_enc(const char *string, const char *encname, + size_t len, char **result); +utf8_convert_ret utf8_from_enc(const char *string, const char *encname, + size_t len, char **result); #endif |