Closed Bug 573977 Opened 10 years ago Closed 9 years ago

file picker hangs browser with tortoisecvs shell extension near ole32!CDllHost::GetApartmentToken+0x1f7 with APPLICATION_HANG_BlockedOn_MissingThread

Categories

(Toolkit :: Blocklist Policy Requests, defect)

x86
All
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: yarson, Unassigned)

References

Details

(Keywords: hang)

Attachments

(1 file, 1 obsolete file)

71.71 KB, text/plain
Details
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.10) Gecko/20100504 Firefox/3.5.10
Build Identifier: Firefox/3.5.4

When trying browse the file from <input type="file"/> the browser (Firefox 3.6.4) freeze.

Reproducible: Always

Steps to Reproduce:
1. Create a new file with <input type="file"/> within.
2. Open the browser and click on 'Browse' button.
3.
Actual Results:  
Firefox freeze.

Expected Results:  
Should open the window where file can be chosen.
Version: unspecified → 3.6 Branch
This happens in Firefox 3.6.4.
wfm with FF3.6.4
Do you opened the last time a resource on a now removed drive ?
Did you waited long enough for a timeout ?
There were 2 resources mapped plus 'c' drive. When I downgraded to 3.5.10 (it took me 10 minutes to download and install the previous version) there weren't any troubles with the same resources - file dialog appeared immediately.

I was waiting for half an hour then I killed the browser.

