From 53f0f432dd2aa915765e3b2869928a18f09adad8 Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Sat, 25 Oct 2014 17:10:08 +0100 Subject: update fetcher registration API to return an error code. By using an error code return we can gracefully handle fetcher registration faliures instead of just immediately aborting. The curl handler was also cleaned up and documentation improved as a side effect. --- content/fetch.c | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) (limited to 'content/fetch.c') diff --git a/content/fetch.c b/content/fetch.c index 7923e9af3..2c326e877 100644 --- a/content/fetch.c +++ b/content/fetch.c @@ -287,14 +287,36 @@ static void fetcher_poll(void *unused) /* exported interface documented in content/fetch.h */ nserror fetcher_init(void) { - fetch_curl_register(); - fetch_data_register(); - fetch_file_register(); - fetch_resource_register(); - fetch_about_register(); - fetch_javascript_register(); + nserror ret; - return NSERROR_OK; + ret = fetch_curl_register(); + if (ret != NSERROR_OK) { + return ret; + } + + ret = fetch_data_register(); + if (ret != NSERROR_OK) { + return ret; + } + + ret = fetch_file_register(); + if (ret != NSERROR_OK) { + return ret; + } + + ret = fetch_resource_register(); + if (ret != NSERROR_OK) { + return ret; + } + + ret = fetch_about_register(); + if (ret != NSERROR_OK) { + return ret; + } + + ret = fetch_javascript_register(); + + return ret; } /* exported interface documented in content/fetchers.h */ -- cgit v1.2.3