Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f8cfb309 authored by Alex Buynytskyy's avatar Alex Buynytskyy
Browse files

Refine last static lib version lookup.

Bug: 213129909
Fixes: 213129909
Test: presubmit
Change-Id: I9d7e68b53629396cb7cebbbf509c4eb207f13add
parent c2dc611a
Loading
Loading
Loading
Loading
+16 −19
Original line number Diff line number Diff line
@@ -944,14 +944,13 @@ final class InstallPackageHelper {
                    createdAppId.put(packageName, optimisticallyRegisterAppId(result));
                    versionInfos.put(result.mPkgSetting.getPkg().getPackageName(),
                            mPm.getSettingsVersionForPackage(result.mPkgSetting.getPkg()));
                    if (result.mStaticSharedLibraryInfo != null
                            || result.mSdkSharedLibraryInfo != null) {
                        final PackageSetting sharedLibLatestVersionSetting =
                                mSharedLibraries.getSharedLibLatestVersionSetting(result);
                        if (sharedLibLatestVersionSetting != null) {
                    if (result.mStaticSharedLibraryInfo != null) {
                        final PackageSetting staticSharedLibLatestVersionSetting =
                                mSharedLibraries.getStaticSharedLibLatestVersionSetting(result);
                        if (staticSharedLibLatestVersionSetting != null) {
                            lastStaticSharedLibSettings.put(
                                    result.mPkgSetting.getPkg().getPackageName(),
                                    sharedLibLatestVersionSetting);
                                    staticSharedLibLatestVersionSetting);
                        }
                    }
                } catch (PackageManagerException e) {
@@ -3558,22 +3557,20 @@ final class InstallPackageHelper {
                boolean appIdCreated = false;
                try {
                    final String pkgName = scanResult.mPkgSetting.getPackageName();
                    final Map<String, ReconciledPackage> reconcileResult =
                            ReconcilePackageUtils.reconcilePackages(
                                    new ReconcileRequest(
                    final ReconcileRequest reconcileRequest = new ReconcileRequest(
                            Collections.singletonMap(pkgName, scanResult),
                                            mSharedLibraries.getAll(),
                                            mPm.mPackages,
                                            Collections.singletonMap(
                                                    pkgName,
                                                    mPm.getSettingsVersionForPackage(
                                                            parsedPackage)),
                                            Collections.singletonMap(pkgName, mSharedLibraries
                                                    .getSharedLibLatestVersionSetting(scanResult))),
                            mSharedLibraries.getAll(), mPm.mPackages,
                            Collections.singletonMap(pkgName,
                                    mPm.getSettingsVersionForPackage(parsedPackage)),
                            Collections.singletonMap(pkgName,
                                    mSharedLibraries.getStaticSharedLibLatestVersionSetting(
                                            scanResult)));
                    final Map<String, ReconciledPackage> reconcileResult =
                            ReconcilePackageUtils.reconcilePackages(reconcileRequest,
                                    mPm.mSettings.getKeySetManagerService(), mPm.mInjector);
                    appIdCreated = optimisticallyRegisterAppId(scanResult);
                    commitReconciledScanResultLocked(
                            reconcileResult.get(pkgName), mPm.mUserManager.getUserIds());
                    commitReconciledScanResultLocked(reconcileResult.get(pkgName),
                            mPm.mUserManager.getUserIds());
                } catch (PackageManagerException e) {
                    if (appIdCreated) {
                        cleanUpAppIdCreation(scanResult);
+1 −1
Original line number Diff line number Diff line
@@ -381,7 +381,7 @@ public final class SharedLibrariesImpl implements SharedLibrariesRead, Watchable
     * @return The package setting that represents the latest version of shared library info.
     */
    @Nullable
    PackageSetting getSharedLibLatestVersionSetting(@NonNull ScanResult scanResult) {
    PackageSetting getStaticSharedLibLatestVersionSetting(@NonNull ScanResult scanResult) {
        PackageSetting sharedLibPackage = null;
        synchronized (mPm.mLock) {
            final SharedLibraryInfo latestSharedLibraVersionLPr =