From 7bd49be49a47924ed6a3e91bcf68bba9c8030967 Mon Sep 17 00:00:00 2001 From: ClementTsang Date: Sat, 5 Oct 2019 21:55:35 -0400 Subject: Removed unsafe unwraps --- src/app/data_collection/processes.rs | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'src/app') diff --git a/src/app/data_collection/processes.rs b/src/app/data_collection/processes.rs index 02eb3bb7..6de81df2 100644 --- a/src/app/data_collection/processes.rs +++ b/src/app/data_collection/processes.rs @@ -67,7 +67,12 @@ fn vangelis_cpu_usage_calculation(prev_idle : &mut f64, prev_non_idle : &mut f64 *prev_idle = idle; *prev_non_idle = non_idle; - let result = if total_delta - idle_delta != 0_f64 { total_delta - idle_delta } else { 1_f64 }; + let result = if total_delta - idle_delta != 0_f64 { + total_delta - idle_delta + } + else { + 1_f64 + }; Ok(result) // This works, REALLY damn well. The percentage check is within like 2% of the sysinfo one. } @@ -169,13 +174,14 @@ pub async fn get_sorted_processes_list( let ps_result = Command::new("ps").args(&["-axo", "pid:10,comm:50,%mem:5", "--noheader"]).output()?; let ps_stdout = String::from_utf8_lossy(&ps_result.stdout); let split_string = ps_stdout.split('\n'); - let cpu_usage = vangelis_cpu_usage_calculation(prev_idle, prev_non_idle).unwrap(); // TODO: FIX THIS ERROR CHECKING - let process_stream = split_string.collect::>(); - - for process in process_stream { - if let Ok(process_object) = convert_ps(process, cpu_usage, prev_pid_stats) { - if !process_object.command.is_empty() { - process_vector.push(process_object); + if let Ok(cpu_usage) = vangelis_cpu_usage_calculation(prev_idle, prev_non_idle) { + let process_stream = split_string.collect::>(); + + for process in process_stream { + if let Ok(process_object) = convert_ps(process, cpu_usage, prev_pid_stats) { + if !process_object.command.is_empty() { + process_vector.push(process_object); + } } } } -- cgit v1.2.3