diff options
-rw-r--r-- | django/utils/encoding.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/django/utils/encoding.py b/django/utils/encoding.py index 8601dc44f3..2fe6a2d970 100644 --- a/django/utils/encoding.py +++ b/django/utils/encoding.py @@ -27,6 +27,8 @@ def force_unicode(s, encoding='utf-8', errors='strict'): Similar to smart_unicode, except that lazy instances are resolved to strings, rather than kept as lazy objects. """ + if s is None: + return s if not isinstance(s, basestring,): if hasattr(s, '__unicode__'): s = unicode(s) @@ -72,5 +74,7 @@ def iri_to_uri(iri): # The list of safe characters here is constructed from the printable ASCII # characters that are not explicitly excluded by the list at the end of # section 3.1 of RFC 3987. + if iri is None: + return iri return urllib.quote(smart_str(iri), safe='/#%[]=:;$&()+,!?') |