diff --git a/src/java/com/android/internal/telephony/SubscriptionInfoUpdater.java b/src/java/com/android/internal/telephony/SubscriptionInfoUpdater.java
index d56aee8..fd30b8e4 100644
--- a/src/java/com/android/internal/telephony/SubscriptionInfoUpdater.java
+++ b/src/java/com/android/internal/telephony/SubscriptionInfoUpdater.java
@@ -699,6 +699,13 @@
     @VisibleForTesting(visibility = VisibleForTesting.Visibility.PRIVATE)
     public void updateEmbeddedSubscriptions(List<Integer> cardIds,
             @Nullable UpdateEmbeddedSubsCallback callback) {
+        // Do nothing if eUICCs are disabled. (Previous entries may remain in the cache, but they
+        // are filtered out of list calls as long as EuiccManager.isEnabled returns false).
+        if (!mEuiccManager.isEnabled()) {
+            callback.run(false /* hasChanges */);
+            return;
+        }
+
         mBackgroundHandler.post(() -> {
             List<GetEuiccProfileInfoListResult> results = new ArrayList<>();
             for (int cardId : cardIds) {
@@ -735,11 +742,6 @@
      */
     private boolean updateEmbeddedSubscriptionsCache(GetEuiccProfileInfoListResult result) {
         if (DBG) logd("updateEmbeddedSubscriptionsCache");
-        // Do nothing if eUICCs are disabled. (Previous entries may remain in the cache, but they
-        // are filtered out of list calls as long as EuiccManager.isEnabled returns false).
-        if (!mEuiccManager.isEnabled()) {
-            return false;
-        }
 
         if (result == null) {
             // IPC to the eUICC controller failed.
