From b44ad7a4e0f82920f8f31da80a2f9fffaba74061 Mon Sep 17 00:00:00 2001 From: Chris Danford Date: Sat, 24 Jun 2006 16:57:39 +0000 Subject: [PATCH] preserve language name case in file name if LanguageInfo not available --- stepmania/src/RageUtil.cpp | 2 +- stepmania/src/ThemeManager.cpp | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/stepmania/src/RageUtil.cpp b/stepmania/src/RageUtil.cpp index 768f18e31c..c1e1dfbc67 100644 --- a/stepmania/src/RageUtil.cpp +++ b/stepmania/src/RageUtil.cpp @@ -494,7 +494,7 @@ const LanguageInfo *GetLanguageInfo( const RString &sIsoCode ) // and languages that had native forms on the site listed above. // Obscure languages are dropped so that they don't clutter up the // smtools UI. - if( sIsoCode.CompareNoCase(g_langs[i].szIsoCode) == 0 ) + if( sIsoCode.EqualsNoCase(g_langs[i].szIsoCode) ) return &g_langs[i]; } diff --git a/stepmania/src/ThemeManager.cpp b/stepmania/src/ThemeManager.cpp index 49019cc8be..ce54a7f888 100644 --- a/stepmania/src/ThemeManager.cpp +++ b/stepmania/src/ThemeManager.cpp @@ -218,6 +218,10 @@ RString ThemeManager::GetThemeDisplayName( const RString &sThemeName ) return sThemeName; } +static bool EqualsNoCase( const RString &s1, const RString &s2 ) +{ + return s1.EqualsNoCase(s2); +} void ThemeManager::GetLanguages( vector& AddTo ) { AddTo.clear(); @@ -225,12 +229,9 @@ void ThemeManager::GetLanguages( vector& AddTo ) for( unsigned i = 0; i < g_vThemes.size(); ++i ) GetLanguagesForTheme( g_vThemes[i].sThemeName, AddTo ); - FOREACH( RString, AddTo, s ) - s->MakeLower(); - // remove dupes sort( AddTo.begin(), AddTo.end() ); - vector::iterator it = unique( AddTo.begin(), AddTo.end() ); + vector::iterator it = unique( AddTo.begin(), AddTo.end(), EqualsNoCase ); AddTo.erase(it, AddTo.end()); }