rslsync shell extension breaks network shares on windows 11


zxc33

Recommended Posts

When accessing a network share on Windows 11, the file explorer runs IShellIconOverlay::GetOverlayIndex API for each file in the directory. This API determines which small overlay icon should be placed next to the main file icon. This overlay is used by Resilio Sync explorer extension for placing an icon which denotes the sync status - it shows if the directory is being synced with rslsync or a sync is currently in progress. With each invocation of this API on a directory, the rslsync explorer extension should check if a file ".sync/ID" inside the directory exists or not.

For some reason, on Windows 11 while using a network share, the rslsync explorer extension always checks if ".sync/ID" file exists on the root of the network share server. For example, if you are browsing directory "\\192.168.1.1\Share\MyDirectory", rslsync should check if "\\192.168.1.1\Share\MyDirectory\.sync\ID" exists, however it checks if "\\192.168.1.1\.sync\ID" exists - which most likely does not. This is done for each file in the directory. After some failed attempts to access "\\192.168.1.1\.sync\ID", your network share server may start rate-limiting your requests, which causes IShellIconOverlay::GetOverlayIndex API to take very long time to complete (in my case, around 60 seconds).

This behavior completely breaks file explorer on win11 - large network directories fail to list all files in the directory, thumbnails fail to generate, file transfers might get stuck.

As a workaround to this problem, users can disable rslsync shell extension with sysinternals autoruns.exe, or create a ".sync" share on the network server, with "ID" file placed in it.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.