summaryrefslogtreecommitdiff
path: root/riscos/uri.c
diff options
context:
space:
mode:
Diffstat (limited to 'riscos/uri.c')
-rw-r--r--riscos/uri.c13
1 files changed, 12 insertions, 1 deletions
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;