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

Commit 59e19356 authored by Jordan Liu's avatar Jordan Liu Committed by android-build-merger
Browse files

Merge "Unlock mUiccCard access in UiccProfile" into pi-dev

am: 53a16737

Change-Id: Iea22647d6cffb5493d995e4c92211e545c05ff9e
parents 777477da 53a16737
Loading
Loading
Loading
Loading
+15 −15
Original line number Diff line number Diff line
@@ -98,7 +98,7 @@ public class UiccProfile extends IccCard {
            new UiccCardApplication[IccCardStatus.CARD_MAX_APPS];
    private Context mContext;
    private CommandsInterface mCi;
    private UiccCard mUiccCard; //parent
    private final UiccCard mUiccCard; //parent
    private CatService mCatService;
    private UiccCarrierPrivilegeRules mCarrierPrivilegeRules;
    private boolean mDisposed = false;
@@ -254,19 +254,20 @@ public class UiccProfile extends IccCard {
     * Dispose the UiccProfile.
     */
    public void dispose() {
        synchronized (mLock) {
        if (DBG) log("Disposing profile");

        // mUiccCard is outside of mLock in order to prevent deadlocking. This is safe because
        // EuiccCard#unregisterForEidReady handles its own lock
        if (mUiccCard instanceof EuiccCard) {
            ((EuiccCard) mUiccCard).unregisterForEidReady(mHandler);
        }
        synchronized (mLock) {
            unregisterAllAppEvents();
            unregisterCurrAppEvents();

            InstallCarrierAppUtils.hideAllNotifications(mContext);
            InstallCarrierAppUtils.unregisterPackageInstallReceiver(mContext);

            if (mUiccCard instanceof EuiccCard) {
                ((EuiccCard) mUiccCard).unregisterForEidReady(mHandler);
            }

            mCi.unregisterForOffOrNotAvailable(mHandler);
            mContext.unregisterReceiver(mReceiver);

@@ -864,8 +865,8 @@ public class UiccProfile extends IccCard {

    @Override
    public boolean hasIccCard() {
        synchronized (mLock) {
            if (mUiccCard != null && mUiccCard.getCardState()
        // mUiccCard is initialized in constructor, so won't be null
        if (mUiccCard.getCardState()
                != IccCardStatus.CardState.CARDSTATE_ABSENT) {
            return true;
        }
@@ -873,7 +874,6 @@ public class UiccProfile extends IccCard {
                + "ABSENT");
        return false;
    }
    }

    /**
     * Update the UiccProfile.