You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by fe...@apache.org on 2005/06/05 19:38:57 UTC

svn commit: r180124 - in /spamassassin/trunk: lib/Mail/SpamAssassin/Util.pm t/uri.t

Author: felicity
Date: Sun Jun  5 10:38:57 2005
New Revision: 180124

URL: http://svn.apache.org/viewcvs?rev=180124&view=rev
Log:
bug 4390: some MUAs autoconvert non-escaped back slashes into front slashes, so deal with them as appropriate.  add a test for it as well.

Modified:
    spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm
    spamassassin/trunk/t/uri.t

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm
URL: http://svn.apache.org/viewcvs/spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm?rev=180124&r1=180123&r2=180124&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm Sun Jun  5 10:38:57 2005
@@ -946,6 +946,11 @@
     # Make a copy so we don't trash the original in the array
     my $nuri = $uri;
 
+    # bug 4390: certain MUAs treat back slashes as front slashes.
+    # since backslashes are supposed to be encoded in a URI, swap non-encoded
+    # ones with front slashes.
+    $nuri =~ tr@\\@/@;
+
     # http:www.foo.biz -> http://www.foo.biz
     $nuri =~ s#^(https?:)/{0,2}#$1//#i;
 

Modified: spamassassin/trunk/t/uri.t
URL: http://svn.apache.org/viewcvs/spamassassin/trunk/t/uri.t?rev=180124&r1=180123&r2=180124&view=diff
==============================================================================
--- spamassassin/trunk/t/uri.t (original)
+++ spamassassin/trunk/t/uri.t Sun Jun  5 10:38:57 2005
@@ -22,7 +22,7 @@
 use Mail::SpamAssassin::HTML;
 use Mail::SpamAssassin::Util;
 
-plan tests => 78;
+plan tests => 79;
 
 ##############################################
 
@@ -153,6 +153,11 @@
 
 ok(try_canon(["http://www.kl\nuge.n\net/"],
   ['http://www.kluge.net/']
+  ));
+
+ok(try_canon(['http:\\\\people.apache.org\\~felicity\\'],
+  ['http:\\\\people.apache.org\\~felicity\\',
+  'http://people.apache.org/~felicity/']
   ));
 
 ok(try_canon([