Codechange: Store base set related texts in std::strings.
This commit is contained in:
@@ -537,9 +537,9 @@ int openttd_main(int argc, char *argv[])
|
||||
char *sounddriver = nullptr;
|
||||
char *videodriver = nullptr;
|
||||
char *blitter = nullptr;
|
||||
char *graphics_set = nullptr;
|
||||
char *sounds_set = nullptr;
|
||||
char *music_set = nullptr;
|
||||
std::string graphics_set;
|
||||
std::string sounds_set;
|
||||
std::string music_set;
|
||||
Dimension resolution = {0, 0};
|
||||
/* AfterNewGRFScan sets save_config to true after scanning completed. */
|
||||
bool save_config = false;
|
||||
@@ -563,9 +563,9 @@ int openttd_main(int argc, char *argv[])
|
||||
int i;
|
||||
while ((i = mgo.GetOpt()) != -1) {
|
||||
switch (i) {
|
||||
case 'I': free(graphics_set); graphics_set = stredup(mgo.opt); break;
|
||||
case 'S': free(sounds_set); sounds_set = stredup(mgo.opt); break;
|
||||
case 'M': free(music_set); music_set = stredup(mgo.opt); break;
|
||||
case 'I': graphics_set = mgo.opt; break;
|
||||
case 'S': sounds_set = mgo.opt; break;
|
||||
case 'M': music_set = mgo.opt; break;
|
||||
case 'm': free(musicdriver); musicdriver = stredup(mgo.opt); break;
|
||||
case 's': free(sounddriver); sounddriver = stredup(mgo.opt); break;
|
||||
case 'v': free(videodriver); videodriver = stredup(mgo.opt); break;
|
||||
@@ -731,17 +731,16 @@ int openttd_main(int argc, char *argv[])
|
||||
InitWindowSystem();
|
||||
|
||||
BaseGraphics::FindSets();
|
||||
if (graphics_set == nullptr && BaseGraphics::ini_set != nullptr) graphics_set = stredup(BaseGraphics::ini_set);
|
||||
if (graphics_set.empty() && !BaseGraphics::ini_set.empty()) graphics_set = BaseGraphics::ini_set;
|
||||
if (!BaseGraphics::SetSet(graphics_set)) {
|
||||
if (!StrEmpty(graphics_set)) {
|
||||
BaseGraphics::SetSet(nullptr);
|
||||
if (!graphics_set.empty()) {
|
||||
BaseGraphics::SetSet({});
|
||||
|
||||
ErrorMessageData msg(STR_CONFIG_ERROR, STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND);
|
||||
msg.SetDParamStr(0, graphics_set);
|
||||
msg.SetDParamStr(0, graphics_set.c_str());
|
||||
ScheduleErrorMessage(msg);
|
||||
}
|
||||
}
|
||||
free(graphics_set);
|
||||
|
||||
/* Initialize game palette */
|
||||
GfxInitPalettes();
|
||||
@@ -802,30 +801,28 @@ int openttd_main(int argc, char *argv[])
|
||||
InitializeScreenshotFormats();
|
||||
|
||||
BaseSounds::FindSets();
|
||||
if (sounds_set == nullptr && BaseSounds::ini_set != nullptr) sounds_set = stredup(BaseSounds::ini_set);
|
||||
if (sounds_set.empty() && !BaseSounds::ini_set.empty()) sounds_set = BaseSounds::ini_set;
|
||||
if (!BaseSounds::SetSet(sounds_set)) {
|
||||
if (StrEmpty(sounds_set) || !BaseSounds::SetSet(nullptr)) {
|
||||
if (sounds_set.empty() || !BaseSounds::SetSet({})) {
|
||||
usererror("Failed to find a sounds set. Please acquire a sounds set for OpenTTD. See section 1.4 of README.md.");
|
||||
} else {
|
||||
ErrorMessageData msg(STR_CONFIG_ERROR, STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND);
|
||||
msg.SetDParamStr(0, sounds_set);
|
||||
msg.SetDParamStr(0, sounds_set.c_str());
|
||||
ScheduleErrorMessage(msg);
|
||||
}
|
||||
}
|
||||
free(sounds_set);
|
||||
|
||||
BaseMusic::FindSets();
|
||||
if (music_set == nullptr && BaseMusic::ini_set != nullptr) music_set = stredup(BaseMusic::ini_set);
|
||||
if (music_set.empty() && !BaseMusic::ini_set.empty()) music_set = BaseMusic::ini_set;
|
||||
if (!BaseMusic::SetSet(music_set)) {
|
||||
if (StrEmpty(music_set) || !BaseMusic::SetSet(nullptr)) {
|
||||
if (music_set.empty() || !BaseMusic::SetSet({})) {
|
||||
usererror("Failed to find a music set. Please acquire a music set for OpenTTD. See section 1.4 of README.md.");
|
||||
} else {
|
||||
ErrorMessageData msg(STR_CONFIG_ERROR, STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND);
|
||||
msg.SetDParamStr(0, music_set);
|
||||
msg.SetDParamStr(0, music_set.c_str());
|
||||
ScheduleErrorMessage(msg);
|
||||
}
|
||||
}
|
||||
free(music_set);
|
||||
|
||||
if (sounddriver == nullptr && _ini_sounddriver != nullptr) sounddriver = stredup(_ini_sounddriver);
|
||||
DriverFactoryBase::SelectDriver(sounddriver, Driver::DT_SOUND);
|
||||
@@ -875,22 +872,15 @@ int openttd_main(int argc, char *argv[])
|
||||
|
||||
exit_noshutdown:
|
||||
/* These three are normally freed before bootstrap. */
|
||||
free(graphics_set);
|
||||
free(videodriver);
|
||||
free(blitter);
|
||||
|
||||
exit_bootstrap:
|
||||
/* These are normally freed before exit, but after bootstrap. */
|
||||
free(sounds_set);
|
||||
free(music_set);
|
||||
free(musicdriver);
|
||||
free(sounddriver);
|
||||
|
||||
exit_normal:
|
||||
free(BaseGraphics::ini_set);
|
||||
free(BaseSounds::ini_set);
|
||||
free(BaseMusic::ini_set);
|
||||
|
||||
free(_ini_musicdriver);
|
||||
free(_ini_sounddriver);
|
||||
free(_ini_videodriver);
|
||||
@@ -1142,9 +1132,9 @@ void SwitchToMode(SwitchMode new_mode)
|
||||
|
||||
case SM_MENU: // Switch to game intro menu
|
||||
LoadIntroGame();
|
||||
if (BaseSounds::ini_set == nullptr && BaseSounds::GetUsedSet()->fallback) {
|
||||
if (BaseSounds::ini_set.empty() && BaseSounds::GetUsedSet()->fallback) {
|
||||
ShowErrorMessage(STR_WARNING_FALLBACK_SOUNDSET, INVALID_STRING_ID, WL_CRITICAL);
|
||||
BaseSounds::ini_set = stredup(BaseSounds::GetUsedSet()->name);
|
||||
BaseSounds::ini_set = BaseSounds::GetUsedSet()->name;
|
||||
}
|
||||
break;
|
||||
|
||||
|
Reference in New Issue
Block a user