From 752cd922f7091dfd5401faf70dc248934a9dbb6d Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Sun, 23 Sep 2012 16:25:12 -0700 Subject: Always bind to DefaultContainerService as OWNER. When PackageManagerService deals with external storage, always bind to DefaultContainerService as USER_OWNER. This avoids binding to a stopped user, which would fail. Bug: 7203111 Change-Id: I8e303c7558e8b5cbe4fea0acc9a472b598df0caa --- core/java/android/content/pm/PackageCleanItem.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'core/java/android/content') diff --git a/core/java/android/content/pm/PackageCleanItem.java b/core/java/android/content/pm/PackageCleanItem.java index eea3b9c..b1896aa 100644 --- a/core/java/android/content/pm/PackageCleanItem.java +++ b/core/java/android/content/pm/PackageCleanItem.java @@ -21,10 +21,12 @@ import android.os.Parcelable; /** @hide */ public class PackageCleanItem { + public final int userId; public final String packageName; public final boolean andCode; - public PackageCleanItem(String packageName, boolean andCode) { + public PackageCleanItem(int userId, String packageName, boolean andCode) { + this.userId = userId; this.packageName = packageName; this.andCode = andCode; } @@ -37,7 +39,8 @@ public class PackageCleanItem { try { if (obj != null) { PackageCleanItem other = (PackageCleanItem)obj; - return packageName.equals(other.packageName) && andCode == other.andCode; + return userId == other.userId && packageName.equals(other.packageName) + && andCode == other.andCode; } } catch (ClassCastException e) { } @@ -47,6 +50,7 @@ public class PackageCleanItem { @Override public int hashCode() { int result = 17; + result = 31 * result + userId; result = 31 * result + packageName.hashCode(); result = 31 * result + (andCode ? 1 : 0); return result; @@ -57,6 +61,7 @@ public class PackageCleanItem { } public void writeToParcel(Parcel dest, int parcelableFlags) { + dest.writeInt(userId); dest.writeString(packageName); dest.writeInt(andCode ? 1 : 0); } @@ -73,6 +78,7 @@ public class PackageCleanItem { }; private PackageCleanItem(Parcel source) { + userId = source.readInt(); packageName = source.readString(); andCode = source.readInt() != 0; } -- cgit v1.1