1.1 --- a/core/logic/Translator.cpp Sun Aug 25 01:42:14 2013 -0700
1.2 +++ b/core/logic/Translator.cpp Sun Aug 25 01:42:15 2013 -0700
1.3 @@ -1,5 +1,5 @@
1.4 /**
1.5 - * vim: set ts=4 :
1.6 + * vim: set ts=4 sw=4 tw=99 noet:
1.7 * =============================================================================
1.8 * SourceMod
1.9 * Copyright (C) 2004-2008 AlliedModders LLC. All rights reserved.
1.10 @@ -210,12 +210,7 @@
1.11 m_ParseState = PPS_InPhrase;
1.12 recognized = true;
1.13
1.14 - int *pvalue;
1.15 - if ((pvalue = m_PhraseLookup.retrieve(name)) != NULL)
1.16 - {
1.17 - m_CurPhrase = *pvalue;
1.18 - }
1.19 - else
1.20 + if (!m_PhraseLookup.retrieve(name, &m_CurPhrase))
1.21 {
1.22 phrase_t *pPhrase;
1.23
1.24 @@ -659,11 +654,11 @@
1.25 return Trans_BadLanguage;
1.26 }
1.27
1.28 - int *pvalue;
1.29 - if ((pvalue = m_PhraseLookup.retrieve(szPhrase)) == NULL)
1.30 + int address;
1.31 + if (!m_PhraseLookup.retrieve(szPhrase, &address))
1.32 return Trans_BadPhrase;
1.33
1.34 - phrase_t *pPhrase = (phrase_t *)m_pMemory->GetAddress(*pvalue);
1.35 + phrase_t *pPhrase = (phrase_t *)m_pMemory->GetAddress(address);
1.36 trans_t *trans = (trans_t *)m_pMemory->GetAddress(pPhrase->trans_tbl);
1.37
1.38 trans = &trans[lang_id];
1.39 @@ -769,15 +764,7 @@
1.40
1.41 bool Translator::GetLanguageByCode(const char *code, unsigned int *index)
1.42 {
1.43 - unsigned int *pindex;
1.44 -
1.45 - if ((pindex = m_LCodeLookup.retrieve(code)) == NULL)
1.46 - return false;
1.47 -
1.48 - if (index)
1.49 - *index = *pindex;
1.50 -
1.51 - return true;
1.52 + return m_LCodeLookup.retrieve(code, index);
1.53 }
1.54
1.55 bool Translator::GetLanguageByName(const char *name, unsigned int *index)
1.56 @@ -794,15 +781,7 @@
1.57 }
1.58 lower[len] = '\0';
1.59
1.60 - unsigned int *pIndex;
1.61 -
1.62 - if ((pIndex = m_LAliases.retrieve(lower)) == NULL)
1.63 - return false;
1.64 -
1.65 - if (index)
1.66 - *index = *pIndex;
1.67 -
1.68 - return true;
1.69 + return m_LAliases.retrieve(lower, index);
1.70 }
1.71
1.72 unsigned int Translator::GetLanguageCount()
1.73 @@ -863,19 +842,13 @@
1.74 smcore.LogError("[SM] Parse error (line %d, column %d): %s", states.line, states.col, str_err);
1.75 }
1.76
1.77 - unsigned int *pServerLang;
1.78 -
1.79 - if ((pServerLang = m_LCodeLookup.retrieve(m_InitialLang)) == NULL)
1.80 + if (!m_LCodeLookup.retrieve(m_InitialLang, &m_ServerLang))
1.81 {
1.82 smcore.LogError("Server language was set to bad language \"%s\" -- reverting to English", m_InitialLang);
1.83
1.84 smcore.strncopy(m_InitialLang, "en", sizeof(m_InitialLang));
1.85 m_ServerLang = SOURCEMOD_LANGUAGE_ENGLISH;
1.86 }
1.87 - else
1.88 - {
1.89 - m_ServerLang = *pServerLang;
1.90 - }
1.91
1.92 if (!m_Languages.size())
1.93 {
1.94 @@ -948,15 +921,11 @@
1.95 }
1.96 lower[len] = '\0';
1.97
1.98 - if (m_LAliases.retrieve(lower))
1.99 + if (m_LAliases.contains(lower))
1.100 return false;
1.101
1.102 unsigned int idx;
1.103 - if (unsigned int *pIdx = m_LCodeLookup.retrieve(langcode))
1.104 - {
1.105 - idx = *pIdx;
1.106 - }
1.107 - else
1.108 + if (!m_LCodeLookup.retrieve(langcode, &idx))
1.109 {
1.110 Language *pLanguage = new Language;
1.111 idx = m_Languages.size();