From f7c87a700d2d9cd05469f1b5b2966a01808ce0e1 Mon Sep 17 00:00:00 2001 From: FintasticMan Date: Wed, 9 Oct 2024 12:04:53 +0200 Subject: weather: Switch to std::optional for Forecast days Also only iterate over the number of days actually in use, rather than MaxNbForecastDays. --- src/components/ble/SimpleWeatherService.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/components/ble/SimpleWeatherService.cpp') diff --git a/src/components/ble/SimpleWeatherService.cpp b/src/components/ble/SimpleWeatherService.cpp index a58c3a76..51baf543 100644 --- a/src/components/ble/SimpleWeatherService.cpp +++ b/src/components/ble/SimpleWeatherService.cpp @@ -52,7 +52,7 @@ namespace { SimpleWeatherService::Forecast CreateForecast(const uint8_t* dataBuffer) { auto timestamp = static_cast(ToUInt64(&dataBuffer[2])); - std::array days; + std::array, SimpleWeatherService::MaxNbForecastDays> days; const uint8_t nbDaysInBuffer = dataBuffer[10]; const uint8_t nbDays = std::min(SimpleWeatherService::MaxNbForecastDays, nbDaysInBuffer); for (int i = 0; i < nbDays; i++) { @@ -112,9 +112,9 @@ int SimpleWeatherService::OnCommand(struct ble_gatt_access_ctxt* ctxt) { for (int i = 0; i < 5; i++) { NRF_LOG_INFO("\t[%d] Min: %d - Max : %d - Icon : %d", i, - forecast->days[i].minTemperature.PreciseCelsius(), - forecast->days[i].maxTemperature.PreciseCelsius(), - forecast->days[i].iconId); + forecast->days[i]->minTemperature.PreciseCelsius(), + forecast->days[i]->maxTemperature.PreciseCelsius(), + forecast->days[i]->iconId); } } break; -- cgit v1.2.3-70-g09d2