esp8266/modnetwork: Use mp_handle_pending() to raise pending exception.

If MICROPY_ENABLE_SCHEDULER is enabled then MP_STATE_VM(sched_state) must
be updated after handling the pending exception, which is done by the
mp_handle_pending() function.

Signed-off-by: Damien George <damien@micropython.org>
pull/7176/head
Damien George 2021-04-28 10:48:04 +10:00
rodzic a1111b83ed
commit a41cd150be
1 zmienionych plików z 1 dodań i 3 usunięć

Wyświetl plik

@ -239,9 +239,7 @@ STATIC mp_obj_t esp_scan(mp_obj_t self_in) {
// esp_scan_list variable to NULL without disabling interrupts
if (MP_STATE_VM(mp_pending_exception) != NULL) {
esp_scan_list = NULL;
mp_obj_t obj = MP_STATE_VM(mp_pending_exception);
MP_STATE_VM(mp_pending_exception) = MP_OBJ_NULL;
nlr_raise(obj);
mp_handle_pending(true);
}
ets_loop_iter();
}