Changeset - r18922:1f4490f370f0
[Not reviewed]
master
0 1 0
rubidium - 12 years ago 2012-01-09 22:20:44
rubidium@openttd.org
(svn r23782) -Fix [FS#4965]: crash due to genders used for station name in hangar string of Italian translation
1 file changed with 3 insertions and 2 deletions:
0 comments (0 inline, 0 general)
src/strings.cpp
Show inline comments
 
@@ -1219,50 +1219,51 @@ static char *FormatString(char *buff, co
 
					buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last);
 
				} else {
 
					int64 args_array[] = {c->name_2};
 
					StringParameters tmp_params(args_array);
 
					buff = GetStringWithArgs(buff, c->name_1, &tmp_params, last);
 
				}
 
				break;
 
			}
 

	
 
			case SCC_COMPANY_NUM: { // {COMPANY_NUM}
 
				CompanyID company = (CompanyID)args->GetInt32();
 

	
 
				/* Nothing is added for AI or inactive companies */
 
				if (Company::IsValidHumanID(company)) {
 
					int64 args_array[] = {company + 1};
 
					StringParameters tmp_params(args_array);
 
					buff = GetStringWithArgs(buff, STR_FORMAT_COMPANY_NUM, &tmp_params, last);
 
				}
 
				break;
 
			}
 

	
 
			case SCC_DEPOT_NAME: { // {DEPOT}
 
				VehicleType vt = (VehicleType)args->GetInt32(SCC_DEPOT_NAME);
 
				if (vt == VEH_AIRCRAFT) {
 
					int64 args_array[] = {args->GetInt32()};
 
					StringParameters tmp_params(args_array);
 
					uint64 args_array[] = {args->GetInt32()};
 
					WChar types_array[] = {SCC_STATION_NAME};
 
					StringParameters tmp_params(args_array, 1, types_array);
 
					buff = GetStringWithArgs(buff, STR_FORMAT_DEPOT_NAME_AIRCRAFT, &tmp_params, last);
 
					break;
 
				}
 

	
 
				const Depot *d = Depot::Get(args->GetInt32());
 
				if (d->name != NULL) {
 
					int64 args_array[] = {(uint64)(size_t)d->name};
 
					StringParameters tmp_params(args_array);
 
					buff = GetStringWithArgs(buff, STR_JUST_RAW_STRING, &tmp_params, last);
 
				} else {
 
					int64 args_array[] = {d->town->index, d->town_cn + 1};
 
					StringParameters tmp_params(args_array);
 
					buff = GetStringWithArgs(buff, STR_FORMAT_DEPOT_NAME_TRAIN + 2 * vt + (d->town_cn == 0 ? 0 : 1), &tmp_params, last);
 
				}
 
				break;
 
			}
 

	
 
			case SCC_ENGINE_NAME: { // {ENGINE}
 
				const Engine *e = Engine::GetIfValid(args->GetInt32(SCC_ENGINE_NAME));
 
				if (e == NULL) break;
 

	
 
				if (e->name != NULL && e->IsEnabled()) {
 
					int64 args_array[] = {(uint64)(size_t)e->name};
 
					StringParameters tmp_params(args_array);
0 comments (0 inline, 0 general)