summaryrefslogtreecommitdiff
path: root/django/utils
diff options
context:
space:
mode:
authorVille Skyttä <ville.skytta@iki.fi>2016-08-05 02:45:14 +0300
committerTim Graham <timograham@gmail.com>2016-08-04 19:45:14 -0400
commita2fb2b3a1feee512131c76e9040232faf2362526 (patch)
treeaef371904eb7c1710fb717c3a6bf77b3da44ee94 /django/utils
parent50e299dbfbbfd796e63e7e13b4566cf69d2c4acb (diff)
Fixed #27020 -- Used a context manager to close files.
Diffstat (limited to 'django/utils')
-rw-r--r--django/utils/text.py22
1 files changed, 10 insertions, 12 deletions
diff --git a/django/utils/text.py b/django/utils/text.py
index e6849a018d..f51113b483 100644
--- a/django/utils/text.py
+++ b/django/utils/text.py
@@ -291,9 +291,8 @@ def phone2numeric(phone):
# Used with permission.
def compress_string(s):
zbuf = BytesIO()
- zfile = GzipFile(mode='wb', compresslevel=6, fileobj=zbuf)
- zfile.write(s)
- zfile.close()
+ with GzipFile(mode='wb', compresslevel=6, fileobj=zbuf) as zfile:
+ zfile.write(s)
return zbuf.getvalue()
@@ -321,15 +320,14 @@ class StreamingBuffer(object):
# Like compress_string, but for iterators of strings.
def compress_sequence(sequence):
buf = StreamingBuffer()
- zfile = GzipFile(mode='wb', compresslevel=6, fileobj=buf)
- # Output headers...
- yield buf.read()
- for item in sequence:
- zfile.write(item)
- data = buf.read()
- if data:
- yield data
- zfile.close()
+ with GzipFile(mode='wb', compresslevel=6, fileobj=buf) as zfile:
+ # Output headers...
+ yield buf.read()
+ for item in sequence:
+ zfile.write(item)
+ data = buf.read()
+ if data:
+ yield data
yield buf.read()