From b5a9166f7e0e21ae0f2cc8f218b422bc2c116fb0 Mon Sep 17 00:00:00 2001 From: John Paulett Date: Mon, 31 Mar 2014 16:35:45 -0400 Subject: [PATCH] Fixed #22364 -- Sanitized getpass input in changepassword. Python 2 getpass on Windows does not accept unicode, even when containing on ASCII characters. Related #190807. --- django/contrib/auth/management/commands/changepassword.py | 3 ++- docs/releases/1.6.3.txt | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/django/contrib/auth/management/commands/changepassword.py b/django/contrib/auth/management/commands/changepassword.py index 4d6ae60acd8..97a0a32fc03 100644 --- a/django/contrib/auth/management/commands/changepassword.py +++ b/django/contrib/auth/management/commands/changepassword.py @@ -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 diff --git a/docs/releases/1.6.3.txt b/docs/releases/1.6.3.txt index f2cf2612904..538c67e5dcd 100644 --- a/docs/releases/1.6.3.txt +++ b/docs/releases/1.6.3.txt @@ -64,5 +64,8 @@ Other bugfixes and changes environment variable wasn't set (`#22256 `_). +* Fixed :djadmin:`changepassword` on Windows + (`#22364 `_). + Additionally, Django's vendored version of six, :mod:`django.utils.six` has been upgraded to the latest release (1.6.1).