process::exit if the HapticsWorker dies
This commit is contained in:
@@ -58,7 +58,7 @@ impl DialHapticsWorker {
|
||||
eprintln!("haptics worker is ready");
|
||||
|
||||
let api = HidApi::new().map_err(Error::HidError)?;
|
||||
let hid_device = api.open(0x045e, 0x091b).map_err(|_| Error::MissingDial)?;
|
||||
let hid_device = api.open(0x045e, 0x091b).map_err(Error::HidError)?;
|
||||
let wrapper = DialHidWrapper { hid_device };
|
||||
|
||||
loop {
|
||||
|
||||
@@ -69,8 +69,12 @@ impl DialDevice {
|
||||
std::thread::spawn({
|
||||
let mut worker = DialHapticsWorker::new(haptics_msg_rx)?;
|
||||
move || {
|
||||
worker.run().unwrap();
|
||||
if let Err(err) = worker.run() {
|
||||
eprintln!("Unexpected haptics worker error! {}", err);
|
||||
}
|
||||
eprintln!("the haptics worker died!");
|
||||
// there's no coming back from this.
|
||||
std::process::exit(0);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user