Skip to content

Commit 28b576d

Browse files
committed
feat: finish SortByProperty implementation
refactor: comment out SortByProperty.FileShareAccess docs: update SortByProperty.ObjectRealName summary to reflect implementation docs: update SortByProperty.FileShareAccess comment to reflect requirements docs: remove SortByProperty TODO
1 parent 57dc820 commit 28b576d

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

deadlock-dotnet-sdk/Domain/FileLockerEx.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
namespace deadlock_dotnet_sdk.Domain
55
{
66
//TODO: Add RefreshList(). This should clear Lockers and call FindLockingHandles again.
7-
//TODO: If a handle is closed or invalid, remove if from Lockers. SafeHandle.IsClosed is unreliable—it only works on handles managed by the current process.
8-
//TODO: feat: finalize OrderBy parameters
7+
//TODO: If a handle is closed or invalid, remove it from Lockers. SafeHandle.IsClosed is unreliable—it only works on handles managed by the current process.
98
//https://sourcegraph.com/github.com/dotnet/runtime@main/-/blob/src/libraries/System.Private.CoreLib/src/System/Runtime/InteropServices/SafeHandle.cs
109
public class FileLockerEx
1110
{
@@ -23,7 +22,7 @@ public class FileLockerEx
2322
public enum SortByProperty
2423
{
2524
/// <summary>NOT IMPLEMENTED</summary>
26-
FileShareAccess, // oh, this is important! Note: System Informer seems to crash when evaluating this property // TODO: implement FileShareAccess property
25+
//FileShareAccess, // oh, this is important! Note: System Informer seems to crash when evaluating this property // not possible without a kernel mode driver; see IoCheckShareAccess
2726
HandleAttributes,
2827
HandleSubType,
2928
HandleType,
@@ -33,7 +32,7 @@ public enum SortByProperty
3332
/// <summary>The string returned to the ObjectName property via NtQueryObject.</summary>
3433
ObjectOriginalName,
3534
/// <summary>
36-
/// (NOT IMPLEMENTED)
35+
/// (PARTIALLY IMPLEMENTED)
3736
/// Differs from ObjectName for types {File, (Registry) Key}
3837
/// </summary>
3938
/// TODO: get 'real' paths e.g. "\REGISTRY\MACHINE" -> "HKLM"

0 commit comments

Comments
 (0)