From 58225862c225ccf64a67c541688d902913b4a0fc Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Tue, 27 Sep 2011 12:02:15 +0000 Subject: fetch_can_fetch takes a nsurl now. svn path=/trunk/netsurf/; revision=12900 --- riscos/uri.c | 13 ++++++++++++- riscos/url_protocol.c | 12 +++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) (limited to 'riscos') diff --git a/riscos/uri.c b/riscos/uri.c index 0a2dcbbd1..986a84022 100644 --- a/riscos/uri.c +++ b/riscos/uri.c @@ -32,6 +32,7 @@ #include "riscos/uri.h" #include "riscos/url_protocol.h" #include "utils/log.h" +#include "utils/nsurl.h" #include "utils/utils.h" void ro_uri_message_received(wimp_message *msg) @@ -40,10 +41,20 @@ void ro_uri_message_received(wimp_message *msg) uri_h uri_handle; char* uri_requested; int uri_length; + nsurl *nsurl; uri_handle = uri_message->handle; - if (!fetch_can_fetch(uri_message->uri)) return; + if (nsurl_create(uri_message->uri, &nsurl) != NSERROR_OK) { + return; + } + + if (!fetch_can_fetch(nsurl)) { + nsurl_unref(nsurl); + return; + } + + nsurl_unref(nsurl); uri_message->your_ref = uri_message->my_ref; uri_message->action = message_URI_PROCESS_ACK; diff --git a/riscos/url_protocol.c b/riscos/url_protocol.c index 7629fd3d3..272847e83 100644 --- a/riscos/url_protocol.c +++ b/riscos/url_protocol.c @@ -39,6 +39,7 @@ #include "riscos/uri.h" #include "riscos/url_protocol.h" #include "utils/log.h" +#include "utils/nsurl.h" #include "utils/utils.h" /** @@ -52,6 +53,7 @@ void ro_url_message_received(wimp_message *message) inetsuite_message_open_url *url_message = (inetsuite_message_open_url*) &message->data; os_error *error; + nsurl *nsurl; /* If the url_message->indirect.tag is non-zero, * then the message data is contained within the message block. @@ -98,11 +100,19 @@ void ro_url_message_received(wimp_message *message) url[i] = 0; } - if (!fetch_can_fetch(url)) { + if (nsurl_create(url, &nsurl) != NSERROR_OK) { free(url); return; } + if (!fetch_can_fetch(nsurl)) { + nsurl_unref(nsurl); + free(url); + return; + } + + nsurl_unref(nsurl); + /* send ack */ message->your_ref = message->my_ref; error = xwimp_send_message(wimp_USER_MESSAGE_ACKNOWLEDGE, message, -- cgit v1.2.3