Fix a race in AMS.getContentProviderImpl().
If the provider process has just been killed by AM but appDiedLocked()
hasn't been called yet, this method would wait on the wrong
ContentProviderRecord.
Bug: 110030490
Test: Manual test with the following test code added after
"boolean providerRunning = false".
if (cpr != null && cpr.proc != null) {
final String prop = "debug.am.provider.fake-kill." + cpr.proc.processName;
if (SystemProperties.getBoolean(prop, false)) {
cpr.proc.kill("fake-kill", true);
SystemProperties.set(prop, "0");
}
}
Change-Id: I2c4ba1e87c2d47f2013befff10c49b3dc337a9a7
Loading
Please register or sign in to comment