summaryrefslogtreecommitdiff
path: root/atari/misc.c
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 /atari/misc.c
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 'atari/misc.c')
-rwxr-xr-xatari/misc.c20
1 files changed, 6 insertions, 14 deletions
diff --git a/atari/misc.c b/atari/misc.c
index 35ef18e52..a84ce2bd3 100755
--- a/atari/misc.c
+++ b/atari/misc.c
@@ -210,7 +210,6 @@ static nserror load_icon_callback(hlcache_handle *handle,
hlcache_handle *load_icon(const char *name, hlcache_handle_callback cb,
void * pw )
{
- char *url = NULL;
const char *icon_url = NULL;
hlcache_handle *c;
nserror err;
@@ -220,7 +219,7 @@ hlcache_handle *load_icon(const char *name, hlcache_handle_callback cb,
/** @todo something like bitmap_from_disc is needed here */
if (!strncmp(name, "file://", 7)) {
- icon_url = name;
+ err = nsurl_create(name, &icon_nsurl);
} else {
char *native_path = NULL;
@@ -228,22 +227,15 @@ hlcache_handle *load_icon(const char *name, hlcache_handle_callback cb,
return NULL;
err = netsurf_mkpath(&native_path, NULL, 2, icons_dir, name);
- if (err != NSERROR_OK) {
- warn_user(messages_get_errorcode(err), 0);
- return NULL;
+ if (err == NSERROR_OK) {
+ /* Convert native path to URL */
+ err = netsurf_path_to_nsurl(native_path, &icon_nsurl);
+ free(native_path);
}
-
- /* Convert native path to URL */
- url = path_to_url(native_path);
-
- free(native_path);
- icon_url = url;
}
- err = nsurl_create(icon_url, &icon_nsurl);
if (err != NSERROR_OK) {
- if (url != NULL)
- free(url);
+ warn_user(messages_get_errorcode(err), 0);
return NULL;
}