]> git.decadent.org.uk Git - dak.git/commitdiff
Read files in chunks
authorAnsgar Burchardt <ansgar@debian.org>
Fri, 15 Apr 2016 07:49:54 +0000 (09:49 +0200)
committerAnsgar Burchardt <ansgar@debian.org>
Fri, 15 Apr 2016 07:49:54 +0000 (09:49 +0200)
Calling `f.read()` would read the entire file at once which is
wasteful. It's also not intended given the read loop.

Also replace a use of `readline()` with `read(65536)` as well where we
want to read the entire file and not only single lines.

dak/generate_index_diffs.py

index 6637c763c486a12926c86e0940056f8325aaeb0d..485d3770ff6c60bb3e70cf89ba10f9110e241126 100755 (executable)
@@ -107,7 +107,7 @@ def smartopen(file):
 def pipe_file(f, t):
     f.seek(0)
     while 1:
-        l = f.read()
+        l = f.read(65536)
         if not l: break
         t.write(l)
     t.close()
@@ -243,7 +243,7 @@ class Updates:
 def create_temp_file(r):
     f = tempfile.TemporaryFile()
     while 1:
-        x = r.readline()
+        x = r.read(65536)
         if not x: break
         f.write(x)
     r.close()