diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2021-02-09 19:32:57 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2021-02-10 18:24:03 +0000 |
| commit | f09db5d6ea9d6eb9c5c4377a90e0d8f51d6f2296 (patch) | |
| tree | 4fdbd7078c7d21d763ee421cab76dd8f0d8030e2 | |
| parent | 1d28e962cd435c78fbbce1fc2d061f762f94d430 (diff) | |
| download | mullvadvpn-f09db5d6ea9d6eb9c5c4377a90e0d8f51d6f2296.tar.xz mullvadvpn-f09db5d6ea9d6eb9c5c4377a90e0d8f51d6f2296.zip | |
Use `StringValue` in `PluralResource` for escaping
| -rw-r--r-- | android/translations-converter/src/android.rs | 7 | ||||
| -rw-r--r-- | android/translations-converter/src/main.rs | 6 |
2 files changed, 8 insertions, 5 deletions
diff --git a/android/translations-converter/src/android.rs b/android/translations-converter/src/android.rs index 430da6efcf..8360b34f1d 100644 --- a/android/translations-converter/src/android.rs +++ b/android/translations-converter/src/android.rs @@ -172,7 +172,7 @@ pub struct PluralVariant { /// The string value #[serde(rename = "$value")] - pub string: String, + pub string: StringValue, } /// A valid quantity for a plural variant. @@ -225,7 +225,10 @@ impl PluralResource { /// the message and the quantity it should be used for. pub fn new(name: String, values: impl Iterator<Item = (PluralQuantity, String)>) -> Self { let items = values - .map(|(quantity, string)| PluralVariant { quantity, string }) + .map(|(quantity, string)| PluralVariant { + quantity, + string: StringValue::from(&*string), + }) .collect(); PluralResource { name, items } diff --git a/android/translations-converter/src/main.rs b/android/translations-converter/src/main.rs index 9aac19a2ee..c61d89edc0 100644 --- a/android/translations-converter/src/main.rs +++ b/android/translations-converter/src/main.rs @@ -85,7 +85,7 @@ fn main() { .items .iter() .find(|variant| variant.quantity == android::PluralQuantity::One) - .map(|variant| variant.string.clone()) + .map(|variant| variant.string.to_string()) .expect("Missing singular plural variant"); (singular, name) @@ -171,14 +171,14 @@ fn main() { .iter() .position(|plural| plural.quantity == android::PluralQuantity::One) .expect("Missing singular variant to use as msgid"); - let id = plural.items.remove(singular_position).string; + let id = plural.items.remove(singular_position).string.to_string(); let other_position = plural .items .iter() .position(|plural| plural.quantity == android::PluralQuantity::Other) .expect("Missing other variant to use as msgid_plural"); - let plural_id = plural.items.remove(other_position).string; + let plural_id = plural.items.remove(other_position).string.to_string(); gettext::MsgEntry { id, |
