diff --git a/src/main.rs b/src/main.rs index 18b464619d618c7181364ad6494a464aff14316c..9a870c7815a7c8576692fb0ddbb39333e3d7fc64 100644 --- a/src/main.rs +++ b/src/main.rs @@ -337,12 +337,15 @@ fn check_user_presence(cid: ChannelID) -> Result<(), Ctap2StatusCode> { Ok(x) => x, Err(err) => panic!("Couldn't init buttons subsystem"), }; - let _buttons_callback = match buttons_driver.subscribe(&mut |_button_num, state| { + + let mut subscription = |_button_num, state| { match state { ButtonState::Pressed => button_touched.set(true), ButtonState::Released => (), }; - }) { + }; + let _buttons_callback = buttons_driver.subscribe(&mut subscription); + let _buttons_callback = match _buttons_callback { Ok(x) => x, Err(err) => panic!("Couldn't subscribe to button"), };