mirror of
https://github.com/OpenTTD/OpenTTD
synced 2026-01-17 17:32:45 +01:00
(svn r12478) [0.6] -Backport from trunk (12477, 12453, 12448, 12443, 12439, 12417):
- Fix: Timetable times for aircraft were always doubled [FS#1883] (r12477) - Fix: Remove broken endian-dependent code and unnecessary rgb to bgr swapping [FS#1880] (r12453) - Change: Unify RPM spec files (r12448) - Add: OpenTTD's version to the config file to 'ease' getting the correct version on bugreports (r12443) - Fix: Do not 'disable' the drawing of autorail overlays when the tile is 'error'-marked (red pulsating selection) [FS#1871] (r12439) - Fix: Plural rule for Icelandic was wrong (r12417)
This commit is contained in:
@@ -1750,6 +1750,36 @@ static void NewsDisplaySaveConfig(IniFile *ini, const char *grpname, uint news_d
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Save the version of OpenTTD to the ini file.
|
||||
* @param ini the ini to write to
|
||||
*/
|
||||
static void SaveVersionInConfig(IniFile *ini)
|
||||
{
|
||||
extern const char _openttd_revision[];
|
||||
extern uint32 _openttd_newgrf_version;
|
||||
|
||||
IniGroup *group = ini_getgroup(ini, "version", -1);
|
||||
|
||||
if (group == NULL) return;
|
||||
group->item = NULL;
|
||||
IniItem **item = &group->item;
|
||||
|
||||
char version[9];
|
||||
snprintf(version, lengthof(version), "%08X", _openttd_newgrf_version);
|
||||
|
||||
const char *versions[][2] = {
|
||||
{ "version_string", _openttd_revision },
|
||||
{ "version_number", version }
|
||||
};
|
||||
|
||||
for (uint i = 0; i < lengthof(versions); i++) {
|
||||
*item = ini_item_alloc(group, versions[i][0], strlen(versions[i][0]));
|
||||
(*item)->value = (char*)pool_strdup(&ini->pool, versions[i][1], strlen(versions[i][1]));
|
||||
item = &(*item)->next;
|
||||
}
|
||||
}
|
||||
|
||||
/* Save a GRF configuration to the given group name */
|
||||
static void GRFSaveConfig(IniFile *ini, const char *grpname, const GRFConfig *list)
|
||||
{
|
||||
@@ -1814,6 +1844,7 @@ void SaveToConfig()
|
||||
GRFSaveConfig(ini, "newgrf", _grfconfig_newgame);
|
||||
GRFSaveConfig(ini, "newgrf-static", _grfconfig_static);
|
||||
NewsDisplaySaveConfig(ini, "news_display", _news_display_opt);
|
||||
SaveVersionInConfig(ini);
|
||||
ini_save(_config_file, ini);
|
||||
ini_free(ini);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user