summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--riscos/url_complete.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/riscos/url_complete.c b/riscos/url_complete.c
index d30443cf5..9085ba85c 100644
--- a/riscos/url_complete.c
+++ b/riscos/url_complete.c
@@ -720,12 +720,22 @@ bool ro_gui_url_complete_click(wimp_pointer *pointer)
ICON_TOOLBAR_URL,
url_complete_matches[
url_complete_matches_selection]);
- browser_window_go(g->bw,
+ global_history_add_recent(url_complete_matches[
+ url_complete_matches_selection]);
+
+ /** \todo The interaction of components here is hideous */
+ /* Do NOT make any attempt to use any of the global url
+ * completion variables after this call to browser_window_go.
+ * They will be invalidated by (at least):
+ * + gui_window_set_url
+ * + destruction of (i)frames within the current page
+ * Any attempt to use them will probably result in a crash.
+ */
+
+ browser_window_go(g->bw,
url_complete_matches[
url_complete_matches_selection],
0, true);
- global_history_add_recent(url_complete_matches[
- url_complete_matches_selection]);
ro_gui_url_complete_close(NULL, 0);
/* Adjust just sets the text */