diff --git a/xiaomusic/httpserver.py b/xiaomusic/httpserver.py index f80f153..7442717 100644 --- a/xiaomusic/httpserver.py +++ b/xiaomusic/httpserver.py @@ -563,7 +563,7 @@ async def downloadplaylist(data: DownloadPlayList, Verifcation=Depends(verificat dir_path = os.path.join(config.download_path, data.dirname) log.debug(f"Download dir_path: {dir_path}") # 可能只是部分失败,都需要整理下载目录 - remove_common_prefix(dir_path) + remove_common_prefix(config.download_path, dir_path) chmoddir(dir_path) return {"ret": "OK"} else: @@ -577,7 +577,7 @@ async def downloadplaylist(data: DownloadPlayList, Verifcation=Depends(verificat dir_path = os.path.join(config.download_path, data.dirname) log.debug(f"Download dir_path: {dir_path}") # 可能只是部分失败,都需要整理下载目录 - remove_common_prefix(dir_path) + remove_common_prefix(config.download_path, dir_path) chmoddir(dir_path) asyncio.create_task(check_download_proc()) diff --git a/xiaomusic/utils.py b/xiaomusic/utils.py index 58820d3..b4d01ff 100644 --- a/xiaomusic/utils.py +++ b/xiaomusic/utils.py @@ -1108,9 +1108,7 @@ def _longest_common_prefix(file_names): # 移除目录下文件名前缀相同的 -def remove_common_prefix(directory): - # Define the safe root directory - safe_root = config.download_path +def remove_common_prefix(safe_root, directory): # Normalize the directory path normalized_directory = os.path.normpath(directory) # Ensure the directory is within the safe root