diff options
author | Vincent Sanders <vince@netsurf-browser.org> | 2014-01-28 21:40:13 +0000 |
---|---|---|
committer | Vincent Sanders <vince@netsurf-browser.org> | 2014-01-28 21:40:13 +0000 |
commit | 654da2ffb5abf2afe9532f1d0cb77ed88f8a97cc (patch) | |
tree | efbc3d97a8650b682b7181e748698de9c555d80d /riscos | |
parent | 4b760c7e499e2f5cb1d06242d5f186e14e94496a (diff) | |
download | netsurf-654da2ffb5abf2afe9532f1d0cb77ed88f8a97cc.tar.gz netsurf-654da2ffb5abf2afe9532f1d0cb77ed88f8a97cc.tar.bz2 |
move utf8 conversion routines to use nserror instead of their own error enum
Diffstat (limited to 'riscos')
-rw-r--r-- | riscos/download.c | 20 | ||||
-rw-r--r-- | riscos/gui/url_bar.c | 6 | ||||
-rw-r--r-- | riscos/help.c | 6 | ||||
-rw-r--r-- | riscos/menus.c | 11 | ||||
-rw-r--r-- | riscos/query.c | 10 | ||||
-rw-r--r-- | riscos/save.c | 12 | ||||
-rw-r--r-- | riscos/textselection.c | 8 | ||||
-rw-r--r-- | riscos/ucstables.c | 56 | ||||
-rw-r--r-- | riscos/wimp.c | 12 | ||||
-rw-r--r-- | riscos/window.c | 16 |
10 files changed, 77 insertions, 80 deletions
diff --git a/riscos/download.c b/riscos/download.c index d0149b66c..526f30174 100644 --- a/riscos/download.c +++ b/riscos/download.c @@ -228,7 +228,7 @@ static struct gui_download_window *gui_download_window_create(download_context * os_error *error; url_func_result res; char *local_path; - utf8_convert_ret err; + nserror err; size_t i, last_dot; dw = malloc(sizeof *dw); @@ -376,9 +376,9 @@ static struct gui_download_window *gui_download_window_create(download_context * filename); err = utf8_to_local_encoding(dw->path, 0, &local_path); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err !=NSERROR_BAD_ENCODING); LOG(("utf8_to_local_encoding failed")); warn_user("NoMemory", 0); free(dw); @@ -588,7 +588,7 @@ void ro_gui_download_update_status(struct gui_download_window *dw) os_error *error; int width; char *local_status; - utf8_convert_ret err; + nserror err; gettimeofday(&t, 0); dt = (t.tv_sec + 0.000001 * t.tv_usec) - (dw->last_time.tv_sec + @@ -622,9 +622,9 @@ void ro_gui_download_update_status(struct gui_download_window *dw) /* convert to local encoding */ err = utf8_to_local_encoding( messages_get("Download"), 0, &local_status); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); /* hide nomem error */ snprintf(dw->status, sizeof dw->status, messages_get("Download"), @@ -645,9 +645,9 @@ void ro_gui_download_update_status(struct gui_download_window *dw) err = utf8_to_local_encoding( messages_get("DownloadU"), 0, &local_status); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); /* hide nomem error */ snprintf(dw->status, sizeof dw->status, messages_get("DownloadU"), @@ -673,9 +673,9 @@ void ro_gui_download_update_status(struct gui_download_window *dw) err = utf8_to_local_encoding(messages_get("Downloaded"), 0, &local_status); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); /* hide nomem error */ snprintf(dw->status, sizeof dw->status, messages_get("Downloaded"), diff --git a/riscos/gui/url_bar.c b/riscos/gui/url_bar.c index d7647402b..681824d89 100644 --- a/riscos/gui/url_bar.c +++ b/riscos/gui/url_bar.c @@ -956,12 +956,12 @@ void ro_gui_url_bar_set_url(struct url_bar *url_bar, const char *url, */ if (is_utf8) { - utf8_convert_ret err; + nserror err; err = utf8_to_local_encoding(url, 0, &local_text); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* A bad encoding should never happen, so assert this */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_enc failed")); /* Paranoia */ local_text = NULL; diff --git a/riscos/help.c b/riscos/help.c index 14d34af15..9da52f3e6 100644 --- a/riscos/help.c +++ b/riscos/help.c @@ -225,7 +225,7 @@ static void ro_gui_interactive_help_broadcast(wimp_message *message, char *base_token; char *local_token; os_error *error; - utf8_convert_ret err; + nserror err; /* start off with an empty reply */ reply = (help_full_message_reply *)message; @@ -255,9 +255,9 @@ static void ro_gui_interactive_help_broadcast(wimp_message *message, /* convert to local encoding */ err = utf8_to_local_encoding(translated_token, 0, &local_token); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); /* simply use UTF-8 string */ strncpy(reply->reply, translated_token, 235); } diff --git a/riscos/menus.c b/riscos/menus.c index e51fc34c5..29d514122 100644 --- a/riscos/menus.c +++ b/riscos/menus.c @@ -875,8 +875,7 @@ bool ro_gui_menu_translate(struct menu_definition *menu) int alphabet; struct menu_definition_entry *entry; char *translated; - utf8_convert_ret err; - + nserror err; /* read current alphabet */ error = xosbyte1(osbyte_ALPHABET_NUMBER, 127, 0, &alphabet); @@ -895,8 +894,8 @@ bool ro_gui_menu_translate(struct menu_definition *menu) free(menu->menu->title_data.indirected_text.text); err = utf8_to_local_encoding(messages_get(menu->title_key), 0, &translated); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_enc failed")); return false; } @@ -912,8 +911,8 @@ bool ro_gui_menu_translate(struct menu_definition *menu) free(entry->menu_entry->data.indirected_text.text); err = utf8_to_local_encoding(messages_get(entry->entry_key), 0, &translated); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_enc failed")); return false; } diff --git a/riscos/query.c b/riscos/query.c index 6401ad2b8..226849462 100644 --- a/riscos/query.c +++ b/riscos/query.c @@ -150,7 +150,7 @@ query_id query_user_xy(const char *query, const char *detail, int len; int tx; char *local_text = NULL; - utf8_convert_ret err; + nserror err; qw = malloc(sizeof(struct gui_query_window)); if (!qw) { @@ -171,8 +171,8 @@ query_id query_user_xy(const char *query, const char *detail, /* set the text of the 'Yes' button and size accordingly */ err = utf8_to_local_encoding(yes, 0, &local_text); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_local_encoding_failed")); local_text = NULL; } @@ -201,8 +201,8 @@ query_id query_user_xy(const char *query, const char *detail, /* set the text of the 'No' button and size accordingly */ err = utf8_to_local_encoding(no, 0, &local_text); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_local_encoding_failed")); local_text = NULL; } diff --git a/riscos/save.c b/riscos/save.c index 59222c49a..cc123444c 100644 --- a/riscos/save.c +++ b/riscos/save.c @@ -614,7 +614,7 @@ static void ro_gui_save_drag_end(wimp_dragged *drag, void *data) os_error *error; char *dp, *ep; char *local_name = NULL; - utf8_convert_ret err; + nserror err; if (dragbox_active) ro_gui_drag_box_cancel(); @@ -651,9 +651,9 @@ static void ro_gui_save_drag_end(wimp_dragged *drag, void *data) /* saving directly from browser window, choose a * name based upon the URL */ err = utf8_to_local_encoding(save_leafname, 0, &local_name); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); local_name = NULL; } name = local_name ? local_name : save_leafname; @@ -1216,7 +1216,7 @@ void ro_gui_save_set_state(hlcache_handle *h, gui_save_type save_type, const char *name = gui_save_table[save_type].name; bool done = false; char *nice = NULL; - utf8_convert_ret err; + nserror err; char *local_name; size_t i; @@ -1270,9 +1270,9 @@ void ro_gui_save_set_state(hlcache_handle *h, gui_save_type save_type, leaf_buf[leaf_len - 1] = 0; err = utf8_to_local_encoding(name, 0, &local_name); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); local_name = NULL; } diff --git a/riscos/textselection.c b/riscos/textselection.c index 73b5246e3..c07075475 100644 --- a/riscos/textselection.c +++ b/riscos/textselection.c @@ -391,7 +391,7 @@ bool ro_gui_selection_prepare_paste_dataload( FILE *fp; long size; char *local_cb; - utf8_convert_ret ret; + nserror ret; /* Ignore messages that aren't for us */ if (dataxfer->your_ref == 0 || dataxfer->your_ref != paste_prev_message) @@ -410,7 +410,7 @@ bool ro_gui_selection_prepare_paste_dataload( ret = utf8_from_local_encoding(local_cb, size, &clipboard); - if (ret == UTF8_CONVERT_OK) { + if (ret == NSERROR_OK) { clip_length = strlen(clipboard); } @@ -509,13 +509,13 @@ void ro_gui_selection_data_request(wimp_full_message_data_request *req) bool ro_gui_save_clipboard(const char *path) { char *local_cb; - utf8_convert_ret ret; + nserror ret; os_error *error; assert(clip_length > 0 && clipboard); ret = utf8_to_local_encoding(clipboard, clip_length, &local_cb); - if (ret != UTF8_CONVERT_OK) { + if (ret != NSERROR_OK) { warn_user("SaveError", "Could not convert"); return false; } diff --git a/riscos/ucstables.c b/riscos/ucstables.c index 970caf122..4754bac89 100644 --- a/riscos/ucstables.c +++ b/riscos/ucstables.c @@ -446,17 +446,16 @@ static const struct special { * \param string The string to convert * \param len The length (in bytes) of the string, or 0 * \param result Pointer to location in which to store result - * \return The appropriate utf8_convert_ret value + * \return An nserror code */ -utf8_convert_ret utf8_to_local_encoding(const char *string, size_t len, - char **result) +nserror utf8_to_local_encoding(const char *string, size_t len, char **result) { os_error *error; int alphabet, i; size_t off, prev_off; char *temp, *cur_pos; const char *enc; - utf8_convert_ret err; + nserror err; assert(string); assert(result); @@ -473,7 +472,7 @@ utf8_convert_ret utf8_to_local_encoding(const char *string, size_t len, /* UTF-8 -> simply copy string */ if (alphabet == 111 /* UTF-8 */) { *result = strndup(string, len); - return UTF8_CONVERT_OK; + return NSERROR_OK; } /* get encoding name */ @@ -485,7 +484,7 @@ utf8_convert_ret utf8_to_local_encoding(const char *string, size_t len, /* create output buffer */ *(result) = malloc(len + 1); if (!(*result)) - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; *(*result) = '\0'; prev_off = 0; @@ -508,10 +507,10 @@ utf8_convert_ret utf8_to_local_encoding(const char *string, size_t len, if (off - prev_off > 0) { err = utf8_to_enc(string + prev_off, enc, off - prev_off, &temp); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); free(*result); - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; } strcat(cur_pos, temp); @@ -533,10 +532,10 @@ utf8_convert_ret utf8_to_local_encoding(const char *string, size_t len, if (prev_off < len) { err = utf8_to_enc(string + prev_off, enc, len - prev_off, &temp); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); free(*result); - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; } strcat(cur_pos, temp); @@ -544,7 +543,7 @@ utf8_convert_ret utf8_to_local_encoding(const char *string, size_t len, free(temp); } - return UTF8_CONVERT_OK; + return NSERROR_OK; } /** @@ -553,10 +552,9 @@ utf8_convert_ret utf8_to_local_encoding(const char *string, size_t len, * \param string The string to convert * \param len The length (in bytes) of the string, or 0 * \param result Pointer to location in which to store result - * \return The appropriate utf8_convert_ret value + * \return An nserror code */ -utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, - char **result) +nserror utf8_from_local_encoding(const char *string, size_t len, char **result) { os_error *error; int alphabet, i, num_specials = 0, result_alloc; @@ -564,7 +562,7 @@ utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, size_t off, prev_off, cur_off; char *temp; const char *enc; - utf8_convert_ret err; + nserror err; assert(string && result); @@ -581,10 +579,10 @@ utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, if (alphabet == 111 /* UTF-8 */) { temp = strndup(string, len); if (!temp) - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; *result = temp; - return UTF8_CONVERT_OK; + return NSERROR_OK; } /* get encoding name */ @@ -598,7 +596,7 @@ utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, *(result) = malloc(result_alloc); if (!(*result)) - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; *(*result) = '\0'; prev_off = 0; @@ -619,11 +617,11 @@ utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, if (off - prev_off > 0) { err = utf8_from_enc(string + prev_off, enc, off - prev_off, &temp, NULL); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_from_enc failed")); free(*result); - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; } strcat((*result) + cur_off, temp); @@ -647,7 +645,7 @@ utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, (3 * SPECIAL_CHUNK_SIZE)); if (!temp) { free(*result); - return UTF8_CONVERT_NOMEM; + return NSERRO_NOMEM; } *result = temp; @@ -661,11 +659,11 @@ utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, if (prev_off < len) { err = utf8_from_enc(string + prev_off, enc, len - prev_off, &temp, NULL); - if (err != UTF8_CONVERT_OK) { - assert(err != UTF8_CONVERT_BADENC); + if (err != NSERROR_OK) { + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_from_enc failed")); free(*result); - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; } strcat((*result) + cur_off, temp); @@ -680,9 +678,9 @@ utf8_convert_ret utf8_from_local_encoding(const char *string, size_t len, if (!temp) { LOG(("realloc failed")); free(*result); - return UTF8_CONVERT_NOMEM; + return NSERROR_NOMEM; } *result = temp; - return UTF8_CONVERT_OK; + return NSERROR_OK; } diff --git a/riscos/wimp.c b/riscos/wimp.c index 87860ad35..2e488918d 100644 --- a/riscos/wimp.c +++ b/riscos/wimp.c @@ -273,12 +273,12 @@ void ro_gui_set_icon_string(wimp_w w, wimp_i i, const char *text, bool is_utf8) unsigned int button_type; if (is_utf8) { - utf8_convert_ret err; + nserror err; /* convert text to local encoding */ err = utf8_to_local_encoding(text, 0, &local_text); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* A bad encoding should never happen, so assert this */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_enc failed")); /* Paranoia */ local_text = NULL; @@ -677,7 +677,7 @@ void ro_gui_set_window_title(wimp_w w, const char *text) wimp_window_info_base window; os_error *error; char *title_local_enc; - utf8_convert_ret err; + nserror err; /* Get the window details */ @@ -692,10 +692,10 @@ void ro_gui_set_window_title(wimp_w w, const char *text) /* convert text to local encoding */ err = utf8_to_local_encoding(text, 0, &title_local_enc); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* A bad encoding should never happen, * so assert this */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_enc failed")); return; } diff --git a/riscos/window.c b/riscos/window.c index 2221425c3..1f70d3d66 100644 --- a/riscos/window.c +++ b/riscos/window.c @@ -4621,7 +4621,7 @@ bool ro_gui_window_import_text(struct gui_window *g, const char *filename) os_error *error; char *buf, *utf8_buf, *sp; int size; - utf8_convert_ret ret; + nserror ret; const char *ep; char *p; @@ -4656,9 +4656,9 @@ bool ro_gui_window_import_text(struct gui_window *g, const char *filename) } ret = utf8_from_local_encoding(buf, size, &utf8_buf); - if (ret != UTF8_CONVERT_OK) { + if (ret != NSERROR_OK) { /* bad encoding shouldn't happen */ - assert(ret != UTF8_CONVERT_BADENC); + assert(ret != NSERROR_BAD_ENCODING); LOG(("utf8_from_local_encoding failed")); free(buf); warn_user("NoMemory", NULL); @@ -4802,7 +4802,7 @@ bool ro_gui_window_prepare_form_select_menu(struct browser_window *bw, char *text_convert, *temp; struct form_option *option; bool reopen = true; - utf8_convert_ret err; + nserror err; assert(control); @@ -4839,9 +4839,9 @@ bool ro_gui_window_prepare_form_select_menu(struct browser_window *bw, } err = utf8_to_local_encoding(messages_get("SelectMenu"), 0, &text_convert); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* badenc should never happen */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_local_encoding failed")); warn_user("NoMemory", 0); ro_gui_menu_closed(); @@ -4875,10 +4875,10 @@ bool ro_gui_window_prepare_form_select_menu(struct browser_window *bw, err = utf8_to_local_encoding(temp, 0, &text_convert); - if (err != UTF8_CONVERT_OK) { + if (err != NSERROR_OK) { /* A bad encoding should never happen, * so assert this */ - assert(err != UTF8_CONVERT_BADENC); + assert(err != NSERROR_BAD_ENCODING); LOG(("utf8_to_enc failed")); warn_user("NoMemory", 0); ro_gui_menu_closed(); |