On Tue, 30 Jan 2007 15:05:23 +0000, Hugo Ferreira <[EMAIL PROTECTED]> wrote: >Hi there, > >I have a problem. I'm using calling shutil.copyfile() followed by >open(). The thing is that most of the times open() is called before >the actual file is copied. I don't have this problem when doing a >step-by-step debug, since I give enough time for the OS to copy the >file, but at run-time, it throws an exception. > >Is there anyway to force a sync copy of the file (make python wait for >the completion)?
shutil.copyfile() _is_ synchronous. Check out the source: 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): """Copy data from src to dst""" if _samefile(src, dst): raise Error, "`%s` and `%s` are the same file" % (src, dst) fsrc = None fdst = None try: fsrc = open(src, 'rb') fdst = open(dst, 'wb') copyfileobj(fsrc, fdst) finally: if fdst: fdst.close() if fsrc: fsrc.close() The problem you are experiencing must have a different cause. Jean-Paul -- http://mail.python.org/mailman/listinfo/python-list