mirror of
https://github.com/zhom/donutbrowser.git
synced 2026-09-23 09:50:58 +02:00
refactor: verify dead process on force kill
This commit is contained in:
@@ -1019,7 +1019,20 @@ impl BrowserRunner {
|
|||||||
{
|
{
|
||||||
log::error!("Failed to force kill Camoufox process {}: {}", pid, e);
|
log::error!("Failed to force kill Camoufox process {}: {}", pid, e);
|
||||||
} else {
|
} else {
|
||||||
process_actually_stopped = true;
|
// Verify the process is actually dead after force kill
|
||||||
|
use tokio::time::{sleep, Duration};
|
||||||
|
sleep(Duration::from_millis(500)).await;
|
||||||
|
use sysinfo::{Pid, System};
|
||||||
|
let system = System::new_all();
|
||||||
|
process_actually_stopped =
|
||||||
|
system.process(Pid::from(pid as usize)).is_none();
|
||||||
|
if process_actually_stopped {
|
||||||
|
log::info!(
|
||||||
|
"Successfully force killed Camoufox process {} (PID: {:?})",
|
||||||
|
camoufox_process.id,
|
||||||
|
pid
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#[cfg(target_os = "linux")]
|
#[cfg(target_os = "linux")]
|
||||||
@@ -1029,7 +1042,20 @@ impl BrowserRunner {
|
|||||||
{
|
{
|
||||||
log::error!("Failed to force kill Camoufox process {}: {}", pid, e);
|
log::error!("Failed to force kill Camoufox process {}: {}", pid, e);
|
||||||
} else {
|
} else {
|
||||||
process_actually_stopped = true;
|
// Verify the process is actually dead after force kill
|
||||||
|
use tokio::time::{sleep, Duration};
|
||||||
|
sleep(Duration::from_millis(500)).await;
|
||||||
|
use sysinfo::{Pid, System};
|
||||||
|
let system = System::new_all();
|
||||||
|
process_actually_stopped =
|
||||||
|
system.process(Pid::from(pid as usize)).is_none();
|
||||||
|
if process_actually_stopped {
|
||||||
|
log::info!(
|
||||||
|
"Successfully force killed Camoufox process {} (PID: {:?})",
|
||||||
|
camoufox_process.id,
|
||||||
|
pid
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#[cfg(target_os = "windows")]
|
#[cfg(target_os = "windows")]
|
||||||
@@ -1040,7 +1066,20 @@ impl BrowserRunner {
|
|||||||
{
|
{
|
||||||
log::error!("Failed to force kill Camoufox process {}: {}", pid, e);
|
log::error!("Failed to force kill Camoufox process {}: {}", pid, e);
|
||||||
} else {
|
} else {
|
||||||
process_actually_stopped = true;
|
// Verify the process is actually dead after force kill
|
||||||
|
use tokio::time::{sleep, Duration};
|
||||||
|
sleep(Duration::from_millis(500)).await;
|
||||||
|
use sysinfo::{Pid, System};
|
||||||
|
let system = System::new_all();
|
||||||
|
process_actually_stopped =
|
||||||
|
system.process(Pid::from(pid as usize)).is_none();
|
||||||
|
if process_actually_stopped {
|
||||||
|
log::info!(
|
||||||
|
"Successfully force killed Camoufox process {} (PID: {:?})",
|
||||||
|
camoufox_process.id,
|
||||||
|
pid
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user