diff options
author | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-08-05 14:29:53 +0100 |
---|---|---|
committer | Daniel Silverstone <dsilvers@digital-scurf.org> | 2019-08-05 14:30:30 +0100 |
commit | 6ba199c7d7bee1909107ee0b8cbaf749c575b310 (patch) | |
tree | 9932d32f3fd90c341022257d6c22061fe990725c /desktop/browser_window.c | |
parent | 2171f13ab334716250ca2bc53946806f7a88c8a3 (diff) | |
download | netsurf-6ba199c7d7bee1909107ee0b8cbaf749c575b310.tar.gz netsurf-6ba199c7d7bee1909107ee0b8cbaf749c575b310.tar.bz2 |
Content messages: Remove ERRORCODE, rework ERROR
This reworks CONTENT_MSG_ERROR to be structured data and
removes the CONTENT_MSG_ERRORCODE message kind.
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
Diffstat (limited to 'desktop/browser_window.c')
-rw-r--r-- | desktop/browser_window.c | 49 |
1 files changed, 8 insertions, 41 deletions
diff --git a/desktop/browser_window.c b/desktop/browser_window.c index 176fced3d..8d5b1ee5e 100644 --- a/desktop/browser_window.c +++ b/desktop/browser_window.c @@ -410,7 +410,6 @@ browser_window_favicon_callback(hlcache_handle *c, break; case CONTENT_MSG_ERROR: - case CONTENT_MSG_ERRORCODE: /* clean up after ourselves */ if (c == bw->favicon.loading) { @@ -557,38 +556,6 @@ browser_window_update_favicon(hlcache_handle *c, /** - * window callback errorcode handling. - */ -static void -browser_window_callback_errorcode(hlcache_handle *c, - struct browser_window *bw, - nserror code) -{ - const char* message; - - message = messages_get_errorcode(code); - - browser_window_set_status(bw, message); - - /* Only warn the user about errors in top-level windows */ - if (bw->browser_window_type == BROWSER_WINDOW_NORMAL) { - guit->misc->warning(message, NULL); - } - - if (c == bw->loading_content) { - bw->loading_content = NULL; - } else if (c == bw->current_content) { - bw->current_content = NULL; - browser_window_remove_caret(bw, false); - } - - hlcache_handle_release(c); - - browser_window_stop_throbber(bw); -} - - -/** * Handle meta http-equiv refresh time elapsing by loading a new page. * * \param p browser window to refresh with new page @@ -867,16 +834,16 @@ browser_window_callback(hlcache_handle *c, const hlcache_event *event, void *pw) res = browser_window_content_done(bw); break; - case CONTENT_MSG_ERRORCODE: - browser_window_callback_errorcode(c, bw, event->data.errorcode); - break; - - case CONTENT_MSG_ERROR: - browser_window_set_status(bw, event->data.error); + case CONTENT_MSG_ERROR: { + const char *message = event->data.errordata.errormsg; + if (event->data.errordata.errorcode != NSERROR_UNKNOWN) { + message = messages_get_errorcode(event->data.errordata.errorcode); + } + browser_window_set_status(bw, message); /* Only warn the user about errors in top-level windows */ if (bw->browser_window_type == BROWSER_WINDOW_NORMAL) { - guit->misc->warning(event->data.error, NULL); + guit->misc->warning(message, NULL); } if (c == bw->loading_content) { @@ -890,7 +857,7 @@ browser_window_callback(hlcache_handle *c, const hlcache_event *event, void *pw) browser_window_stop_throbber(bw); break; - + } case CONTENT_MSG_REDIRECT: if (urldb_add_url(event->data.redirect.from)) urldb_update_url_visit_data(event->data.redirect.from); |