Commit 1826fb95 authored by Devon Carew's avatar Devon Carew

Merge pull request #2964 from devoncarew/fix_doctor_exception

fix an exception from flutter doctor
parents 2ee15bfd 4ac18681
......@@ -140,7 +140,7 @@ String _doctorText() {
appContext.runInZone(() => doctor.diagnose());
return logger.statusText;
} catch (error) {
return '';
} catch (error, trace) {
return 'encountered exception: $error\n$trace';
}
}
......@@ -31,17 +31,21 @@ class XCode {
_xcodeVersionText = runSync(<String>['xcodebuild', '-version']).replaceAll('\n', ', ');
try {
printTrace('xcrun clang');
ProcessResult result = Process.runSync('/usr/bin/xcrun', <String>['clang']);
if (result.stdout != null && result.stdout.contains('license'))
_eulaSigned = false;
else if (result.stderr != null && result.stderr.contains('license'))
_eulaSigned = false;
else
_eulaSigned = true;
} catch (error) {
if (!xcodeVersionRegex.hasMatch(_xcodeVersionText)) {
_isInstalled = false;
} else {
try {
printTrace('xcrun clang');
ProcessResult result = Process.runSync('/usr/bin/xcrun', <String>['clang']);
if (result.stdout != null && result.stdout.contains('license'))
_eulaSigned = false;
else if (result.stderr != null && result.stderr.contains('license'))
_eulaSigned = false;
else
_eulaSigned = true;
} catch (error) {
}
}
} catch (error) {
_isInstalled = false;
......@@ -66,10 +70,13 @@ class XCode {
String _xcodeVersionText;
String get xcodeVersionText => _xcodeVersionText;
final RegExp xcodeVersionRegex = new RegExp(r'Xcode ([0-9.]+)');
bool get xcodeVersionSatisfactory {
RegExp regex = new RegExp(r'Xcode ([0-9.]+)');
if (!xcodeVersionRegex.hasMatch(xcodeVersionText))
return false;
String version = regex.firstMatch(xcodeVersionText).group(1);
String version = xcodeVersionRegex.firstMatch(xcodeVersionText).group(1);
List<String> components = version.split('.');
int major = int.parse(components[0]);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment