2006-06-06 [paul] 2.2.1cvs4
authorPaul Mangan <paul@claws-mail.org>
Tue, 6 Jun 2006 07:39:23 +0000 (07:39 +0000)
committerPaul Mangan <paul@claws-mail.org>
Tue, 6 Jun 2006 07:39:23 +0000 (07:39 +0000)
* src/textview.c
* src/common/utils.c
fix URI check
Thanks to Colin

ChangeLog
PATCHSETS
configure.ac
src/common/utils.c
src/textview.c

index 4e6b109a1fe7757821420fede15685ee7acd656a..2b5662c4ee1943ea541839841364503b1d93c27b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2006-06-06 [paul]      2.2.1cvs4
+
+       * src/textview.c
+       * src/common/utils.c
+               fix URI check
+               Thanks to Colin
+
 2006-06-05 [wwp]       2.2.1cvs3
 
        * manual/fr/account.xml
index 1326b0a34aaaf2aedca15b49b31bd69ce6fc4598..0db51ed3b97043e03be813361557c6abcd9e42a1 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.654.2.1597 -r 1.654.2.1598 configure.ac;  ) > 2.2.1cvs1.patchset
 ( cvs diff -u -r 1.52.2.19 -r 1.52.2.20 src/prefs_folder_item.c;  cvs diff -u -r 1.207.2.100 -r 1.207.2.101 src/folderview.c;  cvs diff -u -r 1.75.2.23 -r 1.75.2.24 src/matcher.c;  ) > 2.2.1cvs2.patchset
 ( cvs diff -u -r 1.1.2.4 -r 1.1.2.5 manual/fr/account.xml;  ) > 2.2.1cvs3.patchset
+( cvs diff -u -r 1.96.2.114 -r 1.96.2.115 src/textview.c;  cvs diff -u -r 1.36.2.63 -r 1.36.2.64 src/common/utils.c;  ) > 2.2.1cvs4.patchset
index a3fdd0e2623997760744a6d5823a1096e2d8d1b0..7ea0f9afb83b53be052add7f61c268ea5f6ab807 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=2
 MICRO_VERSION=1
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=3
+EXTRA_VERSION=4
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 4615220283e0387a829248ca33248e222de79ac8..15f172206cb2234b1fe365223d1ba942c986b96a 100644 (file)
@@ -1757,6 +1757,8 @@ static gint axtoi(const gchar *hexstr)
 
 gboolean is_uri_string(const gchar *str)
 {
+       while (str && *str && g_ascii_isspace(*str))
+               str++;
        return (g_ascii_strncasecmp(str, "http://", 7) == 0 ||
                g_ascii_strncasecmp(str, "https://", 8) == 0 ||
                g_ascii_strncasecmp(str, "ftp://", 6) == 0 ||
@@ -1765,6 +1767,8 @@ gboolean is_uri_string(const gchar *str)
 
 gchar *get_uri_path(const gchar *uri)
 {
+       while (uri && *uri && g_ascii_isspace(*uri))
+               uri++;
        if (g_ascii_strncasecmp(uri, "http://", 7) == 0)
                return (gchar *)(uri + 7);
        else if (g_ascii_strncasecmp(uri, "https://", 8) == 0)
@@ -4279,6 +4283,8 @@ gboolean get_uri_part(const gchar *start, const gchar *scanpos,
 
 gchar *make_uri_string(const gchar *bp, const gchar *ep)
 {
+       while (bp && *bp && g_ascii_isspace(*bp))
+               bp++;
        return g_strndup(bp, ep - bp);
 }
 
@@ -4608,6 +4614,8 @@ gchar *make_http_string(const gchar *bp, const gchar *ep)
        gchar *tmp;
        gchar *result;
 
+       while (bp && *bp && g_ascii_isspace(*bp))
+               bp++;
        tmp = g_strndup(bp, ep - bp);
        result = g_strconcat("http://", tmp, NULL);
        g_free(tmp);
index 7fb68daea872cd99b048066e39c9b7ec8304b4de..3354b350ef48caf965f257e49bcf662c9587e61c 100644 (file)
@@ -906,7 +906,9 @@ static void textview_show_html(TextView *textview, FILE *fp,
                                /* ALF - the sylpheed html parser returns an empty string,
                                 * if still inside an <a>, but already parsed past HREF */
                                str = strtok(str, " ");
-                               if (str) { 
+                               if (str) {
+                                       while (str && *str && g_ascii_isspace(*str))
+                                               str++; 
                                        parser->href = g_strdup(str);
                                        /* the URL may (or not) be followed by the
                                         * referenced text */
@@ -1150,6 +1152,9 @@ void textview_write_link(TextView *textview, const gchar *str,
        if (!uri)
                return;
 
+       while (uri && *uri && g_ascii_isspace(*uri))
+               uri++;
+               
        text = GTK_TEXT_VIEW(textview->text);
        buffer = gtk_text_view_get_buffer(text);
        gtk_text_buffer_get_end_iter(buffer, &iter);