equal
deleted
inserted
replaced
215 os.rename(src, dst) |
215 os.rename(src, dst) |
216 except: |
216 except: |
217 os.unlink(dst) |
217 os.unlink(dst) |
218 os.rename(src, dst) |
218 os.rename(src, dst) |
219 |
219 |
220 def copytree(src, dst, copyfile): |
220 def copyfiles(src, dst, copyfile): |
221 """Copy a directory tree, files are copied using 'copyfile'.""" |
221 """Copy a directory tree, files are copied using 'copyfile'.""" |
222 names = os.listdir(src) |
222 |
223 os.mkdir(dst) |
223 if os.path.isdir(src): |
224 |
224 os.mkdir(dst) |
225 for name in names: |
225 for name in os.listdir(src): |
226 srcname = os.path.join(src, name) |
226 srcname = os.path.join(src, name) |
227 dstname = os.path.join(dst, name) |
227 dstname = os.path.join(dst, name) |
228 if os.path.isdir(srcname): |
228 copyfiles(srcname, dstname, copyfile) |
229 copytree(srcname, dstname, copyfile) |
229 else: |
230 elif os.path.isfile(srcname): |
230 copyfile(src, dst) |
231 copyfile(srcname, dstname) |
|
232 else: |
|
233 pass |
|
234 |
231 |
235 def opener(base): |
232 def opener(base): |
236 """ |
233 """ |
237 return a function that opens files relative to base |
234 return a function that opens files relative to base |
238 |
235 |