aboutsummaryrefslogtreecommitdiff
path: root/cyw43/src/runner.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cyw43/src/runner.rs')
-rw-r--r--cyw43/src/runner.rs18
1 files changed, 10 insertions, 8 deletions
diff --git a/cyw43/src/runner.rs b/cyw43/src/runner.rs
index c72cf0def..e90316302 100644
--- a/cyw43/src/runner.rs
+++ b/cyw43/src/runner.rs
@@ -1,6 +1,5 @@
1use embassy_futures::select::{select3, Either3}; 1use embassy_futures::select::{select3, Either3};
2use embassy_net_driver_channel as ch; 2use embassy_net_driver_channel as ch;
3use embassy_sync::pubsub::PubSubBehavior;
4use embassy_time::{block_for, Duration, Timer}; 3use embassy_time::{block_for, Duration, Timer};
5use embedded_hal_1::digital::OutputPin; 4use embedded_hal_1::digital::OutputPin;
6 5
@@ -438,13 +437,16 @@ where
438 // publish() is a deadlock risk in the current design as awaiting here prevents ioctls 437 // publish() is a deadlock risk in the current design as awaiting here prevents ioctls
439 // The `Runner` always yields when accessing the device, so consumers always have a chance to receive the event 438 // The `Runner` always yields when accessing the device, so consumers always have a chance to receive the event
440 // (if they are actively awaiting the queue) 439 // (if they are actively awaiting the queue)
441 self.events.queue.publish_immediate(events::Message::new( 440 self.events
442 Status { 441 .queue
443 event_type: evt_type, 442 .immediate_publisher()
444 status, 443 .publish_immediate(events::Message::new(
445 }, 444 Status {
446 event_payload, 445 event_type: evt_type,
447 )); 446 status,
447 },
448 event_payload,
449 ));
448 } 450 }
449 } 451 }
450 CHANNEL_TYPE_DATA => { 452 CHANNEL_TYPE_DATA => {