diff --git a/packages/flutter_tools/lib/src/doctor.dart b/packages/flutter_tools/lib/src/doctor.dart index 06d2eb69447..68db67629da 100644 --- a/packages/flutter_tools/lib/src/doctor.dart +++ b/packages/flutter_tools/lib/src/doctor.dart @@ -34,6 +34,14 @@ String osName() { final ProcessResult result = processManager.runSync(['ver'], runInShell: true); if (result.exitCode == 0) return result.stdout.trim(); + } else if (platform.isMacOS) { + final List results = [ + processManager.runSync(["sw_vers", "-productName"]), + processManager.runSync(["sw_vers", "-productVersion"]), + processManager.runSync(["sw_vers", "-buildVersion"]), + ]; + if (results.every((ProcessResult result) => result.exitCode == 0)) + return "${results[0].stdout.trim()} ${results[1].stdout.trim()} ${results[2].stdout.trim()}"; } final String os = platform.operatingSystem; return _osNames.containsKey(os) ? _osNames[os] : os;