summaryrefslogtreecommitdiff
path: root/src/yelp-window.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/yelp-window.c')
-rw-r--r--src/yelp-window.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/yelp-window.c b/src/yelp-window.c
index d436f24e..401e0599 100644
--- a/src/yelp-window.c
+++ b/src/yelp-window.c
@@ -1849,14 +1849,21 @@ html_uri_selected_cb (YelpHtml *html,
gboolean handled,
gpointer user_data)
{
+ gchar *new_uri = uri;
YelpWindow *window = YELP_WINDOW (user_data);
debug_print (DB_FUNCTION, "entering\n");
debug_print (DB_ARG, " uri = \"%s\"\n", uri);
+ if (g_str_has_prefix (uri, "xref:"))
+ new_uri = g_strconcat (window->priv->base_uri, "#", uri + 5, NULL);
+
if (!handled) {
- yelp_window_load (window, uri);
+ yelp_window_load (window, new_uri);
}
+
+ if (new_uri != uri)
+ g_free (new_uri);
}
static gboolean