diff --git a/stepmania/src/ThemeManager.cpp b/stepmania/src/ThemeManager.cpp index 505e86d4fa..c35abdf223 100644 --- a/stepmania/src/ThemeManager.cpp +++ b/stepmania/src/ThemeManager.cpp @@ -66,6 +66,14 @@ void ThemeManager::Subscribe( IThemeMetric *p ) if( g_pvpSubscribers == NULL ) g_pvpSubscribers = new vector; g_pvpSubscribers->push_back( p ); + + + // It's ThemeManager's responsibility to make sure all of it's subscribers + // are updated with current data. If a metric is created after + // a theme is loaded, ThemeManager should update it right away (not just + // when the theme changes). + if( THEME && THEME->GetCurThemeName().size() ) + p->Read(); } void ThemeManager::Unsubscribe( IThemeMetric *p )