Kaydet (Commit) 42bb8b39 authored tarafından Greg Stein's avatar Greg Stein

apply patch #100868 from Moshe Zadka:

    refactor the copying of file data. new: shutil.copyfileobj(fsrc, fdst)
üst 35e459c3
...@@ -9,6 +9,15 @@ import sys ...@@ -9,6 +9,15 @@ import sys
import stat import stat
def copyfileobj(fsrc, fdst, length=16*1024):
"""copy data from file-like object fsrc to file-like object fdst"""
while 1:
buf = fsrc.read(length)
if not buf:
break
fdst.write(buf)
def copyfile(src, dst): def copyfile(src, dst):
"""Copy data from src to dst""" """Copy data from src to dst"""
fsrc = None fsrc = None
...@@ -16,11 +25,7 @@ def copyfile(src, dst): ...@@ -16,11 +25,7 @@ def copyfile(src, dst):
try: try:
fsrc = open(src, 'rb') fsrc = open(src, 'rb')
fdst = open(dst, 'wb') fdst = open(dst, 'wb')
while 1: copyfileobj(fsrc, fdst)
buf = fsrc.read(16*1024)
if not buf:
break
fdst.write(buf)
finally: finally:
if fdst: if fdst:
fdst.close() fdst.close()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment