Open Bug 1354522 Opened 7 years ago Updated 2 years ago

Prevent re-entrancy when invoking external protocol handlers like ms-windows-store

Categories

(Firefox :: File Handling, defect, P3)

55 Branch
defect

Tracking

()

People

(Reporter: jm.acuna73, Unassigned)

Details

(Keywords: csectype-dos, testcase)

User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36

Steps to reproduce:

1- access to the following url: http://createcharts.esy.es/window-store.html
2- click the button
3- the store window opens indefinitely: if I try to close it, it reopens.
If you press CTR + ALT + DEL the task window disappears immediately.


It is extremely difficult to get out of this situation.


Tested on Firefox 52.0.2 (32-bit) and Windows 8.1 Pro
Has STR: --- → yes
Component: Untriaged → File Handling
Summary: Window store opens automatically and indefinitely → Window store can opens unlimited
Thanks for the test case. This also crashes with a stack overflow:

https://crash-stats.mozilla.com/report/index/722b2088-44e3-425e-8d45-529621170505

The issue is that we allow other protocol handler calls to occur while Windows is spinning an inner event loop, waiting for the external application to be launched.

Setting "network.protocol-handler.warn-external.ms-windows-store" to true doesn't really help, as we start displaying a modal dialog repeatedly instead. We should probably just enqueue the requests one after the other, preventing recursion.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P3
Summary: Window store can opens unlimited → Prevent re-entrancy when invoking external protocol handlers like ms-windows-store
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.