summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2010-11-07 18:35:59 +0000
committerrubidium <rubidium@openttd.org>2010-11-07 18:35:59 +0000
commit28ed77c35421310fdcc8c4b02ea363a8d22ef02e (patch)
tree5af19f2f81f62f4718c17b2db4a6991bdf1be63d
parenta89fed21c78df05b18e30dcb72cef60331d24556 (diff)
downloadopenttd-28ed77c35421310fdcc8c4b02ea363a8d22ef02e.tar.xz
(svn r21113) -Codechange: remove the amount of places where the language pack identifier magic value is
-rw-r--r--src/strgen/strgen.cpp4
-rw-r--r--src/strgen/strgen.h2
-rw-r--r--src/strings.cpp4
3 files changed, 5 insertions, 5 deletions
diff --git a/src/strgen/strgen.cpp b/src/strgen/strgen.cpp
index e950e5e99..6d6d1626c 100644
--- a/src/strgen/strgen.cpp
+++ b/src/strgen/strgen.cpp
@@ -946,7 +946,6 @@ static void WriteStringsH(const char *filename)
fprintf(_output_file, "\nstatic const StringID STR_LAST_STRINGID = 0x%X;\n\n", next - 1);
fprintf(_output_file,
- "static const uint LANGUAGE_PACK_IDENT = 0x474E414C; // Big Endian value for 'LANG' (LE is 0x 4C 41 4E 47)\n"
"static const uint LANGUAGE_PACK_VERSION = 0x%X;\n\n", (uint)_hash
);
@@ -1069,8 +1068,7 @@ static void WriteLangfile(const char *filename)
_lang.offsets[i] = TO_LE16(n);
}
- /* see line 655: fprintf(..."\tLANGUAGE_PACK_IDENT = 0x474E414C,...) */
- _lang.ident = TO_LE32(0x474E414C); // Big Endian value for 'LANG'
+ _lang.ident = TO_LE32(LanguagePackHeader::IDENT);
_lang.version = TO_LE32(_hash);
_lang.winlangid = TO_LE16(_lang.winlangid);
diff --git a/src/strgen/strgen.h b/src/strgen/strgen.h
index 40c5f2031..ecaeb05ff 100644
--- a/src/strgen/strgen.h
+++ b/src/strgen/strgen.h
@@ -14,6 +14,8 @@
/** Header of a language file. */
struct LanguagePackHeader {
+ static const uint32 IDENT = 0x474E414C; ///< Identifier for OpenTTD language files, big endian for "LANG"
+
uint32 ident; ///< 32-bits identifier
uint32 version; ///< 32-bits of auto generated version info which is basically a hash of strings.h
char name[32]; ///< the international name of this language
diff --git a/src/strings.cpp b/src/strings.cpp
index 912acfe65..5b318f20c 100644
--- a/src/strings.cpp
+++ b/src/strings.cpp
@@ -1314,7 +1314,7 @@ bool ReadLanguagePack(int lang_index)
/* We need at least one byte of lang_pack->data */
if (end <= lang_pack->data ||
- lang_pack->ident != TO_LE32(LANGUAGE_PACK_IDENT) ||
+ lang_pack->ident != TO_LE32(LanguagePackHeader::IDENT) ||
lang_pack->version != TO_LE32(LANGUAGE_PACK_VERSION)) {
free(lang_pack);
return false;
@@ -1453,7 +1453,7 @@ static bool GetLanguageFileHeader(const char *file, LanguagePack *hdr)
fclose(f);
bool ret = read == 1 &&
- hdr->ident == TO_LE32(LANGUAGE_PACK_IDENT) &&
+ hdr->ident == TO_LE32(LanguagePackHeader::IDENT) &&
hdr->version == TO_LE32(LANGUAGE_PACK_VERSION);
/* Convert endianness for the windows language ID */