From 0b787789878dc1fbadab68819172305730641360 Mon Sep 17 00:00:00 2001 From: Stephen Seo Date: Tue, 26 Jul 2022 21:18:59 +0900 Subject: [PATCH] Fixes to builtin::BattInfo usage --- src/args.rs | 2 +- src/main.rs | 15 +++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/args.rs b/src/args.rs index e99c145..6ce46b1 100644 --- a/src/args.rs +++ b/src/args.rs @@ -56,7 +56,7 @@ pub fn print_usage() { .ok(); stderr_handle .write_all( - b" --acpi-builtin\t\t\t\tUse \"acpi -b\" built-in fetching (battery info, with color)\n", + b" --acpi-builtin\t\t\t\t\tUse \"acpi -b\" built-in fetching (battery info, with color)\n", ) .ok(); stderr_handle diff --git a/src/main.rs b/src/main.rs index 25204b8..624c91d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -74,10 +74,8 @@ fn main() { } let mut batt_info: builtin::BattInfo = Default::default(); - { - let mut temp_object = SwaybarObject::new("battinfo".to_owned()); - batt_info.update(&mut temp_object).ok(); - } + let batt_info_enabled: bool = args_result.map.contains_key("acpi-builtin"); + let mut batt_info_error: bool = false; println!( "{}", @@ -212,15 +210,20 @@ fn main() { } // batt_info - if !batt_info.is_error_state() { + if batt_info_enabled { if is_empty { let mut new_object = SwaybarObject::new("battinfo".to_owned()); if batt_info.update(&mut new_object).is_ok() { array.push_object(new_object); + } else { + new_object.update_as_error("BATTINFO ERROR".to_owned()); + array.push_object(new_object); + batt_info_error = true; } } else if let Some(obj) = array.get_by_name_mut("battinfo") { - if batt_info.update(obj).is_err() { + if !batt_info_error && batt_info.update(obj).is_err() { obj.update_as_error("BATTINFO ERROR".to_owned()); + batt_info_error = true; } } } -- 2.49.0