diff options
| author | Grzegorz Slusarek <grzegorz.slusarek@gmail.com> | 2014-12-08 23:37:59 +0100 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2014-12-12 08:50:38 -0500 |
| commit | 4b96e862b4674e85d1a28f2849685aa3135bc557 (patch) | |
| tree | dab7d6b4d17fe76f88198dfc26db423ac2a3e17c /django | |
| parent | a189e9f0d03bfdbf5008533358c2941f15b86d58 (diff) | |
[1.7.x] Fixed #23674 -- Fixed a crash when a MultiValueField has invalid data.
Backport of 0dea81cd6d34b3e41cc4bbec99b5fdf06142b09e from master
Diffstat (limited to 'django')
| -rw-r--r-- | django/forms/fields.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/django/forms/fields.py b/django/forms/fields.py index f686b34a09..2823aaf53a 100644 --- a/django/forms/fields.py +++ b/django/forms/fields.py @@ -1068,7 +1068,11 @@ class MultiValueField(Field): if not isinstance(initial, list): initial = self.widget.decompress(initial) for field, initial, data in zip(self.fields, initial, data): - if field._has_changed(field.to_python(initial), data): + try: + initial = field.to_python(initial) + except ValidationError: + return True + if field._has_changed(initial, data): return True return False |
