diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigurationResolver.java b/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigurationResolver.java
index 40f9805..b918b88 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigurationResolver.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/ConfigurationResolver.java
@@ -494,14 +494,17 @@
 
   private static BuildOptions addDefaultStarlarkOptions(
       BuildOptions fromOptions, ImmutableMap<Label, Object> buildSettingDefaults) {
-    BuildOptions.Builder optionsWithDefaults = fromOptions.toBuilder();
+    BuildOptions.Builder optionsWithDefaults = null;
     for (Map.Entry<Label, Object> buildSettingDefault : buildSettingDefaults.entrySet()) {
       Label buildSetting = buildSettingDefault.getKey();
-      if (!optionsWithDefaults.contains(buildSetting)) {
+      if (!fromOptions.getStarlarkOptions().containsKey(buildSetting)) {
+        if (optionsWithDefaults == null) {
+          optionsWithDefaults = fromOptions.toBuilder();
+        }
         optionsWithDefaults.addStarlarkOption(buildSetting, buildSettingDefault.getValue());
       }
     }
-    return optionsWithDefaults.build();
+    return optionsWithDefaults == null ? fromOptions : optionsWithDefaults.build();
   }
 
   /**
