Fix xcode build settings parsing (#14672)
diff --git a/packages/flutter_tools/lib/src/ios/xcodeproj.dart b/packages/flutter_tools/lib/src/ios/xcodeproj.dart
index 47b3d5c..1bc8e79 100644
--- a/packages/flutter_tools/lib/src/ios/xcodeproj.dart
+++ b/packages/flutter_tools/lib/src/ios/xcodeproj.dart
@@ -12,7 +12,7 @@
import '../cache.dart';
import '../globals.dart';
-final RegExp _settingExpr = new RegExp(r'(\w+)\s*=\s*(\S+)');
+final RegExp _settingExpr = new RegExp(r'(\w+)\s*=\s*(.*)$');
final RegExp _varExpr = new RegExp(r'\$\((.*)\)');
String flutterFrameworkDir(BuildMode mode) {
@@ -77,9 +77,10 @@
Map<String, String> parseXcodeBuildSettings(String showBuildSettingsOutput) {
final Map<String, String> settings = <String, String>{};
- for (String line in showBuildSettingsOutput.split('\n').where(_settingExpr.hasMatch)) {
- final Match match = _settingExpr.firstMatch(line);
- settings[match[1]] = match[2];
+ for (Match match in showBuildSettingsOutput.split('\n').map(_settingExpr.firstMatch)) {
+ if (match != null) {
+ settings[match[1]] = match[2];
+ }
}
return settings;
}