* src/textview.c
authorAlfons Hoogervorst <alfons@proteus.demon.nl>
Fri, 31 Jan 2003 13:56:19 +0000 (13:56 +0000)
committerAlfons Hoogervorst <alfons@proteus.demon.nl>
Fri, 31 Jan 2003 13:56:19 +0000 (13:56 +0000)
tune URI parser to accept mailto URLs with a '?'
(patch from Ruslan Balkin)

ChangeLog.claws
configure.ac
src/textview.c

index a58ad6a03be087f3164a60bd9e5604aee5c70bca..0401d9c2b6064ef703cd06a0347c81276c1be75d 100644 (file)
@@ -1,3 +1,9 @@
+2003-01-31 [alfons]    0.8.9claws27
+
+       * src/textview.c
+               tune URI parser to accept mailto URLs with a '?'
+               (patch from Ruslan Balkin)
+
 2003-01-31 [colin]     0.8.9claws26
 
        * src/summaryview.c
index 3c99c72cf14ac96b9f95b758570a6f07c676eaed..32d149f753d41a077509962eca91deefa937af6d 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=8
 MICRO_VERSION=9
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws26
+EXTRA_VERSION=claws27
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
index c50a87a08f6f2937563a7a2f7006537e848e5f97..5489d231b91783087702a0c20963457169cc59f2 100644 (file)
@@ -850,6 +850,7 @@ static gboolean get_email_part(const gchar *start, const gchar *scanpos,
        static GHashTable *dom_tab;
        const gchar *last_dot = NULL;
        const gchar *prelast_dot = NULL;
+       const gchar *last_tld_char = NULL;
 
        /* the informative part of the email address (describing the name
         * of the email address owner) may contain quoted parts. the
@@ -901,8 +902,12 @@ static gboolean get_email_part(const gchar *start, const gchar *scanpos,
                if (last_dot == NULL || (scanpos + 1 >= last_dot))
                        return FALSE;
                last_dot++;
-       
-               if (is_toplvl_domain(dom_tab, last_dot, ep_))
+
+               for (last_tld_char = last_dot; last_tld_char < ep_; last_tld_char++)
+                       if (*last_tld_char == '?')
+                               break;
+
+               if (is_toplvl_domain(dom_tab, last_dot, last_tld_char))
                        result = TRUE;
 
                *ep = ep_;