summaryrefslogtreecommitdiff
path: root/monkey
diff options
context:
space:
mode:
authorVincent Sanders <vince@netsurf-browser.org>2013-02-14 15:09:28 +0000
committerVincent Sanders <vince@netsurf-browser.org>2013-02-18 11:23:27 +0000
commit3bfb5b96a7c7cb2718a60987e69cd659ed49b9d8 (patch)
tree40aa4e52aa50010c8f7c47dda79be2b77339e546 /monkey
parentc545bb4b42dff8bfd4c288e330f52848ec2df6c4 (diff)
downloadnetsurf-3bfb5b96a7c7cb2718a60987e69cd659ed49b9d8.tar.gz
netsurf-3bfb5b96a7c7cb2718a60987e69cd659ed49b9d8.tar.bz2
browser_window_navigate refactor
Diffstat (limited to 'monkey')
-rw-r--r--monkey/browser.c27
1 files changed, 25 insertions, 2 deletions
diff --git a/monkey/browser.c b/monkey/browser.c
index e6a57d00b..a4a923fac 100644
--- a/monkey/browser.c
+++ b/monkey/browser.c
@@ -431,9 +431,32 @@ monkey_window_handle_go(int argc, char **argv)
if (gw == NULL) {
fprintf(stdout, "ERROR WINDOW NUM BAD\n");
} else {
- browser_window_go(gw->bw, argv[3], (argc == 5) ? argv[4] : NULL, true);
+ nsurl *url;
+ nsurl *ref_url = NULL;
+ nserror error;
+
+ error = nsurl_create(argv[3], &url);
+ if (error != NSERROR_OK) {
+ warn_user(messages_get_errorcode(error), 0);
+ } else {
+ if (argc == 5) {
+ error = nsurl_create(argv[4], &ref_url);
+ }
+
+ browser_window_navigate(gw->bw,
+ url,
+ ref_url,
+ BROWSER_WINDOW_GO_FLAG_HISTORY |
+ BROWSER_WINDOW_GO_FLAG_VERIFIABLE,
+ NULL,
+ NULL,
+ NULL);
+ nsurl_unref(url);
+ if (ref_url != NULL) {
+ nsurl_unref(ref_url);
+ }
+ }
}
-
}
static void