core/sm_stringutil.cpp
changeset 464 765517f654a5
parent 457 9b8a85bf4175
child 470 6b1da524b1b7
     1.1 --- a/core/sm_stringutil.cpp	Sat Feb 10 23:34:30 2007 +0000
     1.2 +++ b/core/sm_stringutil.cpp	Sun Feb 11 00:17:54 2007 +0000
     1.3 @@ -62,6 +62,11 @@
     1.4  	unsigned int langid;
     1.5  	char *langname = NULL;
     1.6  	*error = false;
     1.7 +	Translation pTrans;
     1.8 +	CPlugin *pl = (CPlugin *)g_PluginSys.FindPluginByContext(pCtx->GetContext());
     1.9 +	size_t langcount = pl->GetLangFileCount();
    1.10 +	void *new_params[MAX_TRANSLATE_PARAMS];
    1.11 +	unsigned int max_params = 0;
    1.12  
    1.13  try_serverlang:
    1.14  	if (target == LANG_SERVER)
    1.15 @@ -89,9 +94,7 @@
    1.16  		goto error_out;
    1.17  	}
    1.18  
    1.19 -	Translation pTrans;
    1.20 -	CPlugin *pl = (CPlugin *)g_PluginSys.FindPluginByContext(pCtx->GetContext());
    1.21 -	size_t langcount = pl->GetLangFileCount();
    1.22 +	max_params = pTrans.fmt_count;
    1.23  
    1.24  	if (!TryTranslation(pl, key, langid, langcount, &pTrans))
    1.25  	{
    1.26 @@ -109,8 +112,6 @@
    1.27  		}
    1.28  	}
    1.29  
    1.30 -	void *new_params[MAX_TRANSLATE_PARAMS];
    1.31 -	unsigned int max_params = pTrans.fmt_count;
    1.32  	for (size_t i=0; i<max_params; i++)
    1.33  	{
    1.34  		pCtx->LocalToPhysAddr(params[*arg], reinterpret_cast<cell_t **>(&new_params[i]));