Merge change 23499 into donut
* changes: Fix content provider
This commit is contained in:
@@ -7325,6 +7325,8 @@ public final class ActivityManagerService extends ActivityManagerNative implemen
|
||||
// In this case the provider is a single instance, so we can
|
||||
// return it right away.
|
||||
if (r != null) {
|
||||
if(true) Log.v(TAG, "Adding content provider requested by "+
|
||||
r.processName +" from process "+cpr.info.processName);
|
||||
r.conProviders.add(cpr);
|
||||
cpr.clients.add(r);
|
||||
} else {
|
||||
@@ -7435,6 +7437,8 @@ public final class ActivityManagerService extends ActivityManagerNative implemen
|
||||
mProvidersByName.put(name, cpr);
|
||||
|
||||
if (r != null) {
|
||||
if(true) Log.v(TAG, "Adding content provider requested by "+
|
||||
r.processName +" from process "+cpr.info.processName);
|
||||
r.conProviders.add(cpr);
|
||||
cpr.clients.add(r);
|
||||
} else {
|
||||
@@ -7490,7 +7494,7 @@ public final class ActivityManagerService extends ActivityManagerNative implemen
|
||||
ContentProviderRecord cpr = (ContentProviderRecord)mProvidersByName.get(name);
|
||||
if(cpr == null) {
|
||||
//remove from mProvidersByClass
|
||||
if(localLOGV) Log.v(TAG, name+" content provider not found in providers list");
|
||||
if(true) Log.v(TAG, name+" content provider not found in providers list");
|
||||
return;
|
||||
}
|
||||
final ProcessRecord r = getRecordForAppLocked(caller);
|
||||
@@ -7501,11 +7505,11 @@ public final class ActivityManagerService extends ActivityManagerNative implemen
|
||||
}
|
||||
//update content provider record entry info
|
||||
ContentProviderRecord localCpr = (ContentProviderRecord) mProvidersByClass.get(cpr.info.name);
|
||||
if(localLOGV) Log.v(TAG, "Removing content provider requested by "+
|
||||
r.info.processName+" from process "+localCpr.appInfo.processName);
|
||||
if(localCpr.appInfo.processName == r.info.processName) {
|
||||
if(true) Log.v(TAG, "Removing content provider requested by "+
|
||||
r.processName+" from process "+localCpr.info.processName);
|
||||
if(localCpr.app == r) {
|
||||
//should not happen. taken care of as a local provider
|
||||
if(localLOGV) Log.v(TAG, "local provider doing nothing Ignoring other names");
|
||||
if(true) Log.v(TAG, "local provider doing nothing Ignoring other names");
|
||||
return;
|
||||
} else {
|
||||
localCpr.clients.remove(r);
|
||||
|
||||
Reference in New Issue
Block a user