Closed Bug 957064 Opened 6 years ago Closed 6 years ago

nsCacheService shuts down and doesn't reinitialize on synthetic APK install

Categories

(Firefox for Android :: Web Apps, defect, P3)

ARM
Android
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: myk, Unassigned)

References

Details

When WebappManager.askInstall triggers the native Android install dialog to install a synthetic APK, nsCacheService shuts down, and it doesn't reinitialize itself after the user finishes installing the APK and returns to Fennec, which means that it isn't possible to populate the appcache (or, perhaps, any appcache).  nsCacheService shouldn't shut down in this case, or it should reinitialize after the user returns to Fennec.

(Filing here because it isn't clear where the problem lies, although it may well end up being an appcache bug.)
Brian played around with stopping and starting the CacheService. Maybe he has some ideas.
(In reply to Myk Melez [:myk] [@mykmelez] from comment #0)
> When WebappManager.askInstall triggers the native Android install dialog to
> install a synthetic APK, nsCacheService shuts down, and it doesn't
> reinitialize itself

It should be doing that here: http://mxr.mozilla.org/mozilla-central/source/widget/android/nsAppShell.cpp#344

So if it's not reinitialized, either the APP_FOREGROUNDING event isn't getting triggered, or it is getting triggered but the reinitialization is broken. Can you determine whether we enter that block?

Until bug 105843 is fixed, we do need to shutdown/reinit nsCacheService to prevent the entire cache from being lost after an Android background kill.
Flags: needinfo?(myk)
Flags: needinfo?(myk)
Priority: -- → P3
Erm, this still needs info from me.
Flags: needinfo?(myk)
Hmm, I can't reproduce this anymore.  When I filed it, I was hitting one of the mInitialized assertions in nsCacheService.cpp when Fennec tried to populate an appcache, although I can't remember which one.  In any case, it isn't happening anymore, and the APP_FOREGROUNDING event is indeed getting triggered (and reinitializing nsCacheService when it does so).  Thus this now works for me.
Status: NEW → RESOLVED
Closed: 6 years ago
Flags: needinfo?(myk)
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.