From 48147ebd52e0eb0372cc1897cc833d05cdcb0961 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 27 Sep 2025 09:57:34 +0530 Subject: [PATCH] Clean up previous PR --- src/calibre/utils/copy_files.py | 5 ++--- src/calibre/utils/windows/winutil.cpp | 1 + 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/calibre/utils/copy_files.py b/src/calibre/utils/copy_files.py index 9c06b54058..13bd801e89 100644 --- a/src/calibre/utils/copy_files.py +++ b/src/calibre/utils/copy_files.py @@ -104,9 +104,8 @@ class WindowsFileCopier: def _open_file(self, path: str, retry_on_sharing_violation: bool = True, is_folder: bool = False) -> 'winutil.Handle': flags = winutil.FILE_FLAG_BACKUP_SEMANTICS if is_folder else winutil.FILE_FLAG_SEQUENTIAL_SCAN - if os.path.islink(path): - # Do not open symbolic link target to prevent unwanted delete_on_close - flags |= 0x00200000 # winutil.FILE_FLAG_OPEN_REPARSE_POINT + # Do not open symbolic link target to prevent unwanted delete_on_close + flags |= getattr(winutil, 'FILE_FLAG_OPEN_REPARSE_POINT', 0x00200000) access_flags = winutil.GENERIC_READ if self.delete_all: access_flags |= winutil.DELETE diff --git a/src/calibre/utils/windows/winutil.cpp b/src/calibre/utils/windows/winutil.cpp index 7f29d00a98..4468f20a26 100644 --- a/src/calibre/utils/windows/winutil.cpp +++ b/src/calibre/utils/windows/winutil.cpp @@ -1553,6 +1553,7 @@ exec_module(PyObject *m) { A(FILE_ACTION_RENAMED_NEW_NAME); A(FILE_LIST_DIRECTORY); A(FILE_FLAG_BACKUP_SEMANTICS); + A(FILE_FLAG_OPEN_REPARSE_POINT); A(SHGFP_TYPE_CURRENT); A(SHGFP_TYPE_DEFAULT); A(PIPE_ACCESS_INBOUND);