Work around xcodebuild's undocumented freeze when -showBuildSettings is used with -allowProvisioning* (#14684)
diff --git a/packages/flutter_tools/lib/src/ios/mac.dart b/packages/flutter_tools/lib/src/ios/mac.dart
index a166b61..621186d 100644
--- a/packages/flutter_tools/lib/src/ios/mac.dart
+++ b/packages/flutter_tools/lib/src/ios/mac.dart
@@ -357,7 +357,18 @@
// Run -showBuildSettings again but with the exact same parameters as the build.
final Map<String, String> buildSettings = parseXcodeBuildSettings(runCheckedSync(
- new List<String>.from(buildCommands)..add('-showBuildSettings'),
+ (new List<String>
+ .from(buildCommands)
+ ..add('-showBuildSettings'))
+ // Undocumented behaviour: xcodebuild craps out if -showBuildSettings
+ // is used together with -allowProvisioningUpdates or
+ // -allowProvisioningDeviceRegistration and freezes forever.
+ .where((String buildCommand) {
+ return !const <String>[
+ '-allowProvisioningUpdates',
+ '-allowProvisioningDeviceRegistration',
+ ].contains(buildCommand);
+ }),
workingDirectory: app.appDirectory,
));