[prev in list] [next in list] [prev in thread] [next in thread] 

List:       squirrelmail-cvs
Subject:    [SM-CVS] CVS: squirrelmail/functions url_parser.php,1.48,1.49
From:       Alex Lemaresquier <alex-brainstorm () users ! sourceforge ! net>
Date:       2003-11-30 17:01:47
[Download RAW message or body]

Update of /cvsroot/squirrelmail/squirrelmail/functions
In directory sc8-pr-cvs1:/tmp/cvs-serv16788

Modified Files:
	url_parser.php 
Log Message:
Really skip empty mailto: and bug fix in case of malformed mailto: url

Index: url_parser.php
===================================================================
RCS file: /cvsroot/squirrelmail/squirrelmail/functions/url_parser.php,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -w -r1.48 -r1.49
--- url_parser.php	14 Nov 2003 00:57:43 -0000	1.48
+++ url_parser.php	30 Nov 2003 17:01:44 -0000	1.49
@@ -86,7 +86,7 @@
 
 /**
  * rfc 2368 (mailto URL) preg_match() regexp
- * @see http://www.ietf.org/rfc/rfc2368.txt
+ * @link http://www.ietf.org/rfc/rfc2368.txt
  * @global string MailTo_PReg_Match the encapsulated regexp for preg_match()
  */
 global $MailTo_PReg_Match;
@@ -100,7 +100,7 @@
  * @return void
  */
 function parseUrl (&$body) {
-    global $url_parser_poss_ends, $url_parser_url_tokens;;
+    global $url_parser_poss_ends, $url_parser_url_tokens;
     $start      = 0;
     $blength    = strlen($body);
 
@@ -128,13 +128,13 @@
 
         /* If there was a token to replace, replace it */
         if ($target_token == 'mailto:') {	// rfc 2368 (mailto URL)
-            $target_pos += strlen($target_token);	//skip mailto:
+            $target_pos += 7;	//skip mailto:
             $end = $blength;
 
             $mailto = substr($body, $target_pos, $end-$target_pos);
 
             global $MailTo_PReg_Match;
-            if (preg_match($MailTo_PReg_Match, $mailto, $regs)) {
+            if ((preg_match($MailTo_PReg_Match, $mailto, $regs)) && ($regs[0] != \
'')) {  //sm_print_r($regs);
                 $mailto_before = $target_token . $regs[0];
                 $mailto_params = $regs[10];
@@ -151,8 +151,8 @@
                 }
                 $url_str = str_replace(array('to=', 'cc=', 'bcc='), \
                array('send_to=', 'send_to_cc=', 'send_to_bcc='), $mailto_params);
                 $comp_uri = makeComposeLink('src/compose.php' . $url_str, \
                $mailto_before);
-                replaceBlock($body, $comp_uri, $target_pos - strlen($target_token), \
                $target_pos + strlen($regs[0]));
-                $target_pos += strlen($comp_uri);
+                replaceBlock($body, $comp_uri, $target_pos - 7, $target_pos + \
strlen($regs[0])); +                $target_pos += strlen($comp_uri) - 7;
             }
         }
         else



-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
--
squirrelmail-cvs mailing list
List Address: squirrelmail-cvs@lists.sourceforge.net
List Info: https://lists.sourceforge.net/lists/listinfo/squirrelmail-cvs
http://squirrelmail.org/cvs


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic