diff options
author | Vincent Sanders <vince@kyllikki.org> | 2014-01-25 23:00:22 +0000 |
---|---|---|
committer | Vincent Sanders <vince@kyllikki.org> | 2014-01-25 23:01:32 +0000 |
commit | 8ce0a10670e655d9e3a4f31fedd34baf1a3189b9 (patch) | |
tree | c1aa73bf937d097a6d2cb7efe3777cb6c720e7f7 /desktop | |
parent | 46b8fbaeac4dd1e35945ae1338056156e5b3b86b (diff) | |
download | netsurf-8ce0a10670e655d9e3a4f31fedd34baf1a3189b9.tar.gz netsurf-8ce0a10670e655d9e3a4f31fedd34baf1a3189b9.tar.bz2 |
move path_to_url and url_to_path to fetch operation table
Diffstat (limited to 'desktop')
-rw-r--r-- | desktop/gui.h | 16 | ||||
-rw-r--r-- | desktop/gui_factory.c | 6 | ||||
-rw-r--r-- | desktop/searchweb.c | 2 |
3 files changed, 23 insertions, 1 deletions
diff --git a/desktop/gui.h b/desktop/gui.h index 724355d10..da609b1e3 100644 --- a/desktop/gui.h +++ b/desktop/gui.h @@ -319,6 +319,22 @@ struct gui_fetch_table { */ const char *(*filetype)(const char *unix_path); + /** + * Convert a pathname to a file: URL. + * + * \param path pathname + * \return URL, allocated on heap, or NULL on failure + */ + char *(*path_to_url)(const char *path); + + /** + * Convert a file: URL to a pathname. + * + * \param url a file: URL + * \return pathname, allocated on heap, or NULL on failure + */ + char *(*url_to_path)(const char *url); + /* Optional entries */ diff --git a/desktop/gui_factory.c b/desktop/gui_factory.c index 06b5383ba..dfe775571 100644 --- a/desktop/gui_factory.c +++ b/desktop/gui_factory.c @@ -317,6 +317,12 @@ static nserror verify_fetch_register(struct gui_fetch_table *gft) if (gft->filetype == NULL) { return NSERROR_BAD_PARAMETER; } + if (gft->path_to_url == NULL) { + return NSERROR_BAD_PARAMETER; + } + if (gft->url_to_path == NULL) { + return NSERROR_BAD_PARAMETER; + } /* fill in the optional entries with defaults */ diff --git a/desktop/searchweb.c b/desktop/searchweb.c index d42919d2d..b3f6162a6 100644 --- a/desktop/searchweb.c +++ b/desktop/searchweb.c @@ -236,7 +236,7 @@ void search_web_retrieve_ico(bool localdefault) if (localdefault) { if (search_default_ico_location == NULL) return; - url = path_to_url(search_default_ico_location); + url = guit->fetch->path_to_url(search_default_ico_location); } else { url = search_web_ico_name(); } |