equal
deleted
inserted
replaced
285 except OSError: |
285 except OSError: |
286 unlink(name) |
286 unlink(name) |
287 return True |
287 return True |
288 except OSError as inst: |
288 except OSError as inst: |
289 # link creation might race, try again |
289 # link creation might race, try again |
290 if inst[0] == errno.EEXIST: |
290 if inst.errno == errno.EEXIST: |
291 continue |
291 continue |
292 raise |
292 raise |
293 finally: |
293 finally: |
294 if fd is not None: |
294 if fd is not None: |
295 fd.close() |
295 fd.close() |
296 except AttributeError: |
296 except AttributeError: |
297 return False |
297 return False |
298 except OSError as inst: |
298 except OSError as inst: |
299 # sshfs might report failure while successfully creating the link |
299 # sshfs might report failure while successfully creating the link |
300 if inst[0] == errno.EIO and os.path.exists(name): |
300 if inst.errno == errno.EIO and os.path.exists(name): |
301 unlink(name) |
301 unlink(name) |
302 return False |
302 return False |
303 |
303 |
304 def checkosfilename(path): |
304 def checkosfilename(path): |
305 '''Check that the base-relative path is a valid filename on this platform. |
305 '''Check that the base-relative path is a valid filename on this platform. |