Bug 1894614 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

In Firefox 125 we enabled a new feature on release (bug 1882478) to present a suggestion on the address bar if the user has a url on their clipboard.

We have had a [couple of reports on Reddit](https://www.reddit.com/r/firefox/comments/1cgxysc/ever_since_update_the_second_i_press_the_search/) of users seeing long hangs when clicking on the address bar.

One user has been able to [capture a profile](https://share.firefox.dev/4dmjmZV), which shows a 75 second hang with this stack:

```
ZwUserGetClipboardData [win32u.dll]
GetClipboardData [user32.dll]
CClipDataObject::OleGetClipboardData(unsigned int, void**) [com\ole32\ole232\clipbrd\clipdata.cpp]
CClipDataObject::GetData(tagFORMATETC*, tagSTGMEDIUM*) [com\ole32\ole232\clipbrd\clipdata.cpp]
RepeatedlyTryGetData::<lambda_19>::operator()() const [widget/windows/nsClipboard.cpp]
RepeatedlyTry(RepeatedlyTryGetData::<lambda_19>, std::_Binder<std::_Unforced,void (&)(long, const nsTString<char> &),const std::_Ph<1> &,nsTLiteralString<char> >) [widget/windows/nsClipboard.cpp]
RepeatedlyTryGetData(IDataObject&, tagFORMATETC*, tagSTGMEDIUM*) [widget/windows/nsClipboard.cpp]
nsClipboard::FillSTGMedium(IDataObject*, unsigned int, tagFORMATETC*, tagSTGMEDIUM*, unsigned long) [widget/windows/nsClipboard.cpp]
nsClipboard::GetNativeDataOffClipboard(IDataObject*, unsigned int, unsigned int, char const*, void**, unsigned int*) [widget/windows/nsClipboard.cpp]
nsClipboard::GetDataFromDataObject(IDataObject*, unsigned int, nsIWidget*, nsITransferable*) [widget/windows/nsClipboard.cpp]
nsClipboard::GetNativeClipboardData(nsITransferable*, int) [widget/windows/nsClipboard.cpp]
nsBaseClipboard::GetData(nsITransferable*, int, mozilla::dom::WindowContext*) [widget/nsBaseClipboard.cpp]
XPTC__InvokebyIndex [xul.dll]
NS_InvokeByIndex(nsISupports*, unsigned int, unsigned int, nsXPTCVariant*) [xpcom/reflect/xptcall/md/win32/xptcinvoke_x86_64.cpp]
CallMethodHelper::Invoke() [js/xpconnect/src/XPCWrappedNative.cpp]
CallMethodHelper::Call() [js/xpconnect/src/XPCWrappedNative.cpp]
XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) [js/xpconnect/src/XPCWrappedNative.cpp]
XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) [js/xpconnect/src/XPCWrappedNativeJSOps.cpp]
CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), js::CallReason, JS::CallArgs const&) [js/src/vm/Interpreter.cpp]
js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) [js/src/vm/Interpreter.cpp]
InternalCall(JSContext*, js::AnyInvokeArgs const&, js::CallReason) [js/src/vm/Interpreter.cpp]
js::CallFromStack(JSContext*, JS::CallArgs const&, js::CallReason) [js/src/vm/Interpreter.cpp]
js::Interpret(JSContext*, js::RunState&) [js/src/vm/Interpreter.cpp]
MaybeEnterInterpreterTrampoline(JSContext*, js::RunState&) [js/src/vm/Interpreter.cpp]
js::RunScript(JSContext*, js::RunState&) [js/src/vm/Interpreter.cpp]
js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) [js/src/vm/Interpreter.cpp]
InternalCall(JSContext*, js::AnyInvokeArgs const&, js::CallReason) [js/src/vm/Interpreter.cpp]
js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>, js::CallReason) [js/src/vm/Interpreter.cpp]
js::jit::InvokeFunction(JSContext*, JS::Handle<JSObject *>, bool, bool, unsigned int, JS::Value*, JS::MutableHandle<JS::Value>) [js/src/jit/VMFunctions.cpp]
js::jit::InvokeFromInterpreterStub(JSContext*, js::jit::InterpreterStubExitFrameLayout*) [js/src/jit/VMFunctions.cpp]
0x249ecb21af5
nsIClipboard.getData
readFromClipboard [chrome://browser/content/browser.js:3091:27]
isActive [resource:///modules/UrlbarProviderClipboard.sys.mjs:49:11]
js::RunScript
tryMethod [resource:///modules/UrlbarUtils.sys.mjs:2365:12]
start [resource:///modules/UrlbarProvidersManager.sys.mjs:405:14]
startQuery [resource:///modules/UrlbarProvidersManager.sys.mjs:215:19]
```
In Firefox 125 we enabled a new feature on release (bug 1882478) to present a suggestion on the address bar if the user has a url on their clipboard.

We have had a [couple of reports on Reddit](https://www.reddit.com/r/firefox/comments/1cgxysc/ever_since_update_the_second_i_press_the_search/) of users seeing long hangs when clicking on the address bar.

One user has been able to [capture a profile](https://share.firefox.dev/4dmjmZV), which shows a 75 second hang with this stack:

```
ZwUserGetClipboardData [win32u.dll]
GetClipboardData [user32.dll]
CClipDataObject::OleGetClipboardData(unsigned int, void**) [com\ole32\ole232\clipbrd\clipdata.cpp]
CClipDataObject::GetData(tagFORMATETC*, tagSTGMEDIUM*) [com\ole32\ole232\clipbrd\clipdata.cpp]
RepeatedlyTryGetData::<lambda_19>::operator()() const [widget/windows/nsClipboard.cpp]
RepeatedlyTry(RepeatedlyTryGetData::<lambda_19>, std::_Binder<std::_Unforced,void (&)(long, const nsTString<char> &),const std::_Ph<1> &,nsTLiteralString<char> >) [widget/windows/nsClipboard.cpp]
RepeatedlyTryGetData(IDataObject&, tagFORMATETC*, tagSTGMEDIUM*) [widget/windows/nsClipboard.cpp]
nsClipboard::FillSTGMedium(IDataObject*, unsigned int, tagFORMATETC*, tagSTGMEDIUM*, unsigned long) [widget/windows/nsClipboard.cpp]
nsClipboard::GetNativeDataOffClipboard(IDataObject*, unsigned int, unsigned int, char const*, void**, unsigned int*) [widget/windows/nsClipboard.cpp]
nsClipboard::GetDataFromDataObject(IDataObject*, unsigned int, nsIWidget*, nsITransferable*) [widget/windows/nsClipboard.cpp]
nsClipboard::GetNativeClipboardData(nsITransferable*, int) [widget/windows/nsClipboard.cpp]
nsBaseClipboard::GetData(nsITransferable*, int, mozilla::dom::WindowContext*) [widget/nsBaseClipboard.cpp]
...
readFromClipboard [chrome://browser/content/browser.js:3091:27]
isActive [resource:///modules/UrlbarProviderClipboard.sys.mjs:49:11]
js::RunScript
tryMethod [resource:///modules/UrlbarUtils.sys.mjs:2365:12]
start [resource:///modules/UrlbarProvidersManager.sys.mjs:405:14]
startQuery [resource:///modules/UrlbarProvidersManager.sys.mjs:215:19]
```

Back to Bug 1894614 Comment 0