1
0
mirror of https://github.com/django/django.git synced 2025-07-04 01:39:20 +00:00

unicode: Changed handling of None in smart_unicode/force_unicode. There is no

case when converting it to a unicode string seems useful, so keep it as None.
Fixed #4435.


git-svn-id: http://code.djangoproject.com/svn/django/branches/unicode@5388 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Malcolm Tredinnick 2007-05-31 09:03:29 +00:00
parent 8d1ce1fd33
commit 790d9ecf67

View File

@ -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='/#%[]=:;$&()+,!?')