Quellcode durchsuchen

Merge branch 'fix/openthread_settings_out_of_range_issue' into 'master'

fix(openthread): fix ot settings out of range issue

See merge request espressif/esp-idf!24631
Zhang Wen Xu vor 2 Jahren
Ursprung
Commit
453dc6ab40
1 geänderte Dateien mit 3 neuen und 1 gelöschten Zeilen
  1. 3 1
      components/openthread/src/port/esp_openthread_settings.c

+ 3 - 1
components/openthread/src/port/esp_openthread_settings.c

@@ -153,7 +153,9 @@ otError otPlatSettingsGet(otInstance *aInstance, uint16_t aKey, int aIndex, uint
     if (ret != ESP_OK) {
         return OT_ERROR_NOT_FOUND;
     }
-    ret = nvs_get_blob(s_ot_nvs_handle, ot_nvs_key, aValue, (size_t *)aValueLength);
+    size_t length = *aValueLength;
+    ret = nvs_get_blob(s_ot_nvs_handle, ot_nvs_key, aValue, &length);
+    *aValueLength = (uint16_t) length;
     ESP_RETURN_ON_FALSE((ret == ESP_OK), OT_ERROR_NOT_FOUND, OT_PLAT_LOG_TAG, "Data not found, err: %d", ret);
     return OT_ERROR_NONE;
 }