From 3280c6af2e4155b6bf018e9a423d0aaddc530e1f Mon Sep 17 00:00:00 2001 From: tiann Date: Wed, 4 Jan 2023 17:26:21 +0800 Subject: [PATCH] ksud: fix encoding error --- userspace/ksud/Cargo.lock | 1 + userspace/ksud/Cargo.toml | 1 + userspace/ksud/src/module.rs | 8 +++++--- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/userspace/ksud/Cargo.lock b/userspace/ksud/Cargo.lock index a6b36581..05b59f93 100644 --- a/userspace/ksud/Cargo.lock +++ b/userspace/ksud/Cargo.lock @@ -421,6 +421,7 @@ dependencies = [ "anyhow", "clap", "const_format", + "encoding", "env_logger", "java-properties", "log", diff --git a/userspace/ksud/Cargo.toml b/userspace/ksud/Cargo.toml index 3c1ec3eb..ce675673 100644 --- a/userspace/ksud/Cargo.toml +++ b/userspace/ksud/Cargo.toml @@ -19,6 +19,7 @@ env_logger = "0.10.0" serde = { version = "1.0" } serde_json = "1.0" regex = "1.5.4" +encoding = "0.2.33" [profile.release] strip = true diff --git a/userspace/ksud/src/module.rs b/userspace/ksud/src/module.rs index 3aa50f26..757a94c0 100644 --- a/userspace/ksud/src/module.rs +++ b/userspace/ksud/src/module.rs @@ -374,9 +374,11 @@ fn do_list_modules(path: &str) -> Vec> { continue; }; let mut module_prop_map = HashMap::new(); - let result = PropertiesIter::new(Cursor::new(content)).read_into(|k, v| { - module_prop_map.insert(k, v); - }); + let encoding = encoding::all::UTF_8; + let result = + PropertiesIter::new_with_encoding(Cursor::new(content), encoding).read_into(|k, v| { + module_prop_map.insert(k, v); + }); // Add enabled, update, remove flags let enabled = !path.join(defs::DISABLE_FILE_NAME).exists();