summary refs log tree commit diff stats
path: root/src/fe-gtk
diff options
context:
space:
mode:
authorBerke Viktor <bviktor@hexchat.org>2012-10-07 03:00:52 +0200
committerBerke Viktor <bviktor@hexchat.org>2012-10-07 03:00:52 +0200
commit59f32ccb3a1f192c9faf8f51330db918c4ee3d46 (patch)
treed37b82f478310815d6e86805e42efd9fe6228445 /src/fe-gtk
parentb4e78e04551fb9836d320f01143d6aa2661cc7f3 (diff)
Fix URL detection
Diffstat (limited to 'src/fe-gtk')
-rw-r--r--src/fe-gtk/fe-gtk.c12
-rw-r--r--src/fe-gtk/maingui.c1
2 files changed, 8 insertions, 5 deletions
diff --git a/src/fe-gtk/fe-gtk.c b/src/fe-gtk/fe-gtk.c
index ad401bca..29748f0b 100644
--- a/src/fe-gtk/fe-gtk.c
+++ b/src/fe-gtk/fe-gtk.c
@@ -1080,16 +1080,18 @@ fe_open_url_inner (const char *url)
 static void
 fe_open_url_locale (const char *url)
 {
-#ifndef WIN32
-	if (url[0] != '/' && strchr (url, ':') == NULL)
+	/* the http:// part's missing, prepend it, otherwise it won't always work */
+	if (strchr (url, ':') == NULL)
 	{
 		url = g_strdup_printf ("http://%s", url);
 		fe_open_url_inner (url);
 		g_free ((char *)url);
-		return;
 	}
-#endif
-	fe_open_url_inner (url);
+	/* we have a sane URL, send it to the browser untouched */
+	else
+	{
+		fe_open_url_inner (url);
+	}
 }
 
 void
diff --git a/src/fe-gtk/maingui.c b/src/fe-gtk/maingui.c
index 32fa83cb..41cbb2a6 100644
--- a/src/fe-gtk/maingui.c
+++ b/src/fe-gtk/maingui.c
@@ -2291,6 +2291,7 @@ mg_word_clicked (GtkWidget *xtext, char *word, GdkEventButton *even)
 	switch (mg_word_check (xtext, word, strlen (word)))
 	{
 	case 0:
+	case WORD_PATH:
 		menu_middlemenu (sess, even);
 		break;
 	case WORD_URL: