Closed Bug 1636740 Opened 5 years ago Closed 5 years ago

Dragging a URL from the URL bar stalls other software

Categories

(Core :: DOM: Copy & Paste and Drag & Drop, defect)

Desktop
Windows
defect

Tracking

()

VERIFIED FIXED
mozilla78
Tracking Status
firefox-esr68 --- unaffected
firefox76 --- wontfix
firefox77 --- verified
firefox78 --- verified

People

(Reporter: bugzilla, Assigned: emk)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:76.0) Gecko/20100101 Firefox/76.0

Steps to reproduce:

I dragged a URL from the Firefox URL bar to software like EverNote or EditPad Pro (certainly others, too). This freezes both software (Firefox and the other) and you have to kill one or the other from the Task manager to recover, but the URL is never drawn.

No problem when I draw it from Firefox to WordPad for example or from Brave to EverNote. This shows that the problem comes from Firefox, but it’s not in all situations.

Running Windows 7, Firefox 76, all 64 bits, EverNote 6.24.8919 or EditPad Pro 8.1.1.

Actual results:

Firefox and other software stall.

Expected results:

Copy the URL and not freeze both software.

OS: Unspecified → Windows
Hardware: Unspecified → Desktop

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: Untriaged → Address Bar

Because this bug's Severity is normal and has not been changed, and this bug's priority is -- (none,) indicating it has has not been previously triaged, the bug's Severity is being updated to -- (default, untriaged.)

Severity: normal → --

It actually is not related to the address bar, because I encounter it also when I drag a link from a web page to these pieces of software. EditPad freezes as soon as the link is on top of its window, not even when it is dropped.

Component: Address Bar → General

Thanks for the report maison !

I've managed to reproduce this issue by using Evernote 6.24.2 on Windows 10.64bit.

Notes:

  • It seems that if Firefox gets closed, evernote seems to unfreeze but this is not the case the other way around (Firefox seems to remain freezed if evernote gets closed).
  • This issues seems reproducible only on Windows platforms (I tried to reproduce this issue on macOS 10.14 and Ubuntu 18.04 but failed to do so).
  • Confirmed that this issue is encountered while trying to drop links from random websites in Evernote as well.

Affected Versions

  • Firefox 76.0 (BuildId:20200429185419)
  • Firefox 77.0b5 (BuildId:20200512163137)
  • Firefox 78.0a1 (BuildId:20200513215059)

Unaffected Versions

  • 68.8.0esr (BuildId:20200429190206)

This issue seems to be a regression:

Moving this to DOM: Drag & Drop for now. Please feel free to change this if necessary.

Severity: -- → S2
Status: UNCONFIRMED → NEW
Has Regression Range: --- → yes
Has STR: --- → yes
Component: General → DOM: Drag & Drop
Ever confirmed: true
Keywords: regression
Product: Firefox → Core
Regressed by: 1602615
Version: 76 Branch → Trunk

Hi Masatoshi!

It seems that Mozregression pointed out Bug 1602615 - Add a support for free-threaded IStream to handle Internet shortcuts. r=jmathies for causing this regression.

Can you please have a look?

Thanks!

Flags: needinfo?(VYV03354)

Confirmed.
Workaround: flip the browser.shell.shortcutFavicons pref to false.

If the drop target did not initiate an async operation, DoDragDrop will
block on the main thread until the data transfer completes. Although the
ObtainCachedIconFile callback itself will run off the main thread,
ObtainCachedIconFile will end up with calling NotifyIconObservers that
heavily relies on the main thread. So ObtainCachedIconFile will have no
chance to run the callback.

To complete the data transfer, however, the ObtainCachedIconFile callback
must signal the event object to unblock CMemStream::Read. Deadlock.

Assignee: nobody → VYV03354
Status: NEW → ASSIGNED
Flags: needinfo?(VYV03354)

Masatoshi, do you have a reviewer for this patch? Should we mark it as wontfix for 77?

Flags: needinfo?(VYV03354)

I already asked for review but I got no response yet.
ni for review ping.

Flags: needinfo?(jmathies)
Flags: needinfo?(aklotz)
Flags: needinfo?(VYV03354)
Flags: needinfo?(jmathies)
Flags: needinfo?(aklotz)
Pushed by VYV03354@nifty.ne.jp: https://hg.mozilla.org/integration/autoland/rev/2533428c72fb Block CMemStream::Read only if the drop target initiated an async operation. r=aklotz
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla78

Comment on attachment 9149340 [details]
Bug 1636740 - Block CMemStream::Read only if the drop target initiated an async operation. r?jmathies,aklotz,masayuki

Beta/Release Uplift Approval Request

  • User impact if declined: Some third-party apps and Firefox will freeze when the user drop a link from Firefox to those apps.
  • Is this code covered by automated tests?: No
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): This will change the behavior to "safe-side" to prevent deadlocks. Also, this change does not affect apps the support async operation such as File Explorer.
  • String changes made/needed: none
Attachment #9149340 - Flags: approval-mozilla-beta?
Flags: qe-verify+

I can confirm that this issue is fixed using Firefox 78.0a1 (BuildId:20200520213050) on Windows 10 64bit.

Firefox is stable now after dragging a URL from the address bar or random links from random webpages inside third party softwares.

Tested with:

  • Evernote 6.24.2
  • EditPad Lite 8.1.1
  • Microsoft Word 2016
  • Libre Office 6.4.4.2

Leaving a ni? on myself as a reminder to verify this once it lands in beta.

Status: RESOLVED → VERIFIED
Flags: needinfo?(emil.ghitta)

Comment on attachment 9149340 [details]
Bug 1636740 - Block CMemStream::Read only if the drop target initiated an async operation. r?jmathies,aklotz,masayuki

S2, minimal patch, verified on nightly, uplift approved for our last beta, thanks.

Attachment #9149340 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
QA Whiteboard: [qa-triaged]

This issue is verified fixed using Firefox 77.0b9 (BuildId:20200521224544) on Windows 10 64bit.

Tested with:

  • Evernote 6.24.2
  • EditPad Lite 8.1.1
  • Libre Office 6.4.4.2
Flags: qe-verify+
Flags: needinfo?(emil.ghitta)

I can confirm it as well. Thank you !

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: