diff options
| author | Tim Graham <timograham@gmail.com> | 2015-06-16 11:46:32 -0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2015-10-25 06:02:21 -0400 |
| commit | 2a36a9bb15f0f1dee66a52f5fe7e0de57a6bd2e1 (patch) | |
| tree | 3e5bee2c0fef9d00ef78e5510f1935ced4a4d525 /django | |
| parent | e2ea30c4403fca1b0a2032aae7a783f8705fc08b (diff) | |
[1.8.x] Refs #23763 -- Fixed Python 3.5 PendingDeprecationWarning in LazyStream.
Fixed "PendingDeprecationWarning: generator 'LazyStream.read.<locals>.parts'
raised StopIteration" per PEP 0479.
Backport of 3f2de803181ca3c5526ec9d708b2098b8f683808 from master
Diffstat (limited to 'django')
| -rw-r--r-- | django/http/multipartparser.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/django/http/multipartparser.py b/django/http/multipartparser.py index 53e4149519..375584e4f3 100644 --- a/django/http/multipartparser.py +++ b/django/http/multipartparser.py @@ -327,12 +327,15 @@ class LazyStream(six.Iterator): while remaining != 0: assert remaining > 0, 'remaining bytes to read should never go negative' - chunk = next(self) - - emitting = chunk[:remaining] - self.unget(chunk[remaining:]) - remaining -= len(emitting) - yield emitting + try: + chunk = next(self) + except StopIteration: + return + else: + emitting = chunk[:remaining] + self.unget(chunk[remaining:]) + remaining -= len(emitting) + yield emitting out = b''.join(parts()) return out |
