core/Translator.cpp
changeset 933 4b950183bb7b
parent 887 7a38baa4d85c
child 1012 1ffc8b804b7d
     1.1 --- a/core/Translator.cpp	Fri Jun 15 01:29:28 2007 +0000
     1.2 +++ b/core/Translator.cpp	Fri Jun 15 01:58:13 2007 +0000
     1.3 @@ -195,7 +195,7 @@
     1.4  SMCParseResult CPhraseFile::ReadSMC_KeyValue(const char *key, const char *value, bool key_quotes, bool value_quotes)
     1.5  {
     1.6  	/* See if we are ignoring a phrase */
     1.7 -	if (!m_CurPhrase)
     1.8 +	if (m_CurPhrase == -1)
     1.9  	{
    1.10  		return SMCParse_Continue;
    1.11  	}
    1.12 @@ -227,6 +227,7 @@
    1.13  		ParseStates state = Parse_None;
    1.14  
    1.15  		const char *old_value = value;
    1.16 +		const char *last_value = value;
    1.17  		while (*value != '\0')
    1.18  		{
    1.19  			if (state == Parse_None)
    1.20 @@ -248,7 +249,7 @@
    1.21  				if (*value == ':')
    1.22  				{
    1.23  					state = Parse_Format;
    1.24 -					if (value - old_value >= 15)
    1.25 +					if (value - last_value >= 15)
    1.26  					{
    1.27  						ParseWarning("Too many digits in format index on line %d, phrase will be ignored.", m_CurLine);
    1.28  						m_CurPhrase = -1;
    1.29 @@ -269,6 +270,7 @@
    1.30  				if (*value == '}')
    1.31  				{
    1.32  					state = Parse_None;
    1.33 +					last_value = value + 1;
    1.34  				}
    1.35  			}
    1.36  			value++;