add wrapper function _get_values_of_seat0_tries for attempts
Signed-off-by: Sahil Yeole <sahilyeole93@gmail.com>
This commit is contained in:
parent
cf6fbae30a
commit
cc9f69d63b
@ -124,16 +124,27 @@ fn line_values(indices: &[usize], line: &str) -> Vec<String> {
|
||||
|
||||
#[inline]
|
||||
pub fn get_values_of_seat0(indices: &[usize]) -> Vec<String> {
|
||||
_get_values_of_seat0(indices, true, 20)
|
||||
_get_values_of_seat0_tries(indices, true, 20)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn get_values_of_seat0_with_gdm_wayland(indices: &[usize]) -> Vec<String> {
|
||||
_get_values_of_seat0(indices, false, 20)
|
||||
_get_values_of_seat0_tries(indices, false, 20)
|
||||
}
|
||||
|
||||
fn _get_values_of_seat0(indices: &[usize], ignore_gdm_wayland: bool, attempts: usize) -> Vec<String> {
|
||||
fn _get_values_of_seat0_tries(indices: &[usize], ignore_gdm_wayland: bool, attempts: usize) -> Vec<String> {
|
||||
for _ in 0..attempts{
|
||||
let value = _get_values_of_seat0(indices, ignore_gdm_wayland);
|
||||
if value != line_values(indices, "") {
|
||||
return value;
|
||||
}
|
||||
// Wait for 300ms and try again
|
||||
std::thread::sleep(std::time::Duration::from_millis(300));
|
||||
}
|
||||
line_values(indices, "")
|
||||
}
|
||||
|
||||
fn _get_values_of_seat0(indices: &[usize], ignore_gdm_wayland: bool) -> Vec<String> {
|
||||
if let Ok(output) = run_loginctl(None) {
|
||||
for line in String::from_utf8_lossy(&output.stdout).lines() {
|
||||
if line.contains("seat0") {
|
||||
@ -173,10 +184,7 @@ fn _get_values_of_seat0(indices: &[usize], ignore_gdm_wayland: bool, attempts: u
|
||||
}
|
||||
}
|
||||
|
||||
// Wait for 300ms and try again
|
||||
std::thread::sleep(std::time::Duration::from_millis(300));
|
||||
}
|
||||
return line_values(indices, "");
|
||||
line_values(indices, "")
|
||||
}
|
||||
|
||||
pub fn is_active(sid: &str) -> bool {
|
||||
|
Loading…
Reference in New Issue
Block a user