diff --git a/applications/external/esp_flasher/esp_flasher_uart.c b/applications/external/esp_flasher/esp_flasher_uart.c index c06fa7103..b4b7928b8 100644 --- a/applications/external/esp_flasher/esp_flasher_uart.c +++ b/applications/external/esp_flasher/esp_flasher_uart.c @@ -55,6 +55,7 @@ static int32_t uart_worker(void* context) { } } + furi_hal_uart_set_irq_cb(uart->channel, NULL, NULL); furi_stream_buffer_free(uart->rx_stream); return 0; @@ -99,7 +100,6 @@ void esp_flasher_uart_free(EspFlasherUart* uart) { furi_thread_join(uart->rx_thread); furi_thread_free(uart->rx_thread); - furi_hal_uart_set_irq_cb(uart->channel, NULL, NULL); if(uart->channel == FuriHalUartIdLPUART1) { furi_hal_uart_deinit(uart->channel); } diff --git a/applications/external/evil_portal/evil_portal_uart.c b/applications/external/evil_portal/evil_portal_uart.c index 247bccb79..13977e4fb 100644 --- a/applications/external/evil_portal/evil_portal_uart.c +++ b/applications/external/evil_portal/evil_portal_uart.c @@ -99,6 +99,7 @@ static int32_t uart_worker(void* context) { } } + furi_hal_uart_set_irq_cb(UART_CH, NULL, NULL); furi_stream_buffer_free(uart->rx_stream); return 0; @@ -144,8 +145,6 @@ void evil_portal_uart_free(Evil_PortalUart* uart) { furi_thread_join(uart->rx_thread); furi_thread_free(uart->rx_thread); - furi_hal_uart_set_irq_cb(UART_CH, NULL, NULL); - if(UART_CH == FuriHalUartIdLPUART1) { furi_hal_uart_deinit(UART_CH); } else { diff --git a/applications/external/uart_terminal/uart_terminal_uart.c b/applications/external/uart_terminal/uart_terminal_uart.c index 379e23402..b289987f5 100644 --- a/applications/external/uart_terminal/uart_terminal_uart.c +++ b/applications/external/uart_terminal/uart_terminal_uart.c @@ -51,6 +51,7 @@ static int32_t uart_worker(void* context) { } } + furi_hal_uart_set_irq_cb(UART_CH, NULL, NULL); furi_stream_buffer_free(uart->rx_stream); return 0; @@ -95,7 +96,6 @@ void uart_terminal_uart_free(UART_TerminalUart* uart) { furi_thread_join(uart->rx_thread); furi_thread_free(uart->rx_thread); - furi_hal_uart_set_irq_cb(UART_CH, NULL, NULL); if(UART_CH == FuriHalUartIdLPUART1) { furi_hal_uart_deinit(UART_CH); } else { diff --git a/applications/external/wifi_deauther/wifi_deauther_uart.c b/applications/external/wifi_deauther/wifi_deauther_uart.c index 642e0a75d..f7c3ffbf6 100644 --- a/applications/external/wifi_deauther/wifi_deauther_uart.c +++ b/applications/external/wifi_deauther/wifi_deauther_uart.c @@ -53,6 +53,7 @@ static int32_t uart_worker(void* context) { } } + furi_hal_uart_set_irq_cb(UART_CH, NULL, NULL); furi_stream_buffer_free(uart->rx_stream); return 0; @@ -94,7 +95,6 @@ void wifi_deauther_uart_free(WifideautherUart* uart) { furi_thread_join(uart->rx_thread); furi_thread_free(uart->rx_thread); - furi_hal_uart_set_irq_cb(UART_CH, NULL, NULL); if(UART_CH == FuriHalUartIdLPUART1) { furi_hal_uart_deinit(UART_CH); } else { diff --git a/applications/external/wifi_marauder_companion/wifi_marauder_uart.c b/applications/external/wifi_marauder_companion/wifi_marauder_uart.c index a7d92fb7e..e916be610 100644 --- a/applications/external/wifi_marauder_companion/wifi_marauder_uart.c +++ b/applications/external/wifi_marauder_companion/wifi_marauder_uart.c @@ -51,6 +51,7 @@ static int32_t uart_worker(void* context) { } } + furi_hal_uart_set_irq_cb(uart->channel, NULL, NULL); furi_stream_buffer_free(uart->rx_stream); return 0; @@ -91,7 +92,6 @@ void wifi_marauder_uart_free(WifiMarauderUart* uart) { furi_thread_join(uart->rx_thread); furi_thread_free(uart->rx_thread); - furi_hal_uart_set_irq_cb(uart->channel, NULL, NULL); if(uart->channel == FuriHalUartIdLPUART1) { furi_hal_uart_deinit(uart->channel); } else {