Bug 6113

Summary: Text problems in russian and turkish client installer for windows
Product: ThinLinc Reporter: Samuel Mannehed <samuel>
Component: Client platformsAssignee: Pierre Ossman <ossman>
Status: CLOSED FIXED    
Severity: Normal CC: hean01, nikle, thoni56
Priority: P2 Keywords: nikle_tester, relnotes
Version: trunk   
Target Milestone: 4.11.0   
Hardware: PC   
OS: Unknown   
Acceptance Criteria:
Attachments: Screenshot showing the ThinLinc installer for windows in russian

Description Samuel Mannehed cendio 2016-12-19 15:49:41 CET
Created attachment 764 [details]
Screenshot showing the ThinLinc installer for windows in russian

When installing the ThinLinc client for windows when having russian set as the language causes the text in the installer to be all messed up.
Comment 1 Pierre Ossman cendio 2019-11-26 12:18:36 CET
The issue seems to be that Windows no longer sets the correct code page when you switch languages. I guess it assumes all applications have switched to using the Unicode API.

If we manually reconfigure the system to use the Russian code page, then everything works fine.

It seems NSIS has some clue about this though. If you tell it to show a language selection dialog, then it will only show the languages that will actually work in the current code page. You can force it to show everything using "!define MUI_LANGDLL_ALLLANGUAGES" though.

This dialog doesn't show Russian with the default Windows code page, and conversely doesn't show Swedish with the Russian code page.

Documentation suggests that NSIS 3 handles this better.
Comment 2 Pierre Ossman cendio 2019-11-26 12:27:39 CET
Also note that Turkish also uses a different code page and we might not be showing that correctly either.
Comment 3 Pierre Ossman cendio 2019-11-26 16:32:53 CET
I can confirm that Turkish is also broken, not just as badly as most characters are shared with 8859-1.
Comment 4 Pierre Ossman cendio 2019-11-26 16:35:35 CET
We've decided to remove these languages from the installer for now. In the future we'll have to upgrade NSIS, or switch to something else to resolve this. See bug 7447.

For now the users will have to make do with English. Fortunately it's just the installer that's affected. The client itself is still translated.
Comment 6 Pierre Ossman cendio 2019-11-27 10:50:50 CET
I had to make sure the Russian translated strings weren't included in the .nsh file or they might be used for other languages for some odd reason.
Comment 7 Pierre Ossman cendio 2019-11-27 10:51:11 CET
Crap. I forgot to also update the customizer.
Comment 9 Pierre Ossman cendio 2019-11-27 15:44:50 CET
Works well now. Tested a few languages on Windows 10. Is translated when expected and didn't see any obvious errors.
Comment 10 Niko Lehto cendio 2019-11-28 16:24:50 CET
Verified that running with system language as Russian or Turkish, the installer is now translated to English. Also verified that using Portugese as system language the installer is still translated to Portugese as it should be.

Tested on nightly build on Windows 10.