From 5e5045ebd1cb086d3d74c2d3cb10db3ba178f986 Mon Sep 17 00:00:00 2001 From: maxim Date: Mon, 22 Jul 2019 22:14:25 +0000 Subject: [PATCH] LCLTranslator: small refactor, ensured setting SetDefaultLang and TranslateLCLResourceStrings results to empty values on exceptions git-svn-id: trunk@61615 - --- lcl/lcltranslator.pas | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/lcl/lcltranslator.pas b/lcl/lcltranslator.pas index dcadd2dde7..90cc3441b8 100644 --- a/lcl/lcltranslator.pas +++ b/lcl/lcltranslator.pas @@ -529,14 +529,18 @@ var LCLPath: string; begin Result:=''; - LCLPath:=FindLocaleFileName('.po', Lang, ExtractFilePath(Dir), 'lclstrconsts', Result); - if LCLPath<>'' then - Translations.TranslateUnitResourceStrings('LCLStrConsts', LCLPath) - else - begin - LCLPath:=FindLocaleFileName('.mo', Lang, ExtractFilePath(Dir), 'lclstrconsts', Result); + try + LCLPath:=FindLocaleFileName('.po', Lang, ExtractFilePath(Dir), 'lclstrconsts', Result); if LCLPath<>'' then - GetText.TranslateResourceStrings(UTF8ToSys(LCLPath)); + Translations.TranslateUnitResourceStrings('LCLStrConsts', LCLPath) + else + begin + LCLPath:=FindLocaleFileName('.mo', Lang, ExtractFilePath(Dir), 'lclstrconsts', Result); + if LCLPath<>'' then + GetText.TranslateResourceStrings(UTF8ToSys(LCLPath)); + end; + except + Result:=''; end; end; @@ -563,24 +567,20 @@ begin begin Translations.TranslateResourceStrings(lcfn); LocalTranslator := TPOTranslator.Create(lcfn); - end; - except - lcfn := ''; - end; - - if lcfn='' then - begin - // try now with MO translation resources - try + end + else + begin + // try now with MO translation resources lcfn := FindLocaleFileName('.mo', Lang, Dir, LocaleFileName, Result); if lcfn <> '' then begin GetText.TranslateResourceStrings(UTF8ToSys(lcfn)); LocalTranslator := TDefaultTranslator.Create(lcfn); end; - except - lcfn := ''; end; + except + Result := ''; + lcfn := ''; end; DefaultLang := Result;