Fixed #22364 -- Sanitized getpass input in changepassword.
Python 2 getpass on Windows does not accept unicode, even when containing on ASCII characters. Related #190807.
This commit is contained in:
parent
ea5a984704
commit
b5a9166f7e
|
@ -6,6 +6,7 @@ from optparse import make_option
|
|||
from django.contrib.auth import get_user_model
|
||||
from django.core.management.base import BaseCommand, CommandError
|
||||
from django.db import DEFAULT_DB_ALIAS
|
||||
from django.utils.encoding import force_str
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
|
@ -18,7 +19,7 @@ class Command(BaseCommand):
|
|||
requires_system_checks = False
|
||||
|
||||
def _get_pass(self, prompt="Password: "):
|
||||
p = getpass.getpass(prompt=prompt)
|
||||
p = getpass.getpass(prompt=force_str(prompt))
|
||||
if not p:
|
||||
raise CommandError("aborted")
|
||||
return p
|
||||
|
|
|
@ -64,5 +64,8 @@ Other bugfixes and changes
|
|||
environment variable wasn't set
|
||||
(`#22256 <http://code.djangoproject.com/ticket/22256>`_).
|
||||
|
||||
* Fixed :djadmin:`changepassword` on Windows
|
||||
(`#22364 <https://code.djangoproject.com/ticket/22364>`_).
|
||||
|
||||
Additionally, Django's vendored version of six, :mod:`django.utils.six` has been
|
||||
upgraded to the latest release (1.6.1).
|
||||
|
|
Loading…
Reference in New Issue