Loading services/java/com/android/server/PackageManagerService.java +25 −43 Original line number Diff line number Diff line Loading @@ -188,6 +188,8 @@ class PackageManagerService extends IPackageManager.Stub { "com.android.defcontainer", "com.android.defcontainer.DefaultContainerService"); static final String mTempContainerPrefix = "smdl2tmp"; final HandlerThread mHandlerThread = new HandlerThread("PackageManager", Process.THREAD_PRIORITY_BACKGROUND); final PackageHandler mHandler; Loading Loading @@ -9549,47 +9551,27 @@ class PackageManagerService extends IPackageManager.Stub { } } static String getTempContainerId() { String prefix = "smdl2tmp"; /* package */ static String getTempContainerId() { int tmpIdx = 1; String list[] = PackageHelper.getSecureContainerList(); if (list != null) { int idx = 0; int idList[] = new int[MAX_CONTAINERS]; boolean neverFound = true; for (String name : list) { // Ignore null entries if (name == null) { continue; } int sidx = name.indexOf(prefix); if (sidx == -1) { // Not a temp file. just ignore for (final String name : list) { // Ignore null and non-temporary container entries if (name == null || !name.startsWith(mTempContainerPrefix)) { continue; } String subStr = name.substring(sidx + prefix.length()); idList[idx] = -1; if (subStr != null) { String subStr = name.substring(mTempContainerPrefix.length()); try { int cid = Integer.parseInt(subStr); idList[idx++] = cid; neverFound = false; } catch (NumberFormatException e) { } } } if (!neverFound) { // Sort idList Arrays.sort(idList); for (int j = 1; j <= idList.length; j++) { if (idList[j-1] != j) { tmpIdx = j; break; if (cid >= tmpIdx) { tmpIdx = cid + 1; } } catch (NumberFormatException e) { } } } return prefix + tmpIdx; return mTempContainerPrefix + tmpIdx; } /* Loading Loading
services/java/com/android/server/PackageManagerService.java +25 −43 Original line number Diff line number Diff line Loading @@ -188,6 +188,8 @@ class PackageManagerService extends IPackageManager.Stub { "com.android.defcontainer", "com.android.defcontainer.DefaultContainerService"); static final String mTempContainerPrefix = "smdl2tmp"; final HandlerThread mHandlerThread = new HandlerThread("PackageManager", Process.THREAD_PRIORITY_BACKGROUND); final PackageHandler mHandler; Loading Loading @@ -9549,47 +9551,27 @@ class PackageManagerService extends IPackageManager.Stub { } } static String getTempContainerId() { String prefix = "smdl2tmp"; /* package */ static String getTempContainerId() { int tmpIdx = 1; String list[] = PackageHelper.getSecureContainerList(); if (list != null) { int idx = 0; int idList[] = new int[MAX_CONTAINERS]; boolean neverFound = true; for (String name : list) { // Ignore null entries if (name == null) { continue; } int sidx = name.indexOf(prefix); if (sidx == -1) { // Not a temp file. just ignore for (final String name : list) { // Ignore null and non-temporary container entries if (name == null || !name.startsWith(mTempContainerPrefix)) { continue; } String subStr = name.substring(sidx + prefix.length()); idList[idx] = -1; if (subStr != null) { String subStr = name.substring(mTempContainerPrefix.length()); try { int cid = Integer.parseInt(subStr); idList[idx++] = cid; neverFound = false; } catch (NumberFormatException e) { } } } if (!neverFound) { // Sort idList Arrays.sort(idList); for (int j = 1; j <= idList.length; j++) { if (idList[j-1] != j) { tmpIdx = j; break; if (cid >= tmpIdx) { tmpIdx = cid + 1; } } catch (NumberFormatException e) { } } } return prefix + tmpIdx; return mTempContainerPrefix + tmpIdx; } /* Loading