Unverified Commit 026ee975 authored by Jenn Magder's avatar Jenn Magder Committed by GitHub

Allow null config values (#79917)

parent e54e33c6
...@@ -69,7 +69,7 @@ class AndroidSdk { ...@@ -69,7 +69,7 @@ class AndroidSdk {
String? findAndroidHomeDir() { String? findAndroidHomeDir() {
String? androidHomeDir; String? androidHomeDir;
if (globals.config.containsKey('android-sdk')) { if (globals.config.containsKey('android-sdk')) {
androidHomeDir = globals.config.getValue('android-sdk') as String; androidHomeDir = globals.config.getValue('android-sdk') as String?;
} else if (globals.platform.environment.containsKey(kAndroidHome)) { } else if (globals.platform.environment.containsKey(kAndroidHome)) {
androidHomeDir = globals.platform.environment[kAndroidHome]; androidHomeDir = globals.platform.environment[kAndroidHome];
} else if (globals.platform.environment.containsKey(kAndroidSdkRoot)) { } else if (globals.platform.environment.containsKey(kAndroidSdkRoot)) {
......
...@@ -220,7 +220,7 @@ class AndroidStudio implements Comparable<AndroidStudio> { ...@@ -220,7 +220,7 @@ class AndroidStudio implements Comparable<AndroidStudio> {
/// Locates the newest, valid version of Android Studio. /// Locates the newest, valid version of Android Studio.
static AndroidStudio? latestValid() { static AndroidStudio? latestValid() {
final String configuredStudio = globals.config.getValue('android-studio-dir') as String; final String? configuredStudio = globals.config.getValue('android-studio-dir') as String?;
if (configuredStudio != null) { if (configuredStudio != null) {
String configuredStudioPath = configuredStudio; String configuredStudioPath = configuredStudio;
if (globals.platform.isMacOS && !configuredStudioPath.endsWith('Contents')) { if (globals.platform.isMacOS && !configuredStudioPath.endsWith('Contents')) {
...@@ -283,7 +283,7 @@ class AndroidStudio implements Comparable<AndroidStudio> { ...@@ -283,7 +283,7 @@ class AndroidStudio implements Comparable<AndroidStudio> {
)); ));
} }
final String configuredStudioDir = globals.config.getValue('android-studio-dir') as String; final String? configuredStudioDir = globals.config.getValue('android-studio-dir') as String?;
if (configuredStudioDir != null) { if (configuredStudioDir != null) {
FileSystemEntity configuredStudio = globals.fs.file(configuredStudioDir); FileSystemEntity configuredStudio = globals.fs.file(configuredStudioDir);
if (configuredStudio.basename == 'Contents') { if (configuredStudio.basename == 'Contents') {
...@@ -377,7 +377,7 @@ class AndroidStudio implements Comparable<AndroidStudio> { ...@@ -377,7 +377,7 @@ class AndroidStudio implements Comparable<AndroidStudio> {
} }
} }
final String configuredStudioDir = globals.config.getValue('android-studio-dir') as String; final String? configuredStudioDir = globals.config.getValue('android-studio-dir') as String?;
if (configuredStudioDir != null && !_hasStudioAt(configuredStudioDir)) { if (configuredStudioDir != null && !_hasStudioAt(configuredStudioDir)) {
studios.add(AndroidStudio(configuredStudioDir, studios.add(AndroidStudio(configuredStudioDir,
configured: configuredStudioDir)); configured: configuredStudioDir));
......
...@@ -104,9 +104,9 @@ class NoAndroidStudioValidator extends DoctorValidator { ...@@ -104,9 +104,9 @@ class NoAndroidStudioValidator extends DoctorValidator {
Future<ValidationResult> validate() async { Future<ValidationResult> validate() async {
final List<ValidationMessage> messages = <ValidationMessage>[]; final List<ValidationMessage> messages = <ValidationMessage>[];
final String cfgAndroidStudio = _config.getValue( final String? cfgAndroidStudio = _config.getValue(
'android-studio-dir', 'android-studio-dir',
) as String; ) as String?;
if (cfgAndroidStudio != null) { if (cfgAndroidStudio != null) {
messages.add(ValidationMessage.error( messages.add(ValidationMessage.error(
_userMessages.androidStudioMissing(cfgAndroidStudio), _userMessages.androidStudioMissing(cfgAndroidStudio),
......
...@@ -62,7 +62,7 @@ class Config { ...@@ -62,7 +62,7 @@ class Config {
} }
try { try {
ErrorHandlingFileSystem.noExitOnFailure(() { ErrorHandlingFileSystem.noExitOnFailure(() {
_values = castStringKeyedMap(json.decode(_file.readAsStringSync())) ?? <String, dynamic>{}; _values = castStringKeyedMap(json.decode(_file.readAsStringSync())) as Map<String, Object>? ?? <String, Object>{};
}); });
} on FormatException { } on FormatException {
_logger _logger
...@@ -110,13 +110,13 @@ class Config { ...@@ -110,13 +110,13 @@ class Config {
String get configPath => _file.path; String get configPath => _file.path;
Map<String, dynamic> _values = <String, dynamic>{}; Map<String, Object> _values = <String, Object>{};
Iterable<String> get keys => _values.keys; Iterable<String> get keys => _values.keys;
bool containsKey(String key) => _values.containsKey(key); bool containsKey(String key) => _values.containsKey(key);
dynamic getValue(String key) => _values[key]; Object? getValue(String key) => _values[key];
void setValue(String key, Object value) { void setValue(String key, Object value) {
_values[key] = value; _values[key] = value;
......
...@@ -223,7 +223,7 @@ Future<String?> _chooseSigningIdentity( ...@@ -223,7 +223,7 @@ Future<String?> _chooseSigningIdentity(
} }
if (validCodeSigningIdentities.length > 1) { if (validCodeSigningIdentities.length > 1) {
final String savedCertChoice = config.getValue('ios-signing-cert') as String; final String? savedCertChoice = config.getValue('ios-signing-cert') as String?;
if (savedCertChoice != null) { if (savedCertChoice != null) {
if (validCodeSigningIdentities.contains(savedCertChoice)) { if (validCodeSigningIdentities.contains(savedCertChoice)) {
......
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