diff --git a/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp b/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp index e9bb8463..f387f807 100644 --- a/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp +++ b/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp @@ -792,7 +792,16 @@ void RadarProductManagerImpl::LoadProviderData( if (existingRecord == nullptr) { std::string key = providerManager->provider_->FindKey(time); - nexradFile = providerManager->provider_->LoadObjectByKey(key); + + if (!key.empty()) + { + nexradFile = providerManager->provider_->LoadObjectByKey(key); + } + else + { + logger_->warn("Attempting to load object without key: {}", + scwx::util::TimeString(time)); + } } else { @@ -1042,7 +1051,7 @@ RadarProductManagerImpl::GetLevel2ProductRecord( record = recordPtr->second.lock(); } - if (record == nullptr && + if (recordPtr != nullptr && record == nullptr && recordTime != std::chrono::system_clock::time_point {}) { // Product is expired, reload it @@ -1107,7 +1116,7 @@ RadarProductManagerImpl::GetLevel3ProductRecord( } } - if (record == nullptr && + if (recordPtr != nullptr && record == nullptr && recordTime != std::chrono::system_clock::time_point {}) { // Product is expired, reload it diff --git a/wxdata/source/scwx/awips/wmo_header.cpp b/wxdata/source/scwx/awips/wmo_header.cpp index 8e6a8519..f75cbded 100644 --- a/wxdata/source/scwx/awips/wmo_header.cpp +++ b/wxdata/source/scwx/awips/wmo_header.cpp @@ -176,28 +176,28 @@ bool WmoHeader::Parse(std::istream& is) if (wmoTokenList.size() < 3 || wmoTokenList.size() > 4) { - logger_->debug("Invalid number of WMO tokens"); + logger_->warn("Invalid number of WMO tokens"); headerValid = false; } else if (wmoTokenList[0].size() != 6) { - logger_->debug("WMO identifier malformed"); + logger_->warn("WMO identifier malformed"); headerValid = false; } else if (wmoTokenList[1].size() != 4) { - logger_->debug("ICAO malformed"); + logger_->warn("ICAO malformed"); headerValid = false; } else if (wmoTokenList[2].size() != 6) { - logger_->debug("Date/time malformed"); + logger_->warn("Date/time malformed"); headerValid = false; } else if (wmoTokenList.size() == 4 && wmoTokenList[3].size() != 3) { // BBB indicator is optional - logger_->debug("BBB indicator malformed"); + logger_->warn("BBB indicator malformed"); headerValid = false; } else @@ -226,7 +226,7 @@ bool WmoHeader::Parse(std::istream& is) { if (awipsLine.size() != 6) { - logger_->debug("AWIPS Identifier Line bad size"); + logger_->warn("AWIPS Identifier Line bad size"); headerValid = false; } else