fix #3129
This commit is contained in:
parent
25b9981908
commit
7009d4fa7b
@ -320,6 +320,20 @@ pub fn start_os_service() {
|
|||||||
let mut last_restart = Instant::now();
|
let mut last_restart = Instant::now();
|
||||||
while running.load(Ordering::SeqCst) {
|
while running.load(Ordering::SeqCst) {
|
||||||
let (cur_uid, cur_user) = get_active_user_id_name();
|
let (cur_uid, cur_user) = get_active_user_id_name();
|
||||||
|
|
||||||
|
// for fixing https://github.com/rustdesk/rustdesk/issues/3129 to avoid too much dbus calling,
|
||||||
|
// though duplicate logic here with should_start_server
|
||||||
|
if !(cur_uid != *uid && !cur_uid.is_empty()) {
|
||||||
|
let cm = get_cm();
|
||||||
|
if !(!cm
|
||||||
|
&& ((cm0 && last_restart.elapsed().as_secs() > 60)
|
||||||
|
|| last_restart.elapsed().as_secs() > 3600))
|
||||||
|
{
|
||||||
|
std::thread::sleep(Duration::from_millis(500));
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
let is_wayland = current_is_wayland();
|
let is_wayland = current_is_wayland();
|
||||||
|
|
||||||
if cur_user == "root" || !is_wayland {
|
if cur_user == "root" || !is_wayland {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user