diff options
| author | Jonathan Hamilton <jtrhamilton@gmail.com> | 2017-08-23 08:36:33 -0700 |
|---|---|---|
| committer | Jonathan Hamilton <jtrhamilton@gmail.com> | 2017-08-23 15:50:21 -0700 |
| commit | 5a361fd6b3b95e1688eeda0d18e0774e0106ad5d (patch) | |
| tree | f42f3d2c3983ffe5f0d71e15b4a43a0c1f5e30f1 /Source/Android/app/src/main/java | |
| parent | 935c1da35769348d4053eca29c8531e97c510139 (diff) | |
Make the Android settings parser a bit more robust
It would fail on lines line "Value =" - IE a value set to emptystring.
This would cause the app to crash when trying to open the corresponding
settings window.
Diffstat (limited to 'Source/Android/app/src/main/java')
| -rw-r--r-- | Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/SettingsFile.java | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/SettingsFile.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/SettingsFile.java index 205fffce6c..96f40c3296 100644 --- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/SettingsFile.java +++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/utils/SettingsFile.java @@ -274,10 +274,13 @@ public final class SettingsFile current = sectionFromLine(line); sections.put(current.getName(), current); } - else if ((current != null) && line.contains("=")) + else if ((current != null)) { Setting setting = settingFromLine(current, line, fileName); - current.putSetting(setting); + if (setting != null) + { + current.putSetting(setting); + } } } } @@ -381,6 +384,12 @@ public final class SettingsFile { String[] splitLine = line.split("="); + if (splitLine.length != 2) + { + Log.warning("Skipping invalid config line \"" + line + "\""); + return null; + } + String key = splitLine[0].trim(); String value = splitLine[1].trim(); |
