Merge branch 'fix/openthread_alarm_timer_overflow_v5.1' into 'release/v5.1'

fix(openthread): fix openthread alarm timer calculation remaining_us overflow issue (backport v5.1)

See merge request espressif/esp-idf!29391
pull/13572/head
Shu Chen 2024-03-05 11:10:12 +08:00
commit 1f1d252e76
1 zmienionych plików z 2 dodań i 2 usunięć

Wyświetl plik

@ -101,8 +101,8 @@ void esp_openthread_alarm_deinit(void)
void esp_openthread_alarm_update(esp_openthread_mainloop_context_t *mainloop)
{
struct timeval *timeout = &mainloop->timeout;
int32_t remain_min_time_us = INT32_MAX;
int32_t remaining_us = 0;
int64_t remain_min_time_us = INT64_MAX;
int64_t remaining_us = 0;
if (s_is_ms_running) {
remaining_us = calculate_duration(s_alarm_ms, otPlatAlarmMilliGetNow()) * US_PER_MS;
if (remain_min_time_us > remaining_us) {