Closed Bug 1369354 Opened 3 years ago Closed 3 years ago

Hang when loading blob URLs from indexedDB

Categories

(Core :: DOM: File, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla55
Tracking Status
firefox55 --- fixed

People

(Reporter: darktrojan, Assigned: baku)

Details

Attachments

(2 files)

Attached file test.zip
As I mentioned on IRC, I think this is to do with bug 1366316. It also seems to be related to webExtensions.

I've attached a basic extension which causes the hang for me. You should be able to load this through about:debugging then get to moz-extension://something/test.html. Choose a picture with the file input and watch it hang.
Assignee: nobody → amarchesini
Assignee: amarchesini → nobody
Flags: needinfo?(amarchesini)
Attached patch deadlock.patchSplinter Review
Assignee: nobody → amarchesini
Flags: needinfo?(amarchesini)
Attachment #8873385 - Flags: review?(bugs)
Comment on attachment 8873385 [details] [diff] [review]
deadlock.patch

Review of attachment 8873385 [details] [diff] [review]:
-----------------------------------------------------------------

::: dom/file/ipc/IPCBlobInputStreamStorage.cpp
@@ +126,5 @@
> +
> +  nsCOMPtr<nsIInputStream> inputStream;
> +
> +  // NS_CloneInputStream cannot be called when the mutex is locked because it
> +  // can, recursively call GetStream() in case the child lives on the parent

child actor
Attachment #8873385 - Flags: review?(bugs) → review+
Pushed by amarchesini@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/7ba5835bb00f
Avoid deadlock in IPCBlobInputStreamStorage::GetStream when IPCBlobInputStreamChild actor is used on the parent process, r=smaug
https://hg.mozilla.org/mozilla-central/rev/7ba5835bb00f
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
You need to log in before you can comment on or make changes to this bug.