We confirmed this bug on a different computer with the same FF (v3.6.4) installed.
Do you have some special chars in the path, for example your username ?
Can you attach (via "add an attachment" link) a stacktrace using this instructions : https://developer.mozilla.org/en/How_to_get_a_stacktrace_with_WinDbg ?
Attached file Log file (obsolete) —
I had to restart debugger due the fact it didn't open the browser at the first time after the commands:
.sympath SRV*c:\symbols*http://symbols.mozilla.org/firefox
.symfix+ c:\symbols
.reload /f
.logopen /t c:\firefox-debug.log
.childdbg 1
.tlist
sxn gp
|* lm
Attachment #457554 - Attachment description: Log fiile → Log file
Attachment #457554 - Attachment mime type: application/octet-stream → text/plain
Your logfile doesn't show that you have entered any comments in the debugger.
It shows only the output that you get if you use the Break command :-(
Attached file Log File with comments
I had to several times select Debug->Go due the fact, it didn't show the firefox, then eventually I run Debug->Go Handled Exception
Attachment #457554 - Attachment is obsolete: true
Thanks for the log !

timeless: Can you take a look ?
I'm not sure about this logfile. It looks like it hanging in the windows dlls
Reporter: Can you please uninstall TortoiseSVN for a test, reboot and try it again in Firefox ?
I've just did and probably you know what is the result. It didn't help, neither newest version of TortoiseSVN (1.6.10) nor Firefox (3.6.7).

I'm wondering what was changed between versions 3.5.10 and 3.6.4 which causes this bug? I'm stuck...
Reporter, does this still happen with 3.6.11 or later in a fresh profile?
Indeed. I stay with branch 3.5.x (I'm using version 3.5.14). Any update of branch 3.5 doesn't make this issue but branch 3.6 does.
OS: Windows XP → All
DEFAULT_BUCKET_ID:  APPLICATION_HANG_BlockedOn_MissingThread

PRIMARY_PROBLEM_CLASS:  APPLICATION_HANG_BlockedOn_MissingThread

PRIMARY_PROBLEM_CLASS_DATA:  Missing thread frame: ole32!DLLHostThreadEntry

LAST_CONTROL_TRANSFER:  from 7e4194be to 7c90e514

STACK_TEXT:  
ntdll!KiFastSystemCallRet
USER32!NtUserMessageCall+0xc
USER32!SendMessageW+0x7f
ole32!CDllHost::GetApartmentToken+0x1f7
ole32!DoSTApartmentCreate+0x12
ole32!CClassCache::GetActivatorFromDllHost+0xa3
ole32!CClassCache::GetOrCreateApartment+0x20
ole32!FindOrCreateApartment+0x46
ole32!CProcessActivator::GetApartmentActivator+0xc7
ole32!CProcessActivator::CCICallback+0x17
ole32!CProcessActivator::AttemptActivation+0x2c
ole32!CProcessActivator::ActivateByContext+0x42
ole32!CProcessActivator::CreateInstance+0x49
ole32!ActivationPropertiesIn::DelegateCreateInstance+0xf7
ole32!CClientContextActivator::CreateInstance+0x8f
ole32!ActivationPropertiesIn::DelegateCreateInstance+0xf7
ole32!ICoCreateInstanceEx+0x3c9
ole32!CComActivator::DoCreateInstance+0x28
ole32!CoCreateInstanceEx+0x1e
ole32!CoCreateInstance+0x37
SHLWAPI!SHCoCreateInstanceAC+0x3a
SHELL32!_SHCoCreateInstance+0x127
SHELL32!SHCoCreateInstance+0x40
SHELL32!DCA_CreateInstance+0x2c
SHELL32!CFSIconOverlayManager::_LoadIconOverlayIdentifiers+0xd7
SHELL32!CFSIconOverlayManager::_InitializeHdsaIconOverlays+0x33
SHELL32!CFSIconOverlayManager::CreateInstance+0x3f
SHELL32!CCF_CreateInstance+0x2b
SHELL32!_CreateFromDllGetClassObject+0x2d
SHELL32!_CreateFromShell+0x1b
SHELL32!_SHCoCreateInstance+0x4e
SHELL32!SHCoCreateInstance+0x40
SHELL32!IconOverlayManagerInit+0x26
SHELL32!GetIconOverlayManager+0x10
SHELL32!_ShellImageListInit+0x29b
SHELL32!FileIconInit+0x19b
SHELL32!Shell_GetImageLists+0x14
COMDLG32!OpenDlgProc+0x3f9
USER32!InternalCallWinProc+0x28
USER32!UserCallDlgProcCheckWow+0x146
USER32!DefDlgProcWorker+0xa8USER32!SendMessageWorker+0x384
USER32!SendMessageW+0x7f
COMCTL32!ComboBox_CalcControlRects+0xbd
COMCTL32!ComboBox_CreateHandler+0x102
COMCTL32!ComboBox_WndProc+0x22d
USER32!InternalCallWinProc+0x28
USER32!UserCallWinProcCheckWow+0x150
USER32!DispatchClientMessage+0xa3
USER32!__fnINLPCREATESTRUCT+0x8b
ntdll!KiUserCallbackDispatcher+0x13
USER32!NtUserCreateWindowEx+0xc
USER32!InternalCreateDialog+0x929
USER32!InternalDialogBox+0xa9
USER32!DialogBoxIndirectParamAorW+0x37
USER32!DialogBoxIndirectParamW+0x1b
COMDLG32!NewGetFileName+0x240
COMDLG32!NewGetOpenFileName+0xf
COMDLG32!GetFileName+0x35d
COMDLG32!GetOpenFileNameW+0x62
xul!nsFilePicker::ShowW+0x362 [e:\builds\moz2_slave\win32_build\build\widget\src\windows\nsfilepicker.cpp @ 254]

04f60000 04f77000   TortoiseOverlays   (export symbols)       C:\Program Files\Common Files\TortoiseOverlays\TortoiseOverlays.dll
04ff0000 04ffe000   TortoiseStub   (export symbols)       C:\Program Files\TortoiseSVN\bin\TortoiseStub.dll
06110000 061d8000   TortoiseSVN   (export symbols)       C:\Program Files\TortoiseSVN\bin\TortoiseSVN.dll
06210000 06222000   intl3_tsvn   (export symbols)       C:\Program Files\TortoiseSVN\bin\intl3_tsvn.dll
063b0000 064cc000   TrtseShl C (export symbols)       C:\Program Files\TortoiseCVS\TrtseShl.dll

This sounds like a bug in tortoise. I am not a fan of tortoise's shell integration. I found it leaky nearly a decade ago and haven't seen any sign of it improving since.

We should be able to blocklist tortoise. At some point I hope to move file pickers out of process so they don't hang us :(.
Component: General → Blocklisting
Keywords: hang
Product: Firefox → addons.mozilla.org
QA Contact: general → blocklisting
Summary: <input type="file"/> hangs up the browser → file picker hangs browser with tortoisesvn shell extension near ole32!CDllHost::GetApartmentToken+0x1f7 with APPLICATION_HANG_BlockedOn_MissingThread
Version: 3.6 Branch → unspecified
Duplicate of this bug: 575787
Duplicate of this bug: 587903
Status: UNCONFIRMED → NEW
Ever confirmed: true
Is it worth pointing out to "yarson" the apparently tortoiseCVS is the offender? 
I had both tortoiseCVS and tortoiseSVN installed on my system and by only removing tortoiseCVS I could fix the Firefox file picker problem. 

Seems a bit odd that Firefox was the only application (among very many) on my system that had an issue with the file picker. All other applications could use the system file picker in the presence of tortoiseCVS just fine.
true..
tk: thanks.
Summary: file picker hangs browser with tortoisesvn shell extension near ole32!CDllHost::GetApartmentToken+0x1f7 with APPLICATION_HANG_BlockedOn_MissingThread → file picker hangs browser with tortoisecvs shell extension near ole32!CDllHost::GetApartmentToken+0x1f7 with APPLICATION_HANG_BlockedOn_MissingThread
this seems to be fixed by tortoise because we got no new bug reports about this issue in the last half year.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
Product: addons.mozilla.org → Toolkit
You need to log in before you can comment on or make changes to this bug.