summaryrefslogtreecommitdiff
path: root/monkey
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2014-05-26 23:43:36 +0100
committerVincent Sanders <vince@kyllikki.org>2014-05-26 23:52:36 +0100
commit00b6cfc57e27f8146d9b41ba8e63038a4f9df70e (patch)
treebadf71a43a81975098d3f1294073d8c76bc994ea /monkey
parent1f337f292d1c98c396d5f8d5d294f9ba13963586 (diff)
downloadnetsurf-00b6cfc57e27f8146d9b41ba8e63038a4f9df70e.tar.gz
netsurf-00b6cfc57e27f8146d9b41ba8e63038a4f9df70e.tar.bz2
rework path to url mapping functions to convert from and to nsurl
Diffstat (limited to 'monkey')
-rw-r--r--monkey/fetch.c56
1 files changed, 2 insertions, 54 deletions
diff --git a/monkey/fetch.c b/monkey/fetch.c
index 01258bb06..88cb27dcf 100644
--- a/monkey/fetch.c
+++ b/monkey/fetch.c
@@ -23,7 +23,7 @@
#include <limits.h>
#include "desktop/gui.h"
-#include "utils/url.h"
+#include "utils/file.h"
#include "utils/nsurl.h"
#include "utils/filepath.h"
@@ -33,70 +33,18 @@
extern char **respaths;
-static char *path_to_url(const char *path)
-{
- int urllen;
- char *url;
-
- if (path == NULL) {
- return NULL;
- }
-
- urllen = strlen(path) + FILE_SCHEME_PREFIX_LEN + 1;
-
- url = malloc(urllen);
- if (url == NULL) {
- return NULL;
- }
-
- if (*path == '/') {
- path++; /* file: paths are already absolute */
- }
-
- snprintf(url, urllen, "%s%s", FILE_SCHEME_PREFIX, path);
-
- return url;
-}
-
-static char *url_to_path(const char *url)
-{
- char *path;
- char *respath;
- nserror res; /* result from url routines */
-
- res = url_path(url, &path);
- if (res != NSERROR_OK) {
- return NULL;
- }
-
- res = url_unescape(path, &respath);
- free(path);
- if (res != NSERROR_OK) {
- return NULL;
- }
-
- return respath;
-}
-
static nsurl *gui_get_resource_url(const char *path)
{
char buf[PATH_MAX];
- char *raw;
nsurl *url = NULL;
- raw = path_to_url(filepath_sfind(respaths, buf, path));
- if (raw != NULL) {
- nsurl_create(raw, &url);
- free(raw);
- }
+ netsurf_path_to_nsurl(filepath_sfind(respaths, buf, path), &url);
return url;
}
static struct gui_fetch_table fetch_table = {
.filetype = monkey_fetch_filetype,
- .path_to_url = path_to_url,
- .url_to_path = url_to_path,
.get_resource_url = gui_get_resource_url,
};