luci-base: handle missing translations in template engine

Previously the template engine did not interpolate translation macros if no
translation catalogue could be loaded due to a missing i18n directory.

Change the offending code to return the original string in any error case.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
This commit is contained in:
Jo-Philipp Wich 2015-01-10 21:19:54 +01:00
parent 1380c7b07d
commit 9a81d8ff32

View file

@ -477,18 +477,8 @@ void luastr_translate(struct template_buffer *out, const char *s, unsigned int l
char *tr;
int trlen;
switch (lmo_translate(s, l, &tr, &trlen))
{
case 0:
luastr_escape(out, tr, trlen, escape_xml);
break;
case -1:
luastr_escape(out, s, l, escape_xml);
break;
default:
/* no catalog loaded */
break;
}
if (!lmo_translate(s, l, &tr, &trlen))
luastr_escape(out, tr, trlen, escape_xml);
else
luastr_escape(out, s, l, escape_xml);
}