[Erp5-report] r42160 kazuhiko - /erp5/trunk/products/ERP5Type/Utils.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jan 10 11:54:42 CET 2011


Author: kazuhiko
Date: Mon Jan 10 11:54:41 2011
New Revision: 42160

URL: http://svn.erp5.org?rev=42160&view=rev
Log:
try to parse latin-1 encoded url (even though that is invalid according to RFC 3986).

Modified:
    erp5/trunk/products/ERP5Type/Utils.py

Modified: erp5/trunk/products/ERP5Type/Utils.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Utils.py?rev=42160&r1=42159&r2=42160&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Utils.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/Utils.py [utf8] Mon Jan 10 11:54:41 2011
@@ -3187,6 +3187,7 @@ class ScalarMaxConflictResolver(persiste
 ###################
 #  URL Normaliser #
 ###################
+from Products.PythonScripts.standard import url_unquote
 try:
   import urlnorm
 except ImportError:
@@ -3258,6 +3259,11 @@ def urlnormNormaliseUrl(url, base_url=No
   """
   try:
     url = urlnorm.norm(url)
+  except UnicodeDecodeError:
+    try:
+      url = urlnorm.norm(url_unquote(url).decode('latin1'))
+    except UnicodeDecodeError:
+      raise urlnorm.InvalidUrl
   except (AttributeError, urlnorm.InvalidUrl):
     # This url is not valid, a better Exception will
     # be raised



More information about the Erp5-report mailing list