From 57608214c0737bcefad8c8bbda10d445f999f22b Mon Sep 17 00:00:00 2001 From: Ashraf Mansuri Date: Sun, 8 Dec 2024 19:17:17 +0530 Subject: [PATCH] Symlinks misaligned issue fixed. --- .../Enumerators/Win32StorageEnumerator.cs | 61 +++++++++++++------ 1 file changed, 42 insertions(+), 19 deletions(-) diff --git a/src/Files.App/Utils/Storage/Enumerators/Win32StorageEnumerator.cs b/src/Files.App/Utils/Storage/Enumerators/Win32StorageEnumerator.cs index 442efba22bba..6157bb6c7b9c 100644 --- a/src/Files.App/Utils/Storage/Enumerators/Win32StorageEnumerator.cs +++ b/src/Files.App/Utils/Storage/Enumerators/Win32StorageEnumerator.cs @@ -277,26 +277,49 @@ CancellationToken cancellationToken if (isSymlink) { var targetPath = NativeFileOperationsHelper.ParseSymLink(itemPath); - - return new ShortcutItem(null) + if (isGitRepo) { - PrimaryItemAttribute = StorageItemTypes.File, - FileExtension = itemFileExtension, - IsHiddenItem = isHidden, - Opacity = opacity, - FileImage = null, - LoadFileIcon = itemThumbnailImgVis, - ItemNameRaw = itemName, - ItemDateModifiedReal = itemModifiedDate, - ItemDateAccessedReal = itemLastAccessDate, - ItemDateCreatedReal = itemCreatedDate, - ItemType = "Shortcut".GetLocalizedResource(), - ItemPath = itemPath, - FileSize = itemSize, - FileSizeBytes = itemSizeBytes, - TargetPath = targetPath, - IsSymLink = true - }; + return new GitItem() + { + PrimaryItemAttribute = StorageItemTypes.File, + FileExtension = itemFileExtension, + FileImage = null, + LoadFileIcon = itemThumbnailImgVis, + ItemNameRaw = itemName, + IsHiddenItem = isHidden, + Opacity = opacity, + ItemDateModifiedReal = itemModifiedDate, + ItemDateAccessedReal = itemLastAccessDate, + ItemDateCreatedReal = itemCreatedDate, + ItemType = itemType, + ItemPath = itemPath, + FileSize = itemSize, + FileSizeBytes = itemSizeBytes + }; + } + else + { + return new ShortcutItem(null) + { + PrimaryItemAttribute = StorageItemTypes.File, + FileExtension = itemFileExtension, + IsHiddenItem = isHidden, + Opacity = opacity, + FileImage = null, + LoadFileIcon = itemThumbnailImgVis, + ItemNameRaw = itemName, + ItemDateModifiedReal = itemModifiedDate, + ItemDateAccessedReal = itemLastAccessDate, + ItemDateCreatedReal = itemCreatedDate, + ItemType = "Shortcut".GetLocalizedResource(), + ItemPath = itemPath, + FileSize = itemSize, + FileSizeBytes = itemSizeBytes, + TargetPath = targetPath, + IsSymLink = true + }; + } + } else if (FileExtensionHelpers.IsShortcutOrUrlFile(findData.cFileName)) {