summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-08-19 15:38:57 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-08-19 15:38:57 +0000
commit933c0ed713b7d06f0118c8127af80f0c0f11e4e1 (patch)
tree244e5f6a2eb5b8dd39767a7394cb5e8aee3f14e3 /android
parentcd6167ceaf3df523ae6774553f18ee21a15fdacd (diff)
downloadmullvadvpn-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.rs26
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();