am 6a98f8d9: Merge change 23499 into donut
Merge commit '6a98f8d93e4ddd407baad8d9b7481a892001d281' into eclair
* commit '6a98f8d93e4ddd407baad8d9b7481a892001d281':
Fix content provider
diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java
index 867d8a6..c9452d3 100644
--- a/services/java/com/android/server/am/ActivityManagerService.java
+++ b/services/java/com/android/server/am/ActivityManagerService.java
@@ -7387,6 +7387,8 @@
// 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 {
@@ -7497,6 +7499,8 @@
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 {
@@ -7552,7 +7556,7 @@
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);
@@ -7563,11 +7567,11 @@
}
//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);