summaryrefslogtreecommitdiff
path: root/utils/utf8.h
diff options
context:
space:
mode:
Diffstat (limited to 'utils/utf8.h')
-rw-r--r--utils/utf8.h12
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