mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-08-26 16:09:10 +00:00
(svn r23804) -Fix: [NewGRF] Make string code 80 more secure by not crashing when it's used in strings where it's not supposed to be used
This commit is contained in:
@@ -1065,7 +1065,7 @@ uint RemapNewGRFStringControlCode(uint scc, char *buf_start, char **buff, const
|
||||
case SCC_NEWGRF_UNPRINT: *buff = max(*buff - Utf8Consume(str), buf_start); break;
|
||||
|
||||
case SCC_NEWGRF_PRINT_WORD_STRING_ID:
|
||||
*argv = TTDPStringIDToOTTDStringIDMapping(_newgrf_textrefstack.PopUnsignedWord());
|
||||
*argv = _newgrf_textrefstack.PopUnsignedWord();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@@ -838,7 +838,7 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg
|
||||
}
|
||||
|
||||
case SCC_NEWGRF_PRINT_WORD_STRING_ID: {
|
||||
StringID substr = args->GetInt32(SCC_NEWGRF_PRINT_WORD_STRING_ID);
|
||||
StringID substr = TTDPStringIDToOTTDStringIDMapping(args->GetInt32(SCC_NEWGRF_PRINT_WORD_STRING_ID));
|
||||
str_stack.push(GetStringPtr(substr));
|
||||
case_index = next_substr_case_index;
|
||||
next_substr_case_index = 0;
|
||||
|
Reference in New Issue
Block a user