diff --git a/profiler/src/profiler/TracyAchievements.cpp b/profiler/src/profiler/TracyAchievements.cpp index ee814336..32c1093c 100644 --- a/profiler/src/profiler/TracyAchievements.cpp +++ b/profiler/src/profiler/TracyAchievements.cpp @@ -126,7 +126,15 @@ void AchievementsMgr::Achieve( const char* id ) { (*c)->unlockTime = t; auto cit = m_map.find( (*c)->id ); - if( cit->second.category->unlockTime == 0 ) cit->second.category->unlockTime = t; + assert( cit != m_map.end() ); + auto& cat = *cit->second.category; + if( cat.unlockTime == 0 ) cat.unlockTime = t; + auto items = cat.items; + while( *items ) + { + if( (*items)->unlockTime == 0 ) (*items)->unlockTime = cat.unlockTime; + items++; + } c++; } }