def moveFiles(fileList): errorFlag = False movedList = [] try: for item in fileList: os.rename(item[0], item[1]) movedList.append(item) except (IOError, OSError) as err: if err.errno == errno.EXDEV: # Invalid cross-device link print "[Directories] Warning: Cannot rename across devices, trying slower move." # from Tools.CopyFiles import moveFiles as extMoveFiles # OpenViX, OpenATV, Beyonwiz from Screens.CopyFiles import moveFiles as extMoveFiles # OpenPLi extMoveFiles(fileList, item[0]) print "[Directories] Moving files in background." else: print "[Directories] Error %d: Moving file '%s' to '%s'! (%s)" % (err.errno, item[0], item[1], err.strerror) errorFlag = True if errorFlag: print "[Directories] Reversing renamed files due to error." for item in movedList: try: os.rename(item[1], item[0]) except (IOError, OSError) as err: print "[Directories] Error %d: Renaming '%s' to '%s'! (%s)" % (err.errno, item[1], item[0], err.strerror) print "[Directories] Failed to undo move:", item
def moveFiles(fileList): errorFlag = False movedList = [] try: for item in fileList: rename(item[0], item[1]) movedList.append(item) except (IOError, OSError) as err: if err.errno == EXDEV: # EXDEV - Invalid cross-device link. print( "[Directories] Warning: Cannot rename across devices, trying slower move." ) from Screens.CopyFiles import moveFiles as extMoveFiles extMoveFiles(fileList, item[0]) print("[Directories] Moving files in background.") else: print("[Directories] Error %d: Moving file '%s' to '%s'! (%s)" % (err.errno, item[0], item[1], err.strerror)) errorFlag = True if errorFlag: print("[Directories] Reversing renamed files due to error.") for item in movedList: try: rename(item[1], item[0]) except (IOError, OSError) as err: print("[Directories] Error %d: Renaming '%s' to '%s'! (%s)" % (err.errno, item[1], item[0], err.strerror)) print( "[Directories] Note: Failed to undo move of '%s' to '%s'!" % (item[0], item[1]))
def moveFiles(fileList): errorFlag = False movedList = [] try: for item in fileList: os.rename(item[0], item[1]) movedList.append(item) except OSError, e: if e.errno == 18: # errno.EXDEV - Invalid cross-device link print "[Directories] Warning: Cannot rename across devices, trying slower move." # from Tools.CopyFiles import moveFiles as extMoveFiles # OpenViX, OpenATV, Beyonwiz from Screens.CopyFiles import moveFiles as extMoveFiles # OpenPLi extMoveFiles(fileList, item[0]) print "[Directories] Moving files in background." else: print "[Directories] Error %d: Moving file '%s' to '%s'! (%s)" % (e.errno, item[0], item[1], os.strerror(e.error)) errorFlag = True