diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-08-19 15:38:57 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-08-19 15:38:57 +0000 |
| commit | 933c0ed713b7d06f0118c8127af80f0c0f11e4e1 (patch) | |
| tree | 244e5f6a2eb5b8dd39767a7394cb5e8aee3f14e3 /android | |
| parent | cd6167ceaf3df523ae6774553f18ee21a15fdacd (diff) | |
| download | mullvadvpn-933c0ed713b7d06f0118c8127af80f0c0f11e4e1.tar.xz mullvadvpn-933c0ed713b7d06f0118c8127af80f0c0f11e4e1.zip | |
Panic if string resource has more than one ID
Diffstat (limited to 'android')
| -rw-r--r-- | android/translations-converter/src/main.rs | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/android/translations-converter/src/main.rs b/android/translations-converter/src/main.rs index 6b8a8af024..05b73500ab 100644 --- a/android/translations-converter/src/main.rs +++ b/android/translations-converter/src/main.rs @@ -38,14 +38,26 @@ fn main() { string_resources.normalize(); - let (known_urls, known_strings): (HashMap<_, _>, _) = string_resources - .into_iter() - .map(|string| { - let android_id = string.name; + let mut known_urls = HashMap::with_capacity(string_resources.len()); + let mut known_strings = HashMap::with_capacity(string_resources.len()); - (string.value, android_id) - }) - .partition(|(string_value, _)| string_value.starts_with("https://mullvad.net/en/")); + for string in string_resources { + let destination = if string.value.starts_with("https://mullvad.net/en/") { + &mut known_urls + } else { + &mut known_strings + }; + + if destination + .insert(string.value.clone(), string.name) + .is_some() + { + panic!( + "String {:?} has more than one Android resource ID", + string.value + ); + } + } let mut missing_translations = known_strings.clone(); |
