New issue
Advanced search Search tips

Issue 777764 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Sep 27
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Background Fetch Registrations are not GCed when the Javascript object finishes

Project Member Reported by delph...@chromium.org, Oct 24 2017

Issue description

BackgroundFetchRegistrationNotifier uses set_connection_error_handler to try and detect when the Javascript object or Renderer hosting it closes.

This can detect when there's an error in the mojo binding but won't detect binding.Close(). This means that we will leak the object in many non-error cases.

One possibility would be to post a message expecting a response and never deliver that response. When the binding closes, this will trigger an error.

Alternatively there may be some other way to detect non-exceptional binding closes.
 

Comment 1 by peter@chromium.org, Oct 31 2017

How did you determine this? I've done some additional testing, and while the BackgroundFetchRegistration object is not garbage collected for quite some time after navigation, we seem to remove the observers just fine.
Owner: peter@chromium.org

Comment 3 by na...@chromium.org, Jan 15 2018

Status: Assigned (was: Untriaged)
Dan says he determined this while trying to write tests. Parking on Peter for now to advise next steps.
Labels: BlocksMVP
Status: WontFix (was: Assigned)
We've removed AddGarbageCollectionCallback in a recent refactor, so this isn't relevant anymore.

Sign in to add a comment