On Thursday, February 1, 2018 at 6:52:25 PM UTC+1, Stefan wrote:

> On Thursday, February 1, 2018 at 1:16:23 PM UTC+1, Marco Burato wrote:
>>
>> On Monday, January 29, 2018 at 8:11:22 PM UTC+1, Stefan wrote:
>>
>> > Do you have a working copy on a network share? Then just stop doing 
>> that.
>> > And configure TSVN in the settings dialog to not show overlays for 
>> network drives (the default).
>>
>> Hi Stefan,
>> No, my working copies are all local.
>> I've checked Settings > Icon Overlays and under Drive Types only Fixed 
>> Drives is selected.
>> I've also tried to exclude the network drives in General > Context Menu
>> but it doesn't seem to affect the hang.
>>
>
> See this thread on how to get a symbol stack trace:
> https://groups.google.com/d/topic/tortoisesvn-dev/d7vFCTIROVk/discussion
>

Hi Stefan, thank you for the information.
I've taken a few dumps and found that a thread would get stuck with the 
following call stack:

  ntdll.dll!NtOpenFile ()
  KERNELBASE.dll!GetDriveTypeW()
  TortoiseSVN.dll!ShellCache::IsPathAllowed(const wchar_t * path) Line 370
  TortoiseSVN.dll!CShellExt::IsMemberOf_Wrap(const wchar_t * pwszPath, 
unsigned long) Line 183
  TortoiseSVN.dll!CShellExt::IsMemberOf(const wchar_t * pwszPath, unsigned 
long dwAttrib) Line 146
  TortoiseOverlays.dll!000000005a0e1706()
  shell32.dll!CFSIconOverlayManager::_GetFileOverlayInfo()
  shell32.dll!CFSIconOverlayManager::GetFileOverlayInfo(unsigned short const 
*,unsigned long,int *,unsigned long)
  shell32.dll!CNetFolder::_GetIconOverlayInfo(struct IDNETRESOURCE const *,
int *,unsigned long)
  shell32.dll!CNetFolder::GetOverlayIndex(struct _ITEMID_CHILD const *,int 
*)
  windows.storage.dll!CRegFolder::GetOverlayIndex(struct _ITEMID_CHILD const 
*,int *)
  windows.storage.dll!CAutoDestItemsFolder::GetOverlayIndex()
  windows.storage.dll!CRegFolder::_GetOverlayInfo()
  windows.storage.dll!CRegFolder::GetOverlayIndex(struct _ITEMID_CHILD const 
*,int *)
  explorerframe.dll!CRunnableTask::Run()
  windows.storage.dll!CShellTask::TT_Run()
  windows.storage.dll!CShellTaskThread::ThreadProc()
  windows.storage.dll!CShellTaskThread::s_ThreadProc()
  SHCore.dll!ExecuteWorkItemThreadProc ()
  ntdll.dll!RtlpTpWorkCallback()
  ntdll.dll!TppWorkerThread()
  kernel32.dll!BaseThreadInitThunk ()
  ntdll.dll!RtlUserThreadStart ()


The paths were UNC paths I had pinned to my "Quick Access" list in File 
Explorer (if you're not running an English version of Windows, it's the one 
with the "blue star").
It looks like Windows is trying to access the path while determining its 
type. Those network locations are only reachable when I'm connected through 
a VPN.

I've added

\\*

to Settings > Icon Overlays > "Exclude paths" and the problem has gone away.

-- 
You received this message because you are subscribed to the Google Groups 
"TortoiseSVN" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tortoisesvn+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tortoisesvn/92e940eb-f369-4fe1-9ef9-b964d4cb68ba%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